anchor.diff:    Cnt := Length(aCenterPoints);
     SetLength(InitIdxArray, Cnt);
     for I := 0 to Cnt - 1 do
  -    InitIdxArray[I] := gAIFields.NavMesh.Point2Polygon[ aCenterPoints[I].Y, aCenterPoints[I].X ];
  +    InitIdxArray[I] := gAIFields.NavMesh.KMPoint2Polygon[ aCenterPoints[I] ];
   
     // Find enemies (indexes)
     SetLength(fEnemies, gHands.Count - 1);
  
positive.code: end;
  
  
  end.
  
negative.code:     function HouseInfluence(aPlayer: TKMHandIndex; aHouseInfluence, aMaxDistance, aMaximalIdx: Word; aInitIdxArray: TKMWordArray): Boolean;
    end;
  
    // Evaluation of terrain (finds large areas without borders)
    TKMWalkableAreasDetector = class(TNavMeshFloodFill)
    private
    protected
      fMaxDistance: Word;
      function CanBeExpanded(const aIdx: Word): Boolean; override;
      procedure MarkAsVisited(const aIdx, aDistance: Word; const aPoint: TKMPoint); override;
    public
      WalkableAreas: TKMByteArray;
      procedure MarkPolygons();
    end;
  
  implementation
  uses
    KM_AIFields, KM_NavMesh, KM_HandsCollection;
  
  
  { TNavMeshInfluenceSearch }
  function TNavMeshInfluenceSearch.CanBeExpanded(const aIdx: Word): Boolean;
  begin
    // Can be visited only in case that we have space in array (and we are not out of enemies)
  