anchor.diff:      function Size: Integer;
       function GetString(FromIndex, UntilIndex: Integer): TBuffString;
       property Name: TBuffString read FName;
  -    property CharSet: TBuffCharSet read FCharSet write FCharSet;
  -    property CodePage: TBuffCodePage read FCodePage write FCodePage;
  +    property CharSet: TBuffCharSet read FCharSet write SetCharSet;
  +    property CodePage: TBuffCodePage read FCodePage write SetCodePage;
       property Position: Integer read GetPosition write SetPostion;
     end;
   
  
positive.code:           // swap the 2 bytes of one char.
            FCodePage := CP_UTF16BE;
            FInitalCodePage := FCodePage;
            FCharSet := UNKNOWN_CHARSET;
            Inc(FPos.WordPtr);
            Exit;
  
negative.code:             // this is UTF-8
              FCodePage := CP_UTF8;
              FInitalCodePage := FCodePage;
              Include(FState, bsFixedCodePage);
              FCharSet := DEFAULT_CHARSET;
              Inc(FPos.BytePtr);
              Exit;
  