target.setRequired(true);
player.lookAtCards(cards, game);
player.choose(cards, target, game);
card = cards.get(target.getFirstTarget(), game);
if (card != null) {
card.moveToZone(Zone.HAND, source.getId(), game, false);
cards.remove(card);
}
for (Card card1: cards.getCards(game)) {
card1.moveToZone(Zone.LIBRARY, source.getId(), game, false);
}