anchor.diff:                          X = x1;
                           Y = y1;
                           OwnerId = 0;
  -                        Health = 0.0;
  +                        Health = 0;
                           Radius = 0.0;
                       }
                       let ob1 = obstaclesBetween gameMap ship.Entity intermediateTarget
  
positive.code:         OwnerId: int;
          X: X;
          Y: Y;
          Radius: float;
          Health: float;
      }
  
      // Ship is a player controlled Entity made for the purpose of doing combat and mining Halite
      type Ship = {
          Entity: Entity;
          VelX: X;
          VelY: Y;
          PlanetId: int;
          DockingStatus: DockingStatus;
          DockingProgress: float;
          WeaponCooldown: float;
      }
  
      // Planet object from which Halite is mined
      type Planet = {
          Entity: Entity;
          NumDockingSpots: float;
          NumDockedShips: float;
          CurrentProduction: float;
          RemainingResources: float;
          DockedShipIds: int[];
          DockedShips: Ship[] option;
          Owned: float;
      }
  
      // calculateDistanceTo returns a euclidean distance to the target
  
negative.code:         let shipId = tokens.[0] |> int
          let shipX = tokens.[1] |> float
          let shipY = tokens.[2] |> float
          let shipHealth = tokens.[3] |> int
          let shipVelX = tokens.[4] |> float
          let shipVelY = tokens.[5] |> float
          let shipDockingStatus = tokens.[6] |> int
          let shipPlanetId = tokens.[7] |> int
          let shipDockingProgress = tokens.[8] |> int
          let shipWeaponCooldown = tokens.[9] |> int
  
          let shipEntity = {
              Id = shipId;
  