docs: def handle_no_start_state(self):
          """Handles the situation, when no start state exists during execution
  
          The method waits, until a transition is created. It then checks again for an existing start state and waits
          again, if this is not the case. It returns the None state if the the state machine was stopped.
          """
          start_state = self.get_start_state(set_final_outcome=True)
          while not start_state:
              # depending on the execution mode pause execution
              execution_signal = state_machine_execution_engine.handle_execution_mode(self)
              if execution_signal is StateMachineExecutionStatus.STOPPED:
                  # this will be caught at the end of the run method
                  return None
  
              self._transitions_cv.acquire()
              self._transitions_cv.wait(3.0)
              self._transitions_cv.release()
              start_state = self.get_start_state(set_final_outcome=True)
          return start_state