private int readCfaslOpcode() throws IOException {
    if (trace == API_TRACE_DETAILED) {
      debugNote("Reading CFASL opcode.");
    }
    int cfaslOpcode = read();
    if (trace == API_TRACE_DETAILED) {
      debugNote("Read CFASL opcode: " + cfaslOpcode);
    }
    if (cfaslOpcode == CFASL_EXTERNALIZATION) {
      if (trace == API_TRACE_DETAILED) {
        debugNote("reading opcode = " + cfaslOpcode + " (" + CFASL_OPCODE_DESCRIPTIONS.get(cfaslOpcode) + ")");
      }
      cfaslOpcode = read();
    }
    return cfaslOpcode;
  }