anchor.diff:      ItemExist := False;
       for j := Low(ItemNew) to High(ItemNew) do
       begin
  -      if ItemOld[i] = ItemNew[j] then
  +      if (ItemOld[i] = ItemNew[j]) then
         begin
           ItemExist := True;
           Break;
  
positive.code:               FBottomMessagePosition := FBottomMessagePosition - MessageInfo.MessageHeight;
                BottomPosition := FBottomMessagePosition;
  
                ItemList[ItemListCount] := MessageInfo;
                Inc(ItemListCount);
  
                Continue;
              end;
            end;
  
negative.code:   begin
      Item := FDrawItems[0];
  
      if (FBottomMessageIndex <= 0) and (Value < 0) then
      begin
        // Запрет на прокрутку дальше чем самое первое сообщение
        FBottomMessageIndex := 0;
        FBottomMessagePosition := 0;
        IsScroll := True;
      end
      else if (FBottomMessagePosition < 0) and (Abs(FBottomMessagePosition) > Item.MessageHeight) then
      begin
        FBottomMessageIndex := FBottomMessageIndex - 1;
        FBottomMessagePosition := FBottomMessagePosition + Item.MessageHeight;
  
        IsScroll := True;
      end
      else if FBottomMessagePosition > 0 then
  