//-------------------------------------------------------------------------------------------------------------------------------------------------

            public StateTransition(
                TransientStateMachine <TState, TTrigger> ownerMachine,
                MachineState ownerState,
                TTrigger trigger)
            {
                _ownerMachine = ownerMachine;
                _ownerState   = ownerState;
                _trigger      = trigger;
            }
            //-------------------------------------------------------------------------------------------------------------------------------------------------

            public MachineState(TransientStateMachine <TState, TTrigger> ownerMachine, TState value)
            {
                _value        = value;
                _ownerMachine = ownerMachine;
                _transitions  = new Dictionary <TTrigger, StateTransition>();
            }