anchor.diff:  
                    // submenu button
                    Content.button Simulants.FieldSubmenu.Name
  -                    [Entity.Position == v2 -444.0f -240.0f
  -                     Entity.Depth == Constants.Field.GuiDepth
  -                     Entity.Size == v2 192.0f 64.0f
  +                    [Entity.Position == v2 -444.0f -240.0f; Entity.Depth == Constants.Field.GuiDepth; Entity.Size == v2 192.0f 64.0f
  +                     Entity.UpImage == Assets.ButtonShortUpImage; Entity.DownImage == Assets.ButtonShortDownImage
                        Entity.Text == "Submenu"
  -                     Entity.UpImage == Assets.ButtonShortUpImage
  -                     Entity.DownImage == Assets.ButtonShortDownImage
                        Entity.Visible <== model --> fun model ->
                           model.SubmenuModel.SubmenuState = SubmenuClosed &&
                           Option.isNone model.DialogOpt &&
  
positive.code: 
                  [// backdrop sprite
                   Content.staticSprite Simulants.FieldBackdrop.Name
                      [Entity.Absolute == true
                       Entity.Depth == Single.MinValue
                       Entity.StaticImage == asset Assets.DefaultPackageName "Image9"
                       Entity.Bounds <== model ->> fun _ world -> World.getViewBoundsAbsolute world
                       Entity.Color <== model --> fun model ->
                          match data.Value.Fields.TryGetValue model.FieldType with
                          | (true, fieldData) -> fieldData.FieldBackgroundColor
  
negative.code:                             let x = if i < 5 then 20.0f else 452.0f
                              let y = 368.0f - single (i % 5) * 72.0f
                              Content.button Gen.name
                                  [Entity.PositionLocal == v2 x y; Entity.DepthLocal == 1.0f; Entity.Size == v2 424.0f 64.0f
                                   Entity.Justification == Justified (JustifyLeft, JustifyMiddle); Entity.Margins == v2 16.0f 0.0f
                                   Entity.Text <== selection --> fun (_, itemType) -> ItemType.getName itemType
                                   Entity.ClickEvent ==> msg (ShopConfirmPrompt selection)])]
  
                   // shop confirm
                   Content.panel Simulants.FieldShopConfirm.Name
                      [Entity.Position == v2 -448.0f -128.0f; Entity.Depth == Constants.Field.GuiDepth + 10.0f; Entity.Size == v2 896.0f 256.0f
                       Entity.LabelImage == Assets.DialogLargeImage
                       Entity.Visible <== model --> fun model ->
                          match model.ShopModelOpt with
  