public static Message Decode(UDPPacket p)
        {
            var m = new RemoveInventoryFolder
            {
                AgentID   = p.ReadUUID(),
                SessionID = p.ReadUUID()
            };
            uint c = p.ReadUInt8();

            for (uint i = 0; i < c; ++i)
            {
                m.FolderData.Add(p.ReadUUID());
            }

            return(m);
        }
        public static Message DeserializeEQG(IValue value)
        {
            var m   = (MapType)value;
            var a   = (MapType)((AnArray)m["AgentData"])[0];
            var res = new RemoveInventoryFolder
            {
                AgentID   = a["AgentID"].AsUUID,
                SessionID = a["SessionID"].AsUUID
            };

            foreach (MapType foldermap in ((AnArray)m["FolderData"]).OfType <MapType>())
            {
                res.FolderData.Add(foldermap["FolderID"].AsUUID);
            }

            return(res);
        }