def process_parallel(callbacks, input, *a, **kw):
 dfds = [defer.succeed(input).addCallback(x, *a, **kw) for x in callbacks]
 d = defer.DeferredList(dfds, fireOnOneErrback=1, consumeErrors=1)
 d.addCallbacks((lambda r: [x[1] for x in r]), (lambda f: f.value.subFailure))
 return d

def process_parallel ( callbacks , input , * a , ** kw ) : dfds = [ defer . succeed ( input ) . addCallback ( x , * a , ** kw ) for x in callbacks ] d = defer . DeferredList ( dfds , fireOnOneErrback = 1 , consumeErrors = 1 ) d . addCallbacks ( ( lambda r : [ x [ 1 ] for x in r ] ) , ( lambda f : f . value . subFailure ) ) return d
return a deferred with the output of all successful calls to the given callbacks .