anchor.diff:  let mutable dockTimes    = Array.empty
   let mutable kousyouTimes = Array.empty
   let mutable maxCount = 0, 0
  +let mutable hqLevel = 0
   
   [<DllImport("User32.dll")>]
   extern bool FlashWindow(nativeint hWnd, bool bInvert);
  
positive.code:     slotitemGrid.ColumnHeadersDefaultCellStyle.WrapMode <- DataGridViewTriState.False
      let left = DataGridViewCellStyle(Alignment = DataGridViewContentAlignment.MiddleLeft)
      slotitemGrid.Columns.AddRange [|
          new DataGridViewTextBoxColumn(ReadOnly = true, Width =  40, DataPropertyName = "Index",        HeaderText = "New")                             :> DataGridViewColumn
          new DataGridViewTextBoxColumn(ReadOnly = true, Width =  30, DataPropertyName = "ItemId",       HeaderText = "ID")                              :> DataGridViewColumn
          new DataGridViewTextBoxColumn(ReadOnly = true, Width =  90, DataPropertyName = "EquipType",    HeaderText = "種別", DefaultCellStyle = left)   :> DataGridViewColumn
          new DataGridViewTextBoxColumn(ReadOnly = true, Width = 150, DataPropertyName = "Name",         HeaderText = "装備名", DefaultCellStyle = left) :> DataGridViewColumn
      |]
      let bindingList = Slotitem.GetBindingList form
      slotitemGrid.DataSource <- bindingList
  
negative.code:                 let ship = lock ships (fun () -> ships.[float request.["api_ship_id"]])
                  ship.["api_nowhp"] <- ship.["api_maxhp"]
                  Ship.UpdateShips()
                  Slotitem.UpdateItems()
          | path ->
              let m = Regex.Match(path, "^/kcs/resources/swf/ships/([^.]+\.swf)")
              if m.Success then
  