       // all inputs got errors, so transfer them to the outputs
       d1.error.map { _ = r1.resolve(error: $0) }
       d2.error.map { _ = r2.resolve(error: $0) }
-    default: fatalError(#function)
+    default: fatalError()
     }
 
     // cancel the remaining unresolved outputs

      d1.error.map { _ = r1.resolve(error: $0) }
      d2.error.map { _ = r2.resolve(error: $0) }
      d3.error.map { _ = r3.resolve(error: $0) }
    default: fatalError(#function)
    }

    // cancel the remaining unresolved outputs

    { // transfer the result to the selected output
    case d1: r1.resolve(d1.result)
    case d2: r2.resolve(d2.result)
    default: fatalError()
    }

    // cancel the remaining unresolved output
