         animation(state)
     }
     
-    func cancel() {
+    private func cancel() {
         displayLink.invalidate()
     }
     

    private let animation: AnimationState -> Void
    private let id: String
    
    init(id: String, duration: NSTimeInterval, animation: AnimationState -> Void) {
        self.start = NSDate()
        self.duration = duration
        self.animation = animation

        }
    }
    
    public var percent: CGFloat {
        switch self {
        case .Began:
            return 0
