def METHOD_NAME(self, players: list[Player]) -> dict[Player, Violation]:
    now = datetime_now()
    result = {}
    for player in players:
        violation = self.get_violation(player)
        if not violation:
            continue
        elif violation.get_ban_expiration() > now:
            result[player] = violation
        elif violation.is_expired(now):
            self._clear_violation(player)
    return result