@Override
    public void deserialize(Buffer buf) {
        int limit = buf.readUShort();
        titles = new short[limit];
        for (int i = 0; i < limit; i++) {
            titles[i] = buf.readShort();
        }
        limit = buf.readUShort();
        ornaments = new short[limit];
        for (int i = 0; i < limit; i++) {
            ornaments[i] = buf.readShort();
        }
        activeTitle = buf.readShort();
        if (activeTitle < 0)
            throw new RuntimeException("Forbidden value on activeTitle = " + activeTitle + ", it doesn't respect the following condition : activeTitle < 0");
        activeOrnament = buf.readShort();
        if (activeOrnament < 0)
            throw new RuntimeException("Forbidden value on activeOrnament = " + activeOrnament + ", it doesn't respect the following condition : activeOrnament < 0");
    }