anchor.diff:                    Result := Units[aType].Initial + Units[aType].Trained - Units[aType].Lost;
                     if aType = utRecruit then
                       for UT := WARRIOR_EQUIPABLE_BARRACKS_MIN to WARRIOR_EQUIPABLE_BARRACKS_MAX do
  -//                      if UT = utMilitia then
  -//                        Dec(Result, Units[UT].Trained - MilitiaTrainedInTownHall) //Do not count militia, trained in TownHall, only in Barracks
  -//                      else
                         Dec(Result, Units[UT].Trained); //Trained soldiers use a recruit
                   end;
     end;
  
positive.code:     Houses: array [TKMHouseType] of TKMHouseStats;
      Units: array [HUMANS_MIN..HUMANS_MAX] of TKMUnitStats;
      Wares: array [WARE_MIN..WARE_MAX] of TKMWareStats;
  //    MilitiaTrainedInTownHall: Cardinal;
  
      fWareDistribution: TKMWareDistribution;
      function GetChartWares(aWare: TKMWareType): TKMCardinalArray;
  
negative.code:   LoadStream.Read(Houses, SizeOf(Houses));
    LoadStream.Read(Units, SizeOf(Units));
    LoadStream.Read(Wares, SizeOf(Wares));
    fWareDistribution.Load(LoadStream);
  
    LoadStream.Read(fChartCount);
  