# File lib/benelux/timeline.rb, line 109
109:     def regions(name=nil, tags=Selectable::Tags.new)
110:       return self if name.nil?
111:       self.ranges(name, tags).collect do |base_range|
112:         marks = self.sort.select do |mark|
113:           mark >= base_range.from && 
114:           mark <= base_range.to &&
115:           mark.tags >= base_range.tags
116:         end
117:         ranges = self.ranges.select do |range|
118:           range.from >= base_range.from &&
119:           range.to <= base_range.to &&
120:           range.tags >= base_range.tags
121:         end
122:         tl = Benelux::Timeline.new(marks)
123:         tl.ranges = ranges.sort
124:         tl
125:       end
126:     end