anchor.diff:  end;
   
   
  -function TKMCityBuilder.ChooseHousesToBuild(aMaxCnt: Integer; var aRequiredHouses: TRequiredHousesArray; aWareBalance: TWareBalanceArray): Boolean;
  +function TKMCityBuilder.ChooseHousesToBuild(aMaxCnt: Integer): Boolean;
   type
     TSetOfWare = set of TWareType;
   const
  
positive.code:           aMaxCnt := aMaxCnt - 1;
            if (aMaxCnt <= 0) then
              break;
            aRequiredHouses[  PRODUCTION[ WareOrder[I] ]  ] := 0; // Make sure that next node will not scan this house in this tick
          end;
          cs_CannotPlaceHouse:
          begin
            aRequiredHouses[  PRODUCTION[ WareOrder[I] ]  ] := 0; // Make sure that next node will not scan this house in this tick
            //Dec(aRequiredHouses[  PRODUCTION[ WareOrder[I] ]  ]);
          end;
        end;
  
negative.code:   HT: THouseType;
  begin
    Output := False;
    RequiredHouses := fPredictor.RequiredHouses;
    WareBalance := fPredictor.WareBalance;
  
    CheckHouseReservation();
    if (aMaxCnt <= 0) then
  