     didFailToContinueUserActivityWithType userActivityType: String,
     error: Error
   ) {
-    if var model = model {
-      model.userActivityState = .didFail(userActivityType, error)
-      output.on(.next(model))
-    }
+    var edit = model
+    edit.userActivityState = .didFail(userActivityType, error)
+    output.on(.next(edit))
   }
 
   func application(
     _ application: UIApplication,
     didUpdate userActivity: NSUserActivity
   ) {
-    if var model = model {
-      model.userActivityState = .didContinue(userActivity)
-      output.on(.next(model))
-    }
-  }
-
-  func application(
-    _ application: UIApplication,
-    userDidAcceptCloudKitShareWith cloudKitShareMetadata: CKShareMetadata
-    ) {
-    if var model = model {
-      model.cloudKitShare = cloudKitShareMetadata
-      output.on(.next(model))
-    }
-  }
+    var edit = model
+    edit.userActivityState = .didContinue(userActivity)
+    output.on(.next(edit))
+  }
+
+//  func application(
+//    _ application: UIApplication,
+//    userDidAcceptCloudKitShareWith cloudKitShareMetadata: CKShareMetadata
+//    ) {
+//    if var model = model {
+//      model.cloudKitShare = cloudKitShareMetadata
+//      output.on(.next(model))
+//    }
+//  }
 }
 
 extension Session.Model.TargetAction: Equatable {

    willChangeStatusBarOrientation newStatusBarOrientation: UIInterfaceOrientation,
    duration: TimeInterval
  ) {
    if var model = model {
      model.statusBarOrientation = .will(newStatusBarOrientation)
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    didChangeStatusBarOrientation oldStatusBarOrientation: UIInterfaceOrientation
  ) {
    if var model = model {
      model.statusBarOrientation = .did(oldStatusBarOrientation)
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    willChangeStatusBarFrame new: CGRect
  ) {
    if var model = model {
      model.statusBarFrame = Change.will(new)
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    didChangeStatusBarFrame old: CGRect
  ) {
    if var model = model {
      model.statusBarFrame = Change.did(UIApplication.shared.statusBarFrame)
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    didRegister notificationSettings: UIUserNotificationSettings
  ) {
    if var model = model {
      model.registeredUserNotificationSettings = notificationSettings
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    didRegisterForRemoteNotificationsWithDeviceToken token: Data
  ) {
    if var model = model {
      model.deviceToken = .some(token)
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    didFailToRegisterForRemoteNotificationsWithError error: Error
  ) {
    if var model = model {
      model.deviceToken = .error(error)
      output.on(.next(model))
    }
  }

  func application(
    _ application: UIApplication,
    didReceive notification: UILocalNotification
  ) {
    if var model = model {
      model.localNotification = notification
      output.on(.next(model))
    }
  }

  func application(

    var fetch: AsyncAction<FetchAction>
    var remoteAction: AsyncAction<ActionRemote>
    var localAction: AsyncAction<ActionLocal>
//    var cloudKitShare: CKShareMetadata?
    var userActivityState: UserActivityState
    var stateRestoration: StateRestoration
    var userActivityContinuation: UserActivityState
