 
 public struct TimingFunction {
     public static func Linear(rt rt: Double, b: Double, c: Double) -> Double {
-        return rt * c + b
+        return c * rt + b
     }
     // Quad
     public static func EaseInQuad(rt rt: Double, b: Double, c: Double) -> Double {

    }
    // Quart
    public static func EaseInQuart(rt rt: Double, b: Double, c: Double) -> Double {
        return c * rt*rt*rt*rt + b;
    }
    public static func EaseOutQuart(rt rt: Double, b: Double, c: Double) -> Double {
        var rt = rt
        return -c * ((rt-=1)*rt*rt*rt - 1) + b;
    }
    public static func EaseInOutQuart(rt rt: Double, b: Double, c: Double) -> Double {
        var rt = rt
        if (rt*=2.0) < 1 { return c/2*rt*rt*rt*rt + b }
        return -c/2 * ((rt-=2)*rt*rt*rt - 2) + b;
    }
    // Quint
    public static func EaseInQuint(rt rt: Double, b: Double, c: Double) -> Double {

    }
    public static func EaseOutQuint(rt rt: Double, b: Double, c: Double) -> Double {
        var rt = rt
        return c * ((rt-=1)*rt*rt*rt*rt + 1) + b
    }
    public static func EaseInOutQuint(rt rt: Double, b: Double, c: Double) -> Double {
        var rt = rt
        if (rt*=2.0) < 1 { return c/2 * rt*rt*rt*rt*rt + b }
        return c/2 * ((rt-=2)*rt*rt*rt*rt + 2) + b
    }
    // Sine
    public static func EaseInSine(rt rt: Double, b: Double, c: Double) -> Double {
