public override bool applyEffects(Gamestate gs)
        {
            //
            Province targetProv = gs.pickProvince(this.canBePurchasedFromProvince(gs), gs.activePlayer);


            //Check loyalist restrictions/family honour requirments in the canBeRecruitedBy(this)
            //
            if (targetProv.purchasableCard.canBeRecruitedBy(gs.activePlayer))
            {
                int goldCostModifier = 0;

                if (targetProv.purchasableCard.traits.Contains(gs.performingPlayer.stronghold.family))
                {
                    goldCostModifier = 2;
                }
                if (targetProv.purchasableCard.getCardCost() + goldCostModifier <= gs.activePlayer.goldPool)
                {
                    gs.activePlayer.goldPool -= targetProv.purchasableCard.getCardCost() + goldCostModifier;
                    targetProv.purchasableCard.enteringPlay();
                    gs.activePlayer.cardsInPlay.Add(targetProv.purchasableCard);
                    //refill province

                    try
                    {
                        targetProv.purchasableCard            = gs.performingPlayer.pDynastyDeck.drawTopCard();
                        targetProv.purchasableCard.IsFaceDown = true;
                    }
                    catch
                    {
                        Console.WriteLine("No cards left in dynasty deck");
                    }
                }
            }
            gs.performingPlayer = gs.getOpposingPlayer(gs.performingPlayer);
            return(true);
        }