public static boolean canUntap(Card c) {

        if (c.hasKeyword("CARDNAME doesn't untap during your untap step.")
                || c.hasKeyword("This card doesn't untap during your next untap step.")) return false;

        CardList allp = AllZoneUtil.getCardsInPlay();
        for (Card ca : allp) {
            if (ca.hasStartOfKeyword("Permanents don't untap during their controllers' untap steps")) {
                int KeywordPosition = ca.getKeywordPosition("Permanents don't untap during their controllers' untap steps");
                String parse = ca.getKeyword().get(KeywordPosition).toString();
                String k[] = parse.split(":");
                final String restrictions[] = k[1].split(",");
                final Card card = ca;
                if (c.isValidCard(restrictions, card.getController(), card)) return false;
            }
        } // end of Permanents don't untap during their controllers' untap steps

        return true;
    }