@Override
public boolean apply(Game game, Ability source) {
Player controller = game.getPlayer(source.getControllerId());
if (controller != null) {
Combat combat = game.getState().getCombat();
Set<UUID> creaturesToReturn = new HashSet<UUID>();
Set<UUID> playersToShuffle = new HashSet<UUID>();
creaturesToReturn.add(source.getSourceId());
if (combat != null) {
for(CombatGroup combatGroup: combat.getGroups()) {
if (combatGroup.getAttackers().contains(source.getSourceId())) {
creaturesToReturn.addAll(combatGroup.getBlockers());
} else if (combatGroup.getBlockers().contains(source.getSourceId())) {
creaturesToReturn.addAll(combatGroup.getAttackers());
}