    if (reliable)
    {
        out->Write(out_reliable.size());
        while(out_reliable.size()>0)
        {
            AppFrame::actions::Message* msg = out_reliable[0];

            if (message_map.find(msg->getID()) != message_map.end())
            {
                int creator_id = message_map[msg->getID()];
                out->Write(creator_id);
                msg->serialize(out);
            }
            delete msg;
            out_reliable.erase(out_reliable.begin());
        }
    } else
    {
        out->Write(out_unreliable.size());
        while(out_unreliable.size()>0)
        {
            AppFrame::actions::Message* msg = out_unreliable[0];

            if (message_map.find(msg->getID()) != message_map.end())
            {
                int creator_id = message_map[msg->getID()];
                out->Write(creator_id);
                msg->serialize(out);
            }
            delete msg;
            out_unreliable.erase(out_unreliable.begin());
        }
    }