internal void  WriteProx(FreqProxTermsWriter.PostingList p, int proxCode)
        {
            Payload payload;

            if (payloadAttribute == null)
            {
                payload = null;
            }
            else
            {
                payload = payloadAttribute.GetPayload();
            }

            if (payload != null && payload.length > 0)
            {
                termsHashPerField.WriteVInt(1, (proxCode << 1) | 1);
                termsHashPerField.WriteVInt(1, payload.length);
                termsHashPerField.WriteBytes(1, payload.data, payload.offset, payload.length);
                hasPayloads = true;
            }
            else
            {
                termsHashPerField.WriteVInt(1, proxCode << 1);
            }
            p.lastPosition = fieldState.position;
        }