anchor.diff:   while assigned(First) do begin
     First.Free;
    end;
  - Previous:=nil;
  - Next:=nil;
    inherited Destroy;
   end;
   
  
positive.code:        if rfUTF8 in Flags then begin
          UnicodeCharClass:=nil;
          try
           UnicodeCharClass:=TFLREUnicodeCharClass.Create(self);
           if rfSINGLELINE in Flags then begin
            UnicodeCharClass.AddRange($00000000,$ffffffff);
           end else begin
  
negative.code:     AddRange(ucrWORDS,l,h);
     end;
     SetLength(UnicodeCharRangeClasses[ucrWORDS],Count);
    end;
    begin
     LowerUpperCaseUnicodeCharClass:=TFLREUnicodeCharClass.Create;
     Count:=0;
     l:=$ffffffff;
     h:=0;
     for i:=0 to $10ffff do begin
      cl:=UnicodeToLower(i);
      cu:=UnicodeToUpper(i);
      if (cl<>cu) or (cl<>i) or (cu<>i) then begin
       if l<=h then begin
        if (h+1)=i then begin
         h:=i;
        end else begin
         LowerUpperCaseUnicodeCharClass.AddRange(l,h);
         l:=i;
         h:=i;
        end;
       end else begin
        l:=i;
        h:=i;
       end;
      end;
     end;
     if l<=h then begin
      LowerUpperCaseUnicodeCharClass.AddRange(l,h);
     end;
    end;
    begin
     Count:=0;
  