Card card = game.getCard(source.getSourceId());
if (player != null && card != null) {
List<Ability> abilitiesToRemove = new ArrayList<>();
for (Ability ability : card.getAbilities()) {
if (ability instanceof SuspendAbility) {
<BUG>if (((SuspendAbility)ability).isGainedTemporary()) {
</BUG>
abilitiesToRemove.add(ability);
}
}

Card card = game.getCard(source.getSourceId());
Player controller = game.getPlayer(source.getControllerId());
if (card != null && controller != null) {
UUID exileId = SuspendAbility.getSuspendExileId(controller.getId(), game);
if (controller.moveCardToExileWithInfo(card, exileId, "Suspended cards of " + controller.getName(), source.getSourceId(), game, Zone.HAND, true)) {
if (suspend == Integer.MAX_VALUE) {
suspend = source.getManaCostsToPay().getX();
