public boolean dredge() {
        CardList dredgers = getDredge();
        Random random = MyRandom.random;

        //use dredge if there are more than one of them in your graveyard
        if (dredgers.size() > 1 || (dredgers.size() == 1 && random.nextBoolean())) {
            dredgers.shuffle();
            Card c = dredgers.get(0);
            //rule 702.49a
            if (getDredgeNumber(c) <= AllZone.getComputerLibrary().size()) {
                //dredge library, put card in hand
                AllZone.getGameAction().moveToHand(c);
                //put dredge number in graveyard
                for (int i = 0; i < getDredgeNumber(c); i++) {
                    Card c2 = AllZone.getComputerLibrary().get(0);
                    AllZone.getGameAction().moveToGraveyard(c2);
                }
                return true;
            }
        }
        return false;
    }