public virtual NetRoot <T> Clone() { using (MemoryStream stream = new MemoryStream()) { using (BinaryWriter writer = new BinaryWriter(stream)) { using (BinaryReader reader = new BinaryReader(stream)) { WriteFull(writer); stream.Seek(0L, SeekOrigin.Begin); NetRoot <T> netRoot = new NetRoot <T>(); netRoot.Serializer = Serializer; netRoot.ReadFull(reader, Clock.netVersion); netRoot.reassigned.Set(default(NetVersion)); netRoot.MarkClean(); return(netRoot); } } } }