private long GetSerializdSize(BinaryValue input)
        {
            BinaryValueStateSerializer target = new BinaryValueStateSerializer();

            using (MemoryStream stream = new MemoryStream())
            {
                BinaryWriter writer = new BinaryWriter(stream);
                target.Write(input, writer);

                return(stream.Length);
            }
        }
        private BinaryValue SerializeDeserialize(BinaryValue input)
        {
            BinaryValueStateSerializer target = new BinaryValueStateSerializer();

            using (MemoryStream stream = new MemoryStream())
            {
                BinaryWriter writer = new BinaryWriter(stream);
                target.Write(input, writer);

                stream.Seek(0, SeekOrigin.Begin);

                BinaryReader reader = new BinaryReader(stream);
                return(target.Read(reader));
            }
        }