protected String readAMF3XmlString() throws IOException {
        String result = null;
        
        int type = readAMF3Integer();
        if ((type & 0x01) == 0) // stored String
            result = getFromStoredStrings(type >> 1);
        else {
            byte[] bytes = readBytes(type >> 1);
            result = new String(bytes, "UTF-8");
            addToStoredStrings(result);
        }

        if (debugMore) debug("readAMF3XmlString() -> ", StringUtil.toString(result));

        return result;
    }