/// <summary>
        /// Core update routine.
        /// </summary>
        /// <param name="context">The context that holds information about the animation.</param>
        protected override void UpdateAnimationOverride(AnimationContext context)
        {
            context.EnsureDefaultTransforms();

            double startY = this.Initialize(context.Target as FrameworkElement, this.StartY);
            double endY   = this.Initialize(context.Target as FrameworkElement, this.EndY);

            context.MoveY(this.GetMoveArguments(startY, endY));

            base.UpdateAnimationOverride(context);
        }