private static void HandleWeeklyCommand(string pathArg, string gameArg) { var rootDir = Path.GetFullPath(pathArg); var scoresDb = new ScoresArchive(rootDir); var settings = ScanSettings.Read(rootDir); var prevGlobalPoints = scoresDb.GetPreviousGlobalPoints(); var ranking = scoresDb.InitRankingWithLastWeeklyScore(settings.Week) .Join(prevGlobalPoints, w => w.Xuid, m => m.Key, (r, gp) => r with { InitialPoints = gp.Value, NewPoints = 0 })