anchor.diff:        Slot.LocalDictSize := pSlotData^.nLocalDict;
         Slot.Size := pSlotData^.ntext;
   
  -      _Slots^[ _NumSlotsUsed ] := Slot;
  +      _Slots^[ _NumSlotsUsed ] := Slot;   // insert Slot record into handy slot array
         inc( _NumSlotsUsed );
  -
  -    end;
  -    inc( p, sizeof( int16 ) );
  -  end;
  -
  +    end;
  +    // move p pointer to next item in SlotArray - until we reach _NumSlots-1 item
  +    inc(p, sizeof(word));
  +  end;
  +  // Calculate the remainder of the tocentry length - that is the bytes used for TOC topic (title) text
     titleLen := _pTOCEntry^.length - ( longword(p) - longword(_pTOCEntry) );
   
     // Read title
  
positive.code: 
    for SlotIndex := 0 to _NumSlots - 1 do
    begin
      ProfileEvent('Processing SlotIndex ' + IntToStr(SlotIndex));
      Spacing := true;
      Slot := THelpTopicSlot(_Slots[ SlotIndex ]);
      pData := Slot.pData;
  
negative.code:   _Title := '';
    _GlobalDictionary := Dictionary;
    _ContentsGroupIndex := 0;
    _pTOCEntry := pTOCEntry;
    _NumSlots := pTOCEntry^.numslots;
    _NumSlotsUsed := 0;
  
    GetMem( _Slots, _NumSlots * sizeof(THelpTopicSlot));
  
  
    lFlags:= _pTOCEntry^.flags;
    p:= pInt8( _pTOCEntry ) + sizeof( TTOCEntryStart );
  
    if ( lFlags and TOCEntryExtended ) > 0 then
    begin
      ProfileEvent('Processing Extended Topic Entry');
      pExtendedInfo := pExtendedTOCEntry( p );
      inc( p, sizeof( TExtendedTOCEntry ) );
  
  