anchor.diff:          //so f.e. for 0 corner, and tile 'above' (tile to the top from tasrget cell(aCell)) we have to get terrainKind from corner 3
           //3 = 1 (I, start from top left alwaysm top tile is the 2nd tile) + 0 (aCorner) + 2
           //and so on
  -        TerKinds[K] := GetTileCornersTerrainKinds(RectCorners[J], fUseTempLand)[(I+aCorner+2) mod 4];
  +        TerKinds[K] := GetTileCornersTKinds(RectCorners[J])[(I+aCorner+2) mod 4];
           // Find diagTerKind, as its preferrable over other cells
           if (aCell.X <> RectCorners[J].X) and (aCell.Y <> RectCorners[J].Y) then
             DiagTerKind := TerKinds[K];
  
positive.code:     TerKind: TKMTerrainKind;
    begin
      if not gTerrain.VerticeInMapCoords(aX, aY)
        or (not aUseOnlyNodeTK and aUseOnlyTileOwnTK and not BrushAreaTerKindContains(KMPoint(aX, aY))) then
        Exit;
  
      TerKind := LandTerKind[aY,aX].TerKind;
  
negative.code:     fMapXc, fMapYc: Integer; //Cursor position cell
  
      function BrushAreaTerKindContains(aCell: TKMPoint): Boolean;
      function GetTileOwnCornersTKinds(aCell: TKMPoint): TKMTerrainKindsArray;
      function GetTileLandNodeTKinds(aCell: TKMPoint): TKMTerrainKindsArray;
      function GetTileCornersTKinds(aCell: TKMPoint; aGetOnlyTileCornersTK: Boolean = False; aGetOnlyLandNodeTK: Boolean = False): TKMTerrainKindsArray;
      procedure CheckpointToTerrain;
      procedure BrushTile(const X, Y: Integer);
      procedure BrushTerrainTile(const X, Y: Integer; aTerKind: TKMTerrainKind);
  