public void execute() {

                CardList humanNexus = AllZoneUtil.getPlayerCardsInPlay(AllZone.getHumanPlayer(), "Maelstrom Nexus");
                CardList computerNexus = AllZoneUtil.getPlayerCardsInPlay(AllZone.getComputerPlayer(), "Maelstrom Nexus");

                if (humanNexus.size() > 0) {
                    if (Phase.getPlayerSpellCount() == 1 && !c.isCopiedSpell()) {
                        for (int i = 0; i < humanNexus.size(); i++) {
                            DoCascade(c);
                        }
                    }
                }
                if (computerNexus.size() > 0) {
                    if (Phase.getComputerSpellCount() == 1 && !c.isCopiedSpell()) {
                        for (int i = 0; i < computerNexus.size(); i++) {
                            DoCascade(c);
                        }
                    }
                }
                if (c.hasKeyword("Cascade")
                        || c.getName().equals("Bituminous Blast")) //keyword gets cleared for Bitumonous Blast
                {
                    DoCascade(c);
                }
            }