 }
 
 extension Session.Model.URLActionOutgoing: Equatable {
-  static func ==(left: Session.Model.URLActionOutgoing, right: Session.Model.URLActionOutgoing) -> Bool {
+  static func ==(
+    left: Session.Model.URLActionOutgoing,
+    right: Session.Model.URLActionOutgoing
+  ) -> Bool {
     switch (left, right) {
     case (.idle, .idle): return
       true

  static func ==(
    left: Session.Model.BackgroundTask.State,
    right: Session.Model.BackgroundTask.State
    ) -> Bool {
    switch (left, right) {
    case (.pending, .pending): return true
    case (.progressing(let a), .progressing(let b)): return a == b


  func application(
    _ application: UIApplication,
    performFetchWithCompletionHandler completion: @escaping (UIBackgroundFetchResult
  ) -> Void) {
    var edit = model
    edit.fetch = .progressing(
      Session.Model.FetchAction(
        hash: Date().hashValue,
        completion: completion
      )
    )
    output.on(.next(edit))
