code: private void deserializeSupplementary(byte[] descriptor) throws IOException {
          // for now, only recognize one supplementary descriptor
          if (this.hasSupplementary) {
              return;
          }
  
          validateBlockSize(descriptor);
  
          String escapeSequences = Util.getDChars(descriptor, 89, 32);
  
          String enc = getEncoding(escapeSequences);
  
          if (null != enc) {
              this.encoding = enc;
              this.escapeSequences = escapeSequences;
  
              deserializeCommon(descriptor);
  
              this.hasSupplementary = true;
          } else {
              log.warn("Unsupported encoding, escapeSequences: '" + this.escapeSequences + "'");
          }
      }
docs: The supplementary descriptor sets the character encoding and may override the common
  descriptor information.
  
  @param descriptor the descriptor bytes
  @throws IOException