anchor.diff:    result:=ThreadLocalStorageInstance.OnePassNFA.SearchMatch(Captures,StartPosition,UntilExcludingPosition);
    end else begin
     if false and BitStateNFAReady then begin
  -   case ThreadLocalStorageInstance.SearchMatchBitStateNFA(Captures,StartPosition,UntilExcludingPosition,UnanchoredStart) of
  +   case ThreadLocalStorageInstance.BitStateNFA.SearchMatch(Captures,StartPosition,UntilExcludingPosition,UnanchoredStart) of
       BitStateNFAFail:begin
        result:=false;
        exit;
  
positive.code:        procedure DFAFreeState(State:PFLREDFAState);
         procedure DFAReset;
  
         function SearchMatchBitStateNFA(var Captures:TFLRECaptures;const StartPosition,UntilExcludingPosition:longint;const UnanchoredStart:boolean):longint;
         function SearchMatchDFAFast(const StartPosition,UntilExcludingPosition:longint;out MatchEnd:longint;const UnanchoredStart:boolean):longint;
         function SearchMatchReversedDFAFast(const StartPosition,UntilIncludingPosition:longint;out MatchBegin:longint):longint;
         function SearchMatchDFAFull(const StartPosition,UntilExcludingPosition:longint;out MatchEnd:longint;const UnanchoredStart:boolean):longint;
  
negative.code: 
   if Instance.OnePassNFAReady then begin
    OnePassNFA:=TFLREOnePassNFA.Create(self);
   end else begin
    OnePassNFA:=nil;
   end;
  
   if Instance.BitStateNFAReady then begin
    BitStateNFA:=TFLREBitStateNFA.Create(self);
   end else begin
    BitStateNFA:=nil;
   end;
  
   DFAStackInstructions:=nil;
  