void PauseMarsTime()
        {
            Assert.False(m_PausedThisFrame, "Mars Update occurred while Mars Time is paused");

            m_PausedThisFrame = true;
            MarsTime.Pause();
            Assert.Zero(MarsTime.TimeScale);
            Assert.True(MarsTime.Paused);
            m_TimeAtLastTimeScaleChange     = Time.time;
            m_MarsTimeAtLastTimeScaleChange = MarsTime.Time;
        }
        void OnPaused(PlayableDirector director)
        {
            m_Paused  = true;
            IsSyncing = false;
            if (m_ControlsMarsLifecycle)
            {
                MarsTime.Pause();
            }

            Paused?.Invoke();
        }