anchor.diff:       PPFLREDFANextStatesByteBlock=^TPFLREDFANextStatesByteBlock;
        TPFLREDFANextStatesByteBlock=array[byte] of PFLREDFAState;
   
  -     TFLREIndirectInstructions=array of longint;
  +     TFLREDFAWorkQueueItems=array of longint;
   
        TFLREDFAState=record
         Flags:longword;
         Instructions:TPFLREInstructions;
         CountInstructions:longint;
  -      IndirectInstructions:TFLREIndirectInstructions;
  -      CountIndirectInstructions:longint;
  +      WorkQueueItems:TFLREDFAWorkQueueItems;
  +      CountWorkQueueItems:longint;
         NextStates:TPFLREDFANextStatesByteBlock;
        end;
   
  
positive.code:  result:=GetState;
   result^.Instructions:=TakeOverFrom^.Instructions;
   result^.CountInstructions:=TakeOverFrom^.CountInstructions;
   result^.IndirectInstructions:=TakeOverFrom^.IndirectInstructions;
   result^.CountIndirectInstructions:=TakeOverFrom^.CountIndirectInstructions;
   result^.Flags:=TakeOverFrom^.Flags;
   TakeOverFrom^.Instructions:=nil;
   TakeOverFrom^.CountInstructions:=0;
   TakeOverFrom^.IndirectInstructions:=nil;
   TakeOverFrom^.CountIndirectInstructions:=0;
   TakeOverFrom^.Flags:=0;
  end;
  
  
negative.code:        StatePoolSize:TFLREPtrUInt;
         StatePoolSizePowerOfTwo:TFLREPtrUInt;
         WorkQueues:TFLREDFAWorkQueues;
         QueueInstructionArray:TFLREDFAWorkQueueItems;
         QueueStack:TFLREDFAWorkQueueItems;
  
         constructor Create(const AThreadLocalStorageInstance:TFLREThreadLocalStorageInstance;const AReversed:boolean);
         destructor Destroy; override;
  