 	case result4(Result<X>)
 	case result5(Result<Y>)
 }
+


// Implementation of a processor that can output to multiple `Signal`s. Used by `continuous`, `continuous`, `playback`, `multicast`, `customActivation` and `preclosed`.
fileprivate final class SignalReducer<Value, State>: SignalProcessor<Value, State>, SignalBlockable {
	typealias Reducer = (_ state: inout Result<State>, _ message: Result<Value>) throws -> State
	let reducer: Reducer
	var state: Result<State>
	

				
				// Perform the update on the copy
				let previous = state
                let result = s.reducer(&state, r)

				// Apply the change to the authoritative version under the mutex
				var outputs: OutputsArray = []
				s.sync {
