anchor.diff:    for i:=low(TUnicodeCharRangeClasses) to high(TUnicodeCharRangeClasses) do begin
      SetLength(UnicodeCharRangeClasses[i],0);
     end;
  +  SetLength(UnicodeAdditionalBlocks,0);
     FreeAndNil(UnicodeClassHashMap);
     FreeAndNil(UnicodeScriptHashMap);
     FreeAndNil(UnicodeBlockHashMap);
  +  FreeAndNil(UnicodeAdditionalBlockHashMap);
     FreeAndNil(UnicodeClassLowerCaseHashMap);
     FreeAndNil(UnicodeScriptLowerCaseHashMap);
     FreeAndNil(UnicodeBlockLowerCaseHashMap);
  +  FreeAndNil(UnicodeAdditionalBlockLowerCaseHashMap);
     FreeAndNil(LowerUpperCaseUnicodeCharClass);
     FLREInitialized:=false;
    end;
  
positive.code: 
  const FLREVersion=$00000004;
  
        FLREVersionString='1.00.2016.01.01.17.48.0000';
  
        FLREMaxPrefixCharClasses=32;
  
  
negative.code: procedure TFLREUnicodeCharClass.AddUnicodeBlock(Block:longword;IgnoreCase:boolean=false);
  begin
   AddRange(FLREUnicodeBlocks[Block].FromChar,FLREUnicodeBlocks[Block].ToChar,IgnoreCase);
  end;
  
  procedure TFLREUnicodeCharClass.AddUnicodeAdditionalBlock(Block:longword;IgnoreCase:boolean=false);
  var Range:longint;
  begin
   for Range:=0 to length(UnicodeAdditionalBlocks[Block])-1 do begin
    AddRange(UnicodeAdditionalBlocks[Block,Range].FromChar,UnicodeAdditionalBlocks[Block,Range].ToChar,IgnoreCase);
   end;
  end;
  
  procedure TFLREUnicodeCharClass.Combine(From:TFLREUnicodeCharClass);
  