private async Task <(int bid, int count, BeatmapInfo?beatmapInfo)> GetMostPlayedBeatmapAsync() { IGrouping <int, UserPlayRecord>?mostPlayed = _userPlayRecords .GroupBy(r => r.Record.BeatmapId) .OrderByDescending(g => g.Count()) .First(); (int bid, int count) = (mostPlayed.Key, mostPlayed.Count()); BeatmapInfo?beatmap = await _osuApiClient.GetBeatmap(bid, _mode).ConfigureAwait(false); return(bid, count, beatmap); }