anchor.diff:  
   open System
   open MonoTouch.UIKit
  +open MonoTouch.StoreKit
   open MonoTouch.Foundation
   
   open Newtonsoft.Json
  
positive.code:                     (fun _ -> DB.createError (Error(Error = error )))
                      (fun _ -> ())
              )
                      
          window.RootViewController <- navigationController
          window.MakeKeyAndVisible ()
  
negative.code:     let window = new UIWindow (UIScreen.MainScreen.Bounds)
      let entryController = new EntryViewController()
      let navigationController = new UINavigationController(entryController)
  
      let transactionObserver = {
          new SKPaymentTransactionObserver() with
              override this.UpdatedTransactions(queue, transactions) =
                  printfn "UpdatedTransactions"
                  for transaction in transactions do
                      match transaction.TransactionState with
                      | SKPaymentTransactionState.Purchasing -> printfn "[StoreKit] Purchasing"
                      | SKPaymentTransactionState.Purchased -> printfn "[StoreKit] Purchased"
                      | SKPaymentTransactionState.Failed ->
                          printfn "[StoreKit] Failed %s" transaction.Error.LocalizedDescription
                          SKPaymentQueue.DefaultQueue.FinishTransaction(transaction)
                      | SKPaymentTransactionState.Restored ->
                          //TODO: in theory this should never happen since we are only dealing with consumables
                          printfn "[StoreKit] Restored"
                          SKPaymentQueue.DefaultQueue.FinishTransaction(transaction)
                      | state -> Logger.log(Exception (sprintf "[StoreKit] Uknown Transaction type: %A" state))
  
                  ()
              }
  
      let parsePushNotification (info:NSDictionary) =
          match info.TryGetValue(NSObject.FromObject "aps") with
  