anchor.diff:    TrieDepthPointerSize       = (sizeof(Pointer) * BitsPerByte) div BitsForChildIndexPerBucket;
   
   type
  +  _Int64 = {$IFDEF FPC}Int64{$ELSE} UInt64 {$ENDIF};
  +
     PTrieBaseNode = ^TTrieBaseNode;
     TTrieBaseNode = record
       ChildrenCount : Word;
  
positive.code:     (28, 24, 20, 16, 12, 8, 4, 0);
    ChildIndexShiftArray64 : array[0..TrieDepth64Bits - 1] of Byte =
      (60, 56, 52, 48, 44, 40, 36, 32, 28, 24, 20, 16, 12, 8, 4, 0);
    CleanChildIndexMask : array[0..ChildrenPerBucket - 1] of TTrieInt64ChildIndexMask =
      ($FFFFFFFFFFFFFFF0, $FFFFFFFFFFFFFF0F, $FFFFFFFFFFFFF0FF, $FFFFFFFFFFFF0FFF,
       $FFFFFFFFFFF0FFFF, $FFFFFFFFFF0FFFFF, $FFFFFFFFF0FFFFFF, $FFFFFFFF0FFFFFFF,
       $FFFFFFF0FFFFFFFF, $FFFFFF0FFFFFFFFF, $FFFFF0FFFFFFFFFF, $FFFF0FFFFFFFFFFF,
  
negative.code:   ChildIndex: Byte);
  begin
    ANode^.ChildIndex := ANode^.ChildIndex and CleanChildIndexMask[BitFieldIndex];
    ANode^.ChildIndex := ANode^.ChildIndex or (_Int64(ChildIndex) shl (BitFieldIndex * BitsForChildIndexPerBucket));
  end;
  
  function TTrie.GetBusyIndicator(ANode: PTrieBaseNode;
  