anchor.diff:      procedure UpdateWareBalance(aInitialization: Boolean = False);
   
       procedure UpdateBasicHouses(aTick: Cardinal; aInitialization: Boolean = False);
  +    procedure ActualizeWeaponProduction();
       procedure UpdateCityStats();
     public
       RequiredHouses: TRequiredHousesArray;
  
positive.code: const
    INN_TIME_LIMIT = 60 * 10 * 14; // ~ 14 minutes from start
    SCHOOL_PRODUCTION = 3; // Amount of gold which requires school (in 1 minute) - in ideal case it requires only 3.5 in real there is not sometimes gold so it must be lower
    FIRST_MARKETPLACE = 10 * 60 * 80;
    SECOND_MARKETPLACE = 10 * 60 * 180;
    BARRACKS_PEACE_DELAY = 30; // Build barracks since 30 min before
    BARRACKS_BEFORE_PEACE_END = 20; // Allow to build barracks before peace time
  
negative.code:   TKMCityPredictor = class
    private
      fOwner: TKMHandIndex;
      fWorkerCount: Word;
      fGoldMineCnt, fIronMineCnt, fFieldCnt, fBuildCnt: Integer;
      fMaxIronWeapProd, fMaxWoodWeapProd, fMaxSoldiersInMin: Single;
      fCityStats: TCityStats;
      fWareBalance: TWareBalanceArray;
      fFarmBuildHistory: THouseBuildHistory;
  