Operador personalizado de estrela dupla para uma classe?

Como implementar um operador personalizado de estrela dupla (**) para desembalar, semelhante a como__iter__ funciona com um operador de estrela única (*)?

Por exemplo:

class PlayerManager(object):

    def __init__(self, players=None):
        self.players = players or []

    # Made up method to support ** operator
    def __dict_iter__(self):
        for player in self.players:
            yield get_steamid(player), player

def print_players(**players):
    print(players)

player_manager = PlayerManager([list, of, players])
print_players(player_manager)

Resultado:

{
    'STEAM_0:0:02201': <Player object at 0x0000000000>,
    'STEAM_0:0:10232': <Player object at 0x0000000064>,
    'STEAM_0:0:73602': <Player object at 0x0000000128>
}

questionAnswers(2)

yourAnswerToTheQuestion