         // TODO (chaase): Redundant for cases that set this again below
         // Should only do this for playing animation, as the stopped animations
         // do it for themselves
-        startTime = _intervalTime - playheadTime;
+        startTime = cycleStartTime = intervalTime - playheadTime;
         _doSeek = true;
         
         if (!_isPlaying)
         {
-            _intervalTime = Timeline.currentTime;
+            intervalTime = Timeline.currentTime;
             // TODO: comments...
             if (includeStartDelay && startDelay > 0)
             {

                    else
                        numRepeats = 1 + currentTime / (duration + repeatDelay);
                if (repeatDelay == 0) {
                    startTime += duration;
                    currentTime = intervalTime - startTime;
                    if (repeatBehavior == REVERSE)
                        _invertValues = !_invertValues;
                    repeated = true;
                }

                    }
                }
            }
            _cycleTime = currentTime;
            
            calculateValue(currentTime);

