anchor.diff:    AB_GZ_HDR_ID2 = $8B;
   
     { Test bits for TGzHeader.Flags field }
  -  AB_GZ_FLAG_FTEXT    = $01;
  -  AB_GZ_FLAG_FHCRC    = $02;
  -  AB_GZ_FLAG_FEXTRA   = $04;
  -  AB_GZ_FLAG_FNAME    = $08;
  -  AB_GZ_FLAG_FCOMMENT = $10;
  +  AB_GZ_FLAG_FTEXT         = $01;
  +  AB_GZ_FLAG_FCONTINUATION = $02;
  +  AB_GZ_FLAG_FEXTRA        = $04;
  +  AB_GZ_FLAG_FNAME         = $08;
  +  AB_GZ_FLAG_FCOMMENT      = $10;
  +  AB_GZ_FLAG_FENCRYPTED    = $20;
  +  AB_GZ_UNSUPPORTED_FLAGS  = $E2;
   
     { GZip OS source flags }
     AB_GZ_OS_ID_FAT         = 0;
  
positive.code: 
  procedure TAbGzipItem.SaveGzHeaderToStream(AStream: TStream);
  var
    HBuff, HPtr : PAnsiChar;
    HSize, I32 : LongInt;
    I16 : ShortInt;
    LenW  : Word;
    tempFileName: string;
  begin
    { start with basic header record }
    HSize := SizeOf(TAbGzHeader);
  
    { default ID fields }
    FGzHeader.ID1 := AB_GZ_HDR_ID1;
    FGzHeader.ID2 := AB_GZ_HDR_ID2;
  
negative.code:   tempFileName : string;
  begin
    AStream.Read(FGzHeader, SizeOf(TAbGzHeader));
  
    { Skip part number, if any  }
    if (FGzHeader.Flags and AB_GZ_FLAG_FCONTINUATION) = AB_GZ_FLAG_FCONTINUATION then
      AStream.Seek(SizeOf(Word), soCurrent);
  
    if HasExtraField then begin
      { get length of extra data }
  