public override bool Hit(HandInfo info)
{
var hand = info.PlayerHands.ElementAt(info.HandToPlay);
var value = hand.Value;
var soft = hand.Soft;
var dealer = info.DealerHand.Cards.ElementAt(0).Rank;
if (!soft && value == 12 && dealer < Ranks.Four)
return true;
if (soft && value == 18 && dealer > Ranks.Six && dealer < Ranks.Nine)
return false;
if (soft && value == 18 && dealer == Ranks.Two)
return false;
if (soft && value == 17 && dealer == Ranks.Two)
return true;
if (!soft && dealer == Ranks.Ten &&
hand.Cards.ElementAt(0).Rank == Ranks.Seven &&
hand.Cards.ElementAt(1).Rank == Ranks.Seven)
return false;
return base.Hit(info);
}