   internal let language: String
   internal let buildVersion: String
 
-  fileprivate let changePaymentMethodResponse: ChangePaymentMethodEnvelope
-
-  fileprivate let createPledgeResponse: CreatePledgeEnvelope
+  fileprivate let changePaymentMethodResult: Result<ChangePaymentMethodEnvelope, ErrorEnvelope>?
+
+  fileprivate let createPledgeResult: Result<CreatePledgeEnvelope, ErrorEnvelope>?
 
   fileprivate let facebookConnectResponse: User?
   fileprivate let facebookConnectError: ErrorEnvelope?

          fetchProjectsError: $1.fetchProjectsError,
          fetchProjectStatsResponse: $1.fetchProjectStatsResponse,
          fetchProjectStatsError: $1.fetchProjectStatsError,
          fetchShippingRulesResponse: $1.fetchShippingRulesResponse,
          fetchUserProjectsBackedResponse: $1.fetchUserProjectsBackedResponse,
          fetchUserProjectsBackedError: $1.fetchUserProjectsBackedError,
          fetchUserResponse: $1.fetchUserResponse,

    shippingLocation: Location?,
    tappedReward: Bool) -> SignalProducer<UpdatePledgeEnvelope, ErrorEnvelope> {

    if let error = self.updatePledgeResult?.error {
      return SignalProducer(error: error)
    }

    return SignalProducer(value: self.updatePledgeResult?.value ?? .template)
  }

  internal func addImage(file fileURL: URL, toDraft draft: UpdateDraft)
