anchor.diff:                      match field.BattleOpt with
                       | None -> just omni
                       | Some _ -> just (Field (Field.updateBattleOpt (constant (Some battle)) field))
  +
  +            | Update ->
  +                match omni with
  +                | Gui gui ->
  +                    match gui with
  +                    | Splashing -> just omni
  +                    | Title -> withCmd (Show Simulants.Title) omni
  +                    | Credits -> withCmd (Show Simulants.Credits) omni
  +                | Field field ->
  +                    match field.BattleOpt with
  +                    | Some battle ->
  +                        match battle.BattleState with
  +                        | BattleCease (result, time) ->
  +                            if World.getTickTime world - time = 120L then
  +                                if result
  +                                then withCmd (Show Simulants.Field) (Field (Field.synchronizeFromBattle battle field))
  +                                else withCmd (Show Simulants.Title) (Gui Title)
  +                            else withCmd (Show Simulants.Battle) omni
  +                        | _ -> withCmd (Show Simulants.Battle) omni
  +                    | None -> withCmd (Show Simulants.Field) omni
   
           override this.Command (_, command, _, world) =
               match command with
  
positive.code:         | Field of Field
  
      type [<NoEquality; NoComparison>] OmniMessage =
          | Update
          | UpdateGui of Gui
          | UpdateField of Field
          | UpdateBattle of Field * Battle
          | Change of Omni
          | ChangeGui of Gui
          | ChangeField of Field
          | ChangeBattle of Battle
  
      type [<NoEquality; NoComparison>] OmniCommand =
          | Show of Screen
  
negative.code:             base.Register (game, world)
  
          override this.Channel (_, _) =
              [Simulants.TitleCredits.ClickEvent => msg (Change (Gui Credits))
               Simulants.CreditsBack.ClickEvent => msg (Change (Gui Title))
               Simulants.FieldBack.ClickEvent => msg (Change (Gui Title))
               Simulants.TitlePlay.ClickEvent => msg (Change (Field Field.initial))
               Simulants.Field.Field.ChangeEvent =|> fun evt -> msg (ChangeField (evt.Data.Value :?> Field))
               Simulants.Battle.Battle.ChangeEvent =|> fun evt -> msg (ChangeBattle (evt.Data.Value :?> Battle))
               Simulants.TitleExit.ClickEvent => cmd Exit
               Simulants.Game.UpdateEvent => msg Update]
  
          override this.Message (omni, message, _, world) =
  
              match message with
              | Change omni ->
                  just omni
  
              | ChangeField field ->
                  match omni with
  