anchor.diff:  var
     Check: Boolean;
     PL: TKMHandIndex;
  -  Idx, NearbyIdx, Cnt, ScannedCnt, AllianceCnt: Word;
  +  Idx, NearbyIdx, Cnt, ScannedCnt, AllianceCnt, NextLine, ActLineIdx: Word;
     I, K: Integer;
     Direction: TKMDirection;
     PolyArr: TPolygonArray;
  
positive.code: begin
    fOwner := aOwner;
    fDefLinesRequired := aDefLinesRequired;
    BackwardFlood();
    fFilterFF.FilterDefenceLine(BestDefLines);
    FindDefencePos(aBaseCnt, aFirstLine, aMinDefeces);
    aBestDefLines := BestDefLines;
    Result := DefPosArr;
  end;
  
  
  
  
  { TFilterFF }
  function TFilterFF.IsPolyInsideDef(aIdx: Word): Boolean;
  begin
    Result := fQueueArray[aIdx].Visited = fVisitedIdx;
  end;
  
  
  
negative.code:     SecondIndice: Boolean;
      I,K, DefIdx2: Word;
    begin
      fBestDefLines.Lines[ fBestDefLines.Count ].Polygon := aDefIdx1;
      // For defensive position we dont need proper defensive lines only border polygon for position flood fill
      if fDefLinesRequired then
      begin
  