public static List <Matchup> GenerateMatchupByCityClub(Tournament tournament, int roundNumber)
        {
            var pairings = MatchmakerCityClubHelper.MakeMatchmaking(tournament.Players);
            HashSet <Player> matchedPlayers = new HashSet <Player>();

            var matchups = new List <Matchup>();

            foreach (var pairing in pairings)
            {
                if (!matchedPlayers.Contains(pairing.Key))
                {
                    matchups.Add(new Matchup(roundNumber, pairing.Key.Id, pairing.Value.Id, tournament.Config.GetTagsIds()));
                    matchedPlayers.Add(pairing.Key);
                    matchedPlayers.Add(pairing.Value);
                }
            }
            return(matchups);
        }
            public static Dictionary <Player, Player> MakeMatchmaking(IList <Player> players)
            {
                var calculator = new MatchmakerCityClubHelper(players);

                return(calculator.CalculatePairings());
            }