public static TransformSequence <T> Spin <T>(this TransformSequence <T> t, double revolutionDuration, RotationDirection direction, float startRotation, int numRevolutions) where T : Drawable => t.Loop(0, numRevolutions, d => d.RotateTo(startRotation).RotateTo(startRotation + (direction == RotationDirection.Clockwise ? 360 : -360), revolutionDuration));