 		return result
 	}
 
-	// Returns true if the Comm was canceled
 	public func cancel() -> HandoffResult {
 		var handoff: HandoffState<V> = .Done(.Canceled)
 		dispatch_sync(q) {

		return result.withoutValue
	}

	// Returns true if the Comm was executed
	public func proceed() -> HandoffResult {
		var handoff: HandoffState<V> = .Done(.Canceled)
		dispatch_sync(q) {

		}
	}

	func senderEnter(v: V) -> HandoffResult {
		dispatch_sync(q) { self.setValue(v) }
		return wait().withoutValue
	}

	func receiverEnter() -> HandoffReceiveResult<V> {
		dispatch_sync(q) { self.hasReader() }
		return wait()
