anchor.diff:  
     if (Mines <> nil) then
       for I := Mines.Count - 1 downto 0 do
  -      if (gAIFields.Influences.Ownership[fOwner, Mines.Items[I].Y, Mines.Items[I].X] > 0) then
  +    begin
  +      X := Mines.Items[I].X;
  +      Y := Mines.Items[I].Y;
  +      Ownership := gAIFields.Influences.Ownership[fOwner, Y, X];
  +      if ([tpMakeRoads, tpWalkRoad] * gTerrain.Land[Y+1,X].Passability <> [])
  +        AND (Ownership > 0) AND gAIFields.Influences.CanPlaceHouseByInfluence(fOwner, X,Y) then
           if CanAddHousePlan(Mines.Items[I], aHT, True, False) AND CheckResourcesNearMine(Mines.Items[I], aHT) then
  -          Output.Add(Mines.Items[I], gAIFields.Influences.Ownership[fOwner, Mines.Items[I].Y, Mines.Items[I].X])
  +          Output.Add(Mines.Items[I], Ownership)
           else
             Mines.Delete(I);
  +    end;
     Result := Output;
   end;
   
   
  -function TKMEye.GetStoneLocs(aOnlyMainOwnership: Boolean = False): TKMPointTagList;
  +function TKMEye.GetStoneLocs(): TKMPointTagList;
   const
     SCAN_LIMIT = 10;
   var
  
positive.code:   fBuildFF.UpdateState(); // Mark walkable area in owner's city
    Count := 0;
    for Idx := 0 to Length(fCoalPolygons) - 1 do
      if (fCoalPolygons[Idx] > 0) then
      begin
        if (aOnlyMainOwnership AND (gAIFields.Influences.GetBestOwner(Idx) <> fOwner)) then
          continue;
        if (gAIFields.Influences.GetBestAllianceOwnership(fOwner, Idx, at_Enemy) > MAX_ENEMY_OWNERSHIP) then
          continue;
        Loc := gAIFields.NavMesh.Polygons[Idx].CenterPoint;
        if (fBuildFF.VisitIdx <> fBuildFF.Visited[ Loc.Y, Loc.X ]) then
          continue;
  
negative.code: 
  function TKMEye.GetMineLocs(aHT: TKMHouseType): TKMPointTagList;
  var
    Ownership: Byte;
    I,X,Y: Integer;
    Mines: TKMPointList;
    Output: TKMPointTagList;
  begin
  