public Run Clone() { var newRun = new Run(this, Factory, Metadata) { GameIcon = GameIcon, GameName = GameName, CategoryName = CategoryName, Offset = Offset, AttemptCount = AttemptCount, AttemptHistory = new List<Attempt>(AttemptHistory), HasChanged = HasChanged, FilePath = FilePath, CustomComparisons = new List<string>(CustomComparisons), ComparisonGenerators = new List<IComparisonGenerator>(ComparisonGenerators), AutoSplitter = AutoSplitter != null ? AutoSplitter.Clone() : null, AutoSplitterSettings = AutoSplitterSettings }; return newRun; }