     */
     public func mapValues<Other>(transform: Value -> Other) -> Session<Request, Other, Error>
     {
-        return flatMapValues(.Concat, transform: { value in SignalProducer(value: transform(value)) })
+        return mapProducers({ $0.map(transform) })
     }
     
     /**

    public func flatMapValues<Other>(strategy: FlattenStrategy, transform: Value -> SignalProducer<Other, Error>)
        -> Session<Request, Other, Error>
    {
        return Session { request in
            self.producerForRequest(request).flatMap(.Concat, transform: transform)
        }
    }
    
    /**

    public func flatMapErrors<Other>(transform: Error -> SignalProducer<Value, Other>)
        -> Session<Request, Value, Other>
    {
        return mapProducers({ $0.flatMapError(transform) })
    }
    
    /**
