anchor.diff:  // Search class with fill by specific number in fObjectArr
     TKMFillObject = class(TKMFillBiome)
     private
  -    fBiomeArr: TKMByte2Array;
  +    fBiomeArr: TKMWord2Array;
     protected
       function CanBeVisited(const aX,aY: SmallInt): Boolean; override;
     public
  -    constructor Create(aMinLimit, aMaxLimit: TKMPoint; var aSearchArr: TInteger2Array; var aObjectArr, aBiomeArr: TKMByte2Array; const aScanEightTiles: Boolean = False); reintroduce;
  +    constructor Create(aMinLimit, aMaxLimit: TKMPoint; var aSearchArr: TInteger2Array; var aObjectArr: TKMByte2Array; var aBiomeArr: TKMWord2Array; const aScanEightTiles: Boolean = False); reintroduce;
       procedure QuickFlood(aX,aY,aSearch,aNewSearch,aObject: SmallInt); reintroduce;
     end;
   
  
positive.code: // This is class for resources in RMG because it is quite complicated task (randomly generate something which must look like original template but still different...)
    TKMFloodWithQueue = class
    private
      fActualIdx: Byte;
      fStartQueue, fEndQueue: TResElementPointer;
      fPointsArr: TKMPoint2Array;
      fSearchArr, fCount: TInteger2Array;
      fFillArr, fCountVisitedArr: TKMByte2Array;
  
negative.code:     fRNG: TKMRandomNumberGenerator;
    protected
      procedure ClearCountVisitedArr();
      procedure InsertInQueue(aX,aY: Integer; aProbability: Single);
      function RemoveFromQueue(var aX,aY: SmallInt; var aProbability: Single): Boolean;
    public
      constructor Create(var aRNG: TKMRandomNumberGenerator; var aPointsArr: TKMPoint2Array; var aCount, aSearchArr: TInteger2Array; var aFillArr: TKMByte2Array);
      destructor Destroy; override;
  