   /// Whether this `DeferredState` is determined.
   /// returns: `true` iff this `DeferredState` represents one of the states where it is determined
   public var isDetermined: Bool { return self == .succeeded || self == .errored }
+}
+
+private extension Int
+{
+  static let waiting =     0x0
+  static let executing =   0x1
+  static let determining = 0x3
+  static let determined =  0x7
+
+  var isDetermined: Bool { return self == .determined }
+  var state: Int { return self & .determining }
 }
 
 extension UnsafeMutableRawPointer

    self.source = source
    determined = nil
    waiters = AtomicOptionalMutableRawPointer(nil)
    stateid = AtomicInt8(beginExecution && (source.stateid.load(.relaxed) != 0) ? 1:0)
  }

  fileprivate init(queue: DispatchQueue)

    source = nil
    determined = nil
    waiters = AtomicOptionalMutableRawPointer(nil)
    deferredState = AtomicInt(.executing)

    queue.async {
      do {
