public static void addSuspendTemporaryToCard(Card card, Ability source, Game game) {
SuspendAbility ability = new SuspendAbility(0, null, card, false);
ability.setSourceId(card.getId());
ability.setControllerId(card.getOwnerId());
game.getState().addOtherAbility(card, ability);
SuspendBeginningOfUpkeepInterveningIfTriggeredAbility ability1 = new SuspendBeginningOfUpkeepInterveningIfTriggeredAbility();
ability1.setSourceId(card.getId());
ability1.setControllerId(card.getOwnerId());
game.getState().addOtherAbility(card, ability1);
game.getState().addAbility(ability1, source.getSourceId(), card);
SuspendPlayCardAbility ability2 = new SuspendPlayCardAbility();
ability2.setSourceId(card.getId());
ability2.setControllerId(card.getOwnerId());
game.getState().addOtherAbility(card, ability2);
game.getState().addAbility(ability2, source.getSourceId(), card);
}