anchor.diff:    SQR_MIN_DIST_FROM_CHOP_ONLY = 12*12;
     SQR_DEC_SPEED = AVOID_BUILDING_FOREST_RANGE / (BLOCK_RAD * BLOCK_RAD);
   var
  +  Time: Cardinal;
     Output, PartOfForest: Boolean;
     I,K, Cnt: Integer;
     Point: TKMPoint;
   begin
  +  Time := TimeGet();
  +
     Output := False;
   
     gAIFields.Eye.GetForests(fForestsNearby);
  
positive.code:     OR (DefLines.Count < 1) then
      Exit;
  
    //Make list of defence positions
    for I := 0 to DefLines.Count-1 do
    begin
      P1 := gAIFields.NavMesh.Nodes[ DefLines.Lines[I].Nodes[0] ].Loc;
      P2 := gAIFields.NavMesh.Nodes[ DefLines.Lines[I].Nodes[1] ].Loc;
      DefCount := Ceil( KMLength(P1,P2) / DISTANCE_BETWEEN_TOWERS );
      for K := 0 to DefCount - 1 do
      begin
  
negative.code:   HMA: THouseMappingArray;
  begin
    HMA := gAIFields.Eye.HousesMapping;
  
    // Paint houses
    for HT := HOUSE_MIN to HOUSE_MAX do
  