match (&game.phase, game.discard.top().and_then(Card::suit)) {
(Phase::Play, Some(suit)) => {
match game.current_player_hand().filter_by_suit(suit).random() {
Some(card) => Play::Play(*card),
match (&game.phase, game.discard.top().and_then(Card::suit)) {
(Phase::Play, Some(suit)) => {
match game.current_player_hand().filter_by_suit(suit).random() {
Some(card) => Play::Play(*card),