class BusItinerary extends AbstractBusContainer<BusLine, BusItineraryHalt> implements RoadNetworkListener {

	@Override
	@Pure
	public Iterator<BusItineraryHalt> iterator() {
		return Iterators.unmodifiableIterator(Iterators.concat(this.validHalts.iterator(), this.invalidHalts.iterator()));
	}

	public  BusItinerary(BusLine busline, String name);
	public  BusItinerary(UUID id, BusLine busline, String name);
	public  BusItinerary(BusLine busline, String name, AttributeCollection attributeProvider);
	public  BusItinerary(UUID id, BusLine busline, String name, AttributeCollection attributeProvider);
	public  BusItinerary(String name);
	public  BusItinerary(UUID id, String name);
	public  BusItinerary(String name, AttributeCollection attributeProvider);
	public  BusItinerary(UUID id, String name, AttributeCollection attributeProvider);
	public  BusItinerary(BusLine busline);
	public  BusItinerary(UUID id, BusLine busline);
	public  BusItinerary(BusLine busline, AttributeCollection attributeProvider);
	public  BusItinerary(UUID id, BusLine busline, AttributeCollection attributeProvider);
	public  BusItinerary();
	public  BusItinerary(UUID id);
	public  BusItinerary(AttributeCollection attributeProvider);
	public  BusItinerary(UUID id, AttributeCollection attributeProvider);

}