docs: public byte[] toBytes() {
          if (tc.isEntryEnabled())
              Tr.entry(tc, "toBytes");
  
          final int gtridLength = (_gtrid == null ? 0 : _gtrid.length);
          final int bqualLength = (_bqual == null ? 0 : _bqual.length);
          final int nbytes = 12 + gtridLength + bqualLength;
          final byte[] result = new byte[nbytes];
  
          Util.setBytesFromInt(result, 0, 4, _formatId);
          Util.setBytesFromInt(result, 4, 4, gtridLength);
          Util.setBytesFromInt(result, 8, 4, bqualLength);
          if (gtridLength > 0)
              System.arraycopy(_gtrid, 0, result, 12, gtridLength);
          if (bqualLength > 0)
              System.arraycopy(_bqual, 0, result, 12 + gtridLength, bqualLength);
  
          if (tc.isEntryEnabled())
              Tr.exit(tc, "toBytes", Util.toHexString(result));
          return result;
      }