using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace expirement
{
public class Box
{
public int x;
public Box(int a)
{
x = a;
}
public Box()
{
}
}
public class Program
{
static void Main(string[] args)
{
List<Box>[] MainArr = new List<Box>[1];
MainArr[0] = new List<Box>();
Box Box1 = new Box(1);
MainArr[0].Add(Box1);
System.Xml.Serialization.XmlSerializer writer = new System.Xml.Serialization.XmlSerializer(MainArr.GetType());
MemoryStream output = new MemoryStream();
StreamWriter sw = new StreamWriter(output);
writer.Serialize(sw, MainArr);
sw.Close();
var data = output.GetBuffer();
output.Close();
Console.WriteLine("Size: " + data.Length);
StreamReader rw = new StreamReader(new MemoryStream(data));
var result = (List<Box>[])writer.Deserialize(rw);
Console.WriteLine("Result: " + result[0].First().x);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UZXh0Owp1c2luZyBTeXN0ZW0uSU87CgpuYW1lc3BhY2UgZXhwaXJlbWVudAp7CiAgICBwdWJsaWMgY2xhc3MgQm94CiAgICB7CiAgICAgICAgcHVibGljIGludCB4OwogICAgICAgIHB1YmxpYyBCb3goaW50IGEpCiAgICAgICAgewogICAgICAgICAgICB4ID0gYTsKICAgICAgICB9CiAgICAgICAgcHVibGljIEJveCgpCiAgICAgICAgewogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgY2xhc3MgUHJvZ3JhbQogICAgewogICAgICAgIHN0YXRpYyB2b2lkIE1haW4oc3RyaW5nW10gYXJncykKICAgICAgICB7CiAgICAgICAgICAgIExpc3Q8Qm94PltdIE1haW5BcnIgPSBuZXcgTGlzdDxCb3g+WzFdOwogICAgICAgICAgICBNYWluQXJyWzBdID0gbmV3IExpc3Q8Qm94PigpOwogICAgICAgICAgICBCb3ggQm94MSA9IG5ldyBCb3goMSk7CiAgICAgICAgICAgIE1haW5BcnJbMF0uQWRkKEJveDEpOwogICAgICAgICAgICBTeXN0ZW0uWG1sLlNlcmlhbGl6YXRpb24uWG1sU2VyaWFsaXplciB3cml0ZXIgPSBuZXcgU3lzdGVtLlhtbC5TZXJpYWxpemF0aW9uLlhtbFNlcmlhbGl6ZXIoTWFpbkFyci5HZXRUeXBlKCkpOwogICAgICAgICAgICBNZW1vcnlTdHJlYW0gb3V0cHV0ID0gbmV3IE1lbW9yeVN0cmVhbSgpOwogICAgICAgICAgICBTdHJlYW1Xcml0ZXIgc3cgPSBuZXcgU3RyZWFtV3JpdGVyKG91dHB1dCk7CiAgICAgICAgICAgIHdyaXRlci5TZXJpYWxpemUoc3csIE1haW5BcnIpOwogICAgICAgICAgICBzdy5DbG9zZSgpOwogICAgICAgICAgICB2YXIgZGF0YSA9IG91dHB1dC5HZXRCdWZmZXIoKTsKICAgICAgICAgICAgb3V0cHV0LkNsb3NlKCk7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCJTaXplOiAiICsgZGF0YS5MZW5ndGgpOwogICAgICAgICAgICAKICAgICAgICAgICAgU3RyZWFtUmVhZGVyIHJ3ID0gbmV3IFN0cmVhbVJlYWRlcihuZXcgTWVtb3J5U3RyZWFtKGRhdGEpKTsKICAgICAgICAgICAgdmFyIHJlc3VsdCA9IChMaXN0PEJveD5bXSl3cml0ZXIuRGVzZXJpYWxpemUocncpOwogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSgiUmVzdWx0OiAiICsgcmVzdWx0WzBdLkZpcnN0KCkueCk7CiAgICAgICAgICAgCiAgICAgICAgfQogICAgfQp9