anchor.diff:   end;
   end;
   
  -function FLREGetPrefilterSQLExpression(const Instance:pointer;const Field:pansichar;SQLExpression,Error:ppansichar):longint; {$ifdef win32}{$ifdef cpu386}stdcall;{$endif}{$endif}
  +function FLREGetPrefilterSQLExpression(const Instance:pointer;const Field:PAnsiChar;SQLExpression,Error:ppansichar):longint; {$ifdef win32}{$ifdef cpu386}stdcall;{$endif}{$endif}
   var s:TFLRERawByteString;
       Len:longint;
   begin
  
positive.code:  end;
  end;
  
  function UTF8PtrGet(const s:pansichar;Len:longint):longint;
  var CodeUnit,CodePoints:longint;
      State:longword;
  begin
  
negative.code: 
  function TFLRE.ExtractAll(const Input:TFLRERawByteString;var MultiExtractions:TFLREMultiStrings;const StartPosition:longint=1;Limit:longint=-1):boolean;
  begin
   result:=PtrExtractAll(PAnsiChar(@Input[1]),length(Input),MultiExtractions,StartPosition-1,Limit);
  end;
  
  function TFLRE.Replace(const Input,Replacement:TFLRERawByteString;const StartPosition:longint=1;Limit:longint=-1):TFLRERawByteString;
  begin
   result:=PtrReplace(PAnsiChar(@Input[1]),length(Input),PAnsiChar(@Replacement[1]),length(Replacement),StartPosition-1,Limit);
  end;
  
  function TFLRE.ReplaceCallback(const Input:TFLRERawByteString;const ReplacementCallback:TFLREReplacementCallback;const StartPosition:longint=1;Limit:longint=-1):TFLRERawByteString;
  begin
   result:=PtrReplaceCallback(PAnsiChar(@Input[1]),length(Input),ReplacementCallback,StartPosition-1,Limit);
  end;
  
  function TFLRE.Split(const Input:TFLRERawByteString;var SplittedStrings:TFLREStrings;const StartPosition:longint=1;Limit:longint=-1):boolean;
  begin
   result:=PtrSplit(PAnsiChar(@Input[1]),length(Input),SplittedStrings,StartPosition-1,Limit);
  end;
  
  function TFLRE.Test(const Input:TFLRERawByteString;const StartPosition:longint=1):boolean;
  begin
   result:=PtrTest(PAnsiChar(@Input[1]),length(Input),StartPosition-1);
  end;
  
  function TFLRE.Find(const Input:TFLRERawByteString;const StartPosition:longint=1):longint;
  begin
   result:=PtrFind(PAnsiChar(@Input[1]),length(Input),StartPosition-1)+1;
  end;
  
  function TFLRE.UTF8Match(const Input:TFLREUTF8String;var Captures:TFLRECaptures;const StartPosition:longint=1):boolean;
  var Counter:longint;
  begin
   result:=PtrMatch(PAnsiChar(@Input[1]),length(Input),Captures,StartPosition-1);
   for Counter:=0 to length(Captures)-1 do begin
    if Captures[Counter].Length>0 then begin
     inc(Captures[Counter].Start);
  