class SLConfigDescriptor extends BaseDescriptor {
    int predefined;

    public SLConfigDescriptor() {
        tag = 0x06;
    }

    public int getPredefined() {
        return predefined;
    }

    public void setPredefined(int predefined) {
        this.predefined = predefined;
    }

    @Override
    public void parseDetail(ByteBuffer bb) throws IOException {
        predefined = IsoTypeReader.readUInt8(bb);
    }

    int getContentSize() {
        return 1;
    }

    public ByteBuffer serialize() {
        ByteBuffer out = ByteBuffer.allocate(getSize());
        IsoTypeWriter.writeUInt8(out, 6);
        writeSize(out, getContentSize());
        IsoTypeWriter.writeUInt8(out, predefined);
        return out;
    }

    @Override
    public String toString() {
        final StringBuilder sb = new StringBuilder();
        sb.append("SLConfigDescriptor");
        sb.append("{predefined=").append(predefined);
        sb.append('}');
        return sb.toString();
    }

    @Override
    public boolean equals(Object o) {<FILL_FUNCTION_BODY>}

    @Override
    public int hashCode() {
        return predefined;
    }
}

        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }

        SLConfigDescriptor that = (SLConfigDescriptor) o;

        if (predefined != that.predefined) {
            return false;
        }

        return true;
    
<methods>public void <init>() ,public int getSize() ,public int getSizeSize() ,public int getTag() ,public final void parse(int, java.nio.ByteBuffer) throws java.io.IOException,public abstract void parseDetail(java.nio.ByteBuffer) throws java.io.IOException,public abstract java.nio.ByteBuffer serialize() ,public java.lang.String toString() ,public void writeSize(java.nio.ByteBuffer, int) <variables>int sizeBytes,int sizeOfInstance,int tag