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: 
         OnePassNFA:TFLREOnePassNFA;
  
         BitStateNFAVisited:TFLREBitStateNFAVisited;
         BitStateNFACountVisited:longint;
         BitStateNFAJobs:TFLREBitStateNFAJobs;
         BitStateNFACountJobs:longint;
         BitStateNFAMaxJob:longint;
         BitStateNFAWorkSubMatches:TFLREBitStateNFASubMatches;
         BitStateNFAMatchSubMatches:TFLREBitStateNFASubMatches;
  
         DFAGeneration:int64;
         DFAInstructionGenerations:TFLREInstructionGenerations;
  
negative.code:      (((MatchCondition and sfEmptyAllFlags)=0) or
        (((MatchCondition and sfEmptyAllFlags) and not ThreadLocalStorageInstance.GetSatisfyFlags(CurrentPosition))=0)) then begin
     for Counter:=0 to CountSubMatches-1 do begin
      MatchSubMatches[Counter]:=WorkSubMatches[Counter];
     end;
     if (MatchCondition and sfCapMask)<>0 then begin
      for Counter:=0 to CountSubMatches-1 do begin
       if (MatchCondition and ((1 shl sfCapShift) shl Counter))<>0 then begin
        MatchSubMatches[Counter]:=CurrentPosition;
       end;
      end;
     end;
  