@Override
            public boolean canPlayAI() {
                CardList rebels = new CardList();
                CardList list = AllZoneUtil.getPlayerCardsInLibrary(sourceCard.getController());
                list = list.filter(new CardListFilter() {
                    public boolean addCard(Card c) {
                        return ((c.isType("Rebel") || c.hasKeyword("Changeling")))
                                && c.isPermanent();
                    }
                });

                if (list.size() == 0) return false;

                for (int i = 0; i < list.size(); i++) {
                    if (CardUtil.getConvertedManaCost(list.get(i).getManaCost()) <= converted) {
                        rebels.add(list.get(i));
                    }
                }

                if (AllZone.getPhase().getPhase().equals(Constant.Phase.Main2)
                        && rebels.size() > 0) return true;
                else return false;

            }