public T Deserialize <T>([NotNull] byte[] bytes) where T : class
        {
            ProtobufPrepareSerializerInitializer <T> .Prepare();

            using (var ms = new MemoryStream(bytes))
                return(Serializer.Deserialize <T>(ms));
        }
        public byte[] Serialize <T>([NotNull] T obj) where T : class
        {
            ProtobufPrepareSerializerInitializer <T> .Prepare();

            using (var mem = new MemoryStream())
            {
                Serializer.Serialize(mem, obj);
                return(mem.ToArray());
            }
        }