@Override
  public void initContent(DataInputFullStream data, ConstantPool pool) throws IOException {
    int len = data.readUnsignedShort();
    if (len > 0) {
      entries = new ArrayList<>(len);

      for (int i = 0; i < len; i++) {
        int innerNameIdx = data.readUnsignedShort();
        int outerNameIdx = data.readUnsignedShort();
        int simpleNameIdx = data.readUnsignedShort();
        int accessFlags = data.readUnsignedShort();

        String innerName = pool.getPrimitiveConstant(innerNameIdx).getString();
        String outerName = outerNameIdx != 0 ? pool.getPrimitiveConstant(outerNameIdx).getString() : null;
        String simpleName = simpleNameIdx != 0 ? pool.getPrimitiveConstant(simpleNameIdx).getString() : null;

        entries.add(new Entry(outerNameIdx, simpleNameIdx, accessFlags, innerName, outerName, simpleName));
      }
    }
    else {
      entries = Collections.emptyList();
    }
  }
@Override
  public void initContent(DataInputFullStream data, ConstantPool pool)