def __init__(
      self,
      start: datetime.datetime | None = None,
      step_size: datetime.timedelta = _DEFAULT_STEP_SIZE,
  ):
    """Initializes the clock.

    Args:
      start: The start time of the clock. If None, the current time is used.
      step_size: The step size of the clock.
    """
    if start is None:
      self._start = datetime.datetime.now()
    else:
      self._start = start
    self._step_size = step_size
    self._step = 0

    self._step_lock = threading.Lock()
Initializes the clock.

    Args:
      start: The start time of the clock. If None, the current time is used.
      step_size: The step size of the clock.
    
concordia/clocks/game_clock.py