public DeveloperLogEvent Clone() { var clone = (DeveloperLogEvent)MemberwiseClone(); clone.GrpcErrorDetails = GrpcErrorDetails?.Clone(); clone.ExternalToolError = ExternalToolError?.Clone(); clone.CommandData = CommandData?.Clone(); clone.GameletData = GameletData?.Clone(); clone.GrpcCallDetails = GrpcCallDetails?.Select(x => x.Clone()).ToList(); clone.LoadSymbolData = LoadSymbolData?.Clone(); clone.DebugPreflightCheckData = DebugPreflightCheckData?.Clone(); clone.DebugSessionEndData = DebugSessionEndData?.Clone(); clone.DebugEventBatch = DebugEventBatch?.Clone(); clone.DebugParameters = DebugParameters?.Clone(); clone.CopyExecutable = CopyExecutable?.Clone(); clone.CopyLldbServer = CopyLldbServer?.Clone(); clone.CustomCommand = CustomCommand?.Clone(); clone.ExceptionsData = ExceptionsData?.Select(x => x.Clone()).ToList(); clone.BoundBreakpointsData = BoundBreakpointsData?.Clone(); clone.GameLaunchData = GameLaunchData?.Clone(); clone.DebugExpressionEvaluationBatch = DebugExpressionEvaluationBatch?.Clone(); return(clone); }