 
 /// A deferred is a value that may become determined (or "filled") at some point
 /// in the future. Once a deferred value is determined, it cannot change.
-public struct Deferred<Value>: FutureProtocol, PromiseProtocol {
+public struct Deferred<Value> {
     /// The primary storage, initialized with a value once-and-only-once (at
     /// init or later).
     private let variant: Variant

        } ?? handler(value)
    }
}

    public init(filledWith value: Value) {
        variant = Variant(for: value)
    }
}

extension Deferred: FutureProtocol {
    /// An enqueued handler.
    struct Continuation {
        let target: Executor?
