public Settings DeepCopy(Settings original) { using (var ms = new MemoryStream()) { var formatter = new BinaryFormatter(); formatter.Serialize(ms, original); ms.Position = 0; return (Settings) formatter.Deserialize(ms); } }