anchor.diff:    GT: TGroupType;
     UGA: TKMUnitGroupArray;
   begin
  +  fCityUnderAttack := False;
     // Check defensive line
     for I := 0 to Length(fDefPolyFirstLine) - 1 do
     begin
  
positive.code:   TKMArmyDefence = class
    private
      fOwner: TKMHandIndex;
      fFirstLineCnt: Word;
      fPositions: TKMList;
      fDefPolyFirstLine: TKMWordArray;
  
negative.code: 
  
  procedure TKMArmyDefence.UpdateDefences();
  var
    DefCnt: Word;
    I, K: Integer;
    G: TKMUnitGroup;
    VisitedNewPos, VisitedExistPos: TBooleanArray;
    DefPosArr: TKMDefencePosArr;
    BestDefLines: TKMDefenceLines;
  