public double ToLocalTime(double time)
        {
            double result;

            if (time < 0.0)
            {
                result = time;
            }
            else
            {
                if (this.IsPreExtrapolatedTime(time))
                {
                    time = TimelineClip.GetExtrapolatedTime(time - this.m_Start, this.m_PreExtrapolationMode, this.m_Duration);
                }
                else if (this.IsPostExtrapolatedTime(time))
                {
                    time = TimelineClip.GetExtrapolatedTime(time - this.m_Start, this.m_PostExtrapolationMode, this.m_Duration);
                }
                else
                {
                    time -= this.m_Start;
                }
                time  *= this.timeScale;
                time  += this.clipIn;
                result = time;
            }
            return(result);
        }