code: private byte getConstantPoolStringFirstByte(final int cpIdx) throws ClassfileFormatException, IOException {
          final int constantPoolStringOffset = getConstantPoolStringOffset(cpIdx, /* subFieldIdx = */ 0);
          if (constantPoolStringOffset == 0) {
              return '\0';
          }
          final int utfLen = inputStreamOrByteBuffer.readUnsignedShort(constantPoolStringOffset);
          if (utfLen == 0) {
              return '\0';
          }
          return inputStreamOrByteBuffer.buf[constantPoolStringOffset + 2];
      }
docs: Get the first UTF8 byte of a string in the constant pool, or '\0' if the string is null or empty.
  
  @param cpIdx
  the constant pool index
  @return the first byte of the constant pool string
  @throws ClassfileFormatException
  If a problem occurs.
  @throws IOException
  If an IO exception occurs.