             return
         }
 
-        changeExecuting(true)
+        executing = true
         block?(done)
     }
 

    }

    override public func start() {
        guard !_finished else {
            return
        }
        guard !cancelled else {

            guard _block == nil else { return }
            _block = newValue
            if cancelled && _executing {
                executing = false
            }
            else if let block = newValue where _executing {
                block(done)
            }
        }
    }

    private var _executing: Bool = false
    override public var executing: Bool {
        get { return _executing }
        set {
            willChangeValueForKey("isExecuting")
            _executing = newValue
            didChangeValueForKey("isExecuting")
        }
    }

    private var _finished: Bool = false
    override public var finished: Bool {
        get { return _finished }
        set {
            willChangeValueForKey("isFinished")
            _finished = newValue
            didChangeValueForKey("isFinished")
        }
    }

    override public var asynchronous: Bool { return true }

    public init(block: AsyncBlock? = nil) {
