public PedestrianTrafficLightController(
     int redSignalDurationSeconds,
     int greenSignalDurationSeconds)
     : base(TrafficLightConfig.Create()
            .AddCycledState(new LightConfig(RedLightName, TimeSpan.FromSeconds(redSignalDurationSeconds)))
            .AddCycledState(new LightConfig(GreenLightName, TimeSpan.FromSeconds(greenSignalDurationSeconds), 3, TimeSpan.FromMilliseconds(500))))
 {
 }
 public StandartTrafficLightController(
     int redSignalDurationSeconds,
     int yellowSignalDurationSeconds,
     int greenSignalDurationSeconds)
     : this(
         redSignalDurationSeconds,
         yellowSignalDurationSeconds,
         greenSignalDurationSeconds,
         TrafficLightConfig.Create())
 {
 }
 public LeftSectionStandartTrafficLightController(
     int redSignalDurationSeconds,
     int yellowSignalDurationSeconds,
     int greenSignalDurationSeconds,
     int leftGreenSignalDurationSeconds)
     : base(
         redSignalDurationSeconds,
         yellowSignalDurationSeconds,
         greenSignalDurationSeconds,
         TrafficLightConfig.Create()
         .AddState(new LightConfig(LeftGreenLightName, TimeSpan.FromSeconds(leftGreenSignalDurationSeconds), 4, TimeSpan.FromMilliseconds(500))))
 {
 }