code: def synchronization_loop(args):
      """
      Entry point for sumo-carla co-simulation.
      """
      sumo_simulation = SumoSimulation(
          args.sumo_cfg_file,
          args.step_length,
          args.sumo_host,
          args.sumo_port,
          args.sumo_gui,
          args.client_order,
      )
      carla_simulation = CarlaSimulation(
          args.carla_host, args.carla_port, args.step_length
      )
  
      synchronization = SimulationSynchronization(
          sumo_simulation,
          carla_simulation,
          args.tls_manager,
          args.sync_vehicle_color,
          args.sync_vehicle_lights,
      )
      try:
          while True:
              start = time.time()
  
              synchronization.tick()
  
              end = time.time()
              elapsed = end - start
              if elapsed < args.step_length:
                  time.sleep(args.step_length - elapsed)
  
      except KeyboardInterrupt:
          logging.info("Cancelled by user.")
  
      finally:
          logging.info("Cleaning synchronization")
  
          synchronization.close()
  
file_path: carla/Co-Simulation/Sumo/run_synchronization.py
imports: import argparse
  import logging
  import time
  import glob
  import os
  import sys
  from sumo_integration.bridge_helper import BridgeHelper
  from sumo_integration.carla_simulation import CarlaSimulation
  from sumo_integration.constants import INVALID_ACTOR_ID
  from sumo_integration.sumo_simulation import SumoSimulation
label_desc: Use image node_id 1 for calling a global function with example usage: synchronization_loop(args) without return types