@Override
 public void handleEvent(VehicleEntersTrafficEvent event) {
   if (modes.contains(event.getNetworkMode())) {
     delegate.handleEvent(event);
     vehicleIds.add(event.getVehicleId());
   }
 }
 public Map<Id<Link>, Map<Integer, List<Id<Vehicle>>>> getLinkId2TimeSlot2VehicleIds() {
   return delegate.getLinkId2TimeSlot2VehicleIds();
 }
 @Override
 public void handleEvent(LinkLeaveEvent event) {
   if (vehicleIds.contains(event.getVehicleId())) {
     delegate.handleEvent(event);
   }
 }
 public Map<Id<Link>, Map<Integer, Double>> getLinkId2TimeSlot2LinkCount() {
   return delegate.getLinkId2TimeSlot2LinkCount();
 }
 @Override
 public void reset(int iteration) {
   delegate.reset(iteration);
 }