private void RaiseButton_Click(object sender, EventArgs e)
        {
            if (Computer.Money == 0)
            {
                PlayerWins();
            }

            PlayersOddsLabel.Text = "Win: N/A\nLose: N/A\nDraw: N/A";

            User.Money -= 10;
            Pot        += 10;

            Odds ComputersOdds = Computer.HoldemHand.CalculateOdds(SharedCards);

            if (ComputersOdds.Win > 50.0)
            {
                Computer.Money -= 10;
                Pot            += 10;

                PokerHand PlayersBestHand   = User.HoldemHand.FindBestPokerHand(SharedCards);
                PokerHand ComputersBestHand = Computer.HoldemHand.FindBestPokerHand(SharedCards);

                int ResultOfComparision = PlayersBestHand.CompareTo(ComputersBestHand);

                if (ResultOfComparision == 1)
                {
                    if (Computer.Money == 0)
                    {
                        PlayerWins();
                    }

                    else
                    {
                        User.Money += Pot;
                        Pot         = 0;
                        ComputerMoneyLabel.Text  = $"${Computer.Money}";
                        ComputerActionLabel.Text = "Computer: Called";
                        ComputersCard1.Image     = GetCardImage(Computer.HoldemHand.Hand[0]);
                        ComputersCard2.Image     = GetCardImage(Computer.HoldemHand.Hand[1]);
                        PotLabel.Text            = $"Pot: ${Pot}";
                        DealButton.Enabled       = true;
                        FoldButton.Enabled       = false;
                        RaiseButton.Enabled      = false;
                        ResultLabel.Text         = "You Win\nThis Hand!";
                        PlayerMoneyLabel.Text    = $"${User.Money}";
                    }
                }

                else if (ResultOfComparision == -1)
                {
                    if (User.Money == 0)
                    {
                        PlayerLoses();
                    }

                    else
                    {
                        Computer.Money          += Pot;
                        Pot                      = 0;
                        ComputerMoneyLabel.Text  = $"${Computer.Money}";
                        ComputerActionLabel.Text = "Computer: Called";
                        ComputersCard1.Image     = GetCardImage(Computer.HoldemHand.Hand[0]);
                        ComputersCard2.Image     = GetCardImage(Computer.HoldemHand.Hand[1]);
                        PotLabel.Text            = $"Pot: ${Pot}";
                        DealButton.Enabled       = true;
                        FoldButton.Enabled       = false;
                        RaiseButton.Enabled      = false;
                        ResultLabel.Text         = "The Computer\nWins This Hand";
                        PlayerMoneyLabel.Text    = $"${User.Money}";
                    }
                }

                else
                {
                    int SplitPot = Pot / 2;
                    User.Money              += 20;
                    Computer.Money          += 20;
                    Pot                      = 0;
                    ComputerMoneyLabel.Text  = $"${Computer.Money}";
                    ComputerActionLabel.Text = "Computer: Called";
                    ComputersCard1.Image     = GetCardImage(Computer.HoldemHand.Hand[0]);
                    ComputersCard2.Image     = GetCardImage(Computer.HoldemHand.Hand[1]);
                    PotLabel.Text            = $"Pot: ${Pot}";
                    DealButton.Enabled       = true;
                    FoldButton.Enabled       = false;
                    RaiseButton.Enabled      = false;
                    ResultLabel.Text         = "It's a\nDraw!";
                    PlayerMoneyLabel.Text    = $"${User.Money}";
                }
            }

            else
            {
                User.Money += Pot;
                Pot         = 0;
                ComputerActionLabel.Text = "Computer: Folded";
                ComputersCard1.Image     = GetCardImage(Computer.HoldemHand.Hand[0]);
                ComputersCard2.Image     = GetCardImage(Computer.HoldemHand.Hand[1]);
                PotLabel.Text            = $"Pot: ${Pot}";
                DealButton.Enabled       = true;
                FoldButton.Enabled       = false;
                RaiseButton.Enabled      = false;
                ResultLabel.Text         = "You Win\nThis Hand!";
                PlayerMoneyLabel.Text    = $"${User.Money}";
            }
        }
        public Odds CalculateOdds(PokerHand SharedCards)
        {
            List <HoldemHand> PossibleHandsOfOpponent = new List <HoldemHand>();
            PokerHand         BestPokerHand           = new PokerHand();

            PokerHand[] BestPokerHandArray = new PokerHand[990];
            int         NumWins = 0, NumDraws = 0, NumLoses = 0;
            double      ChancesOfWinning = 0.0, ChancesOfLosing = 0.0, ChancesOfDrawing = 0.0;
            int         ResultOfComparison;

            for (int i = 0; i < 990; ++i)
            {
                BestPokerHandArray[i] = new PokerHand();
            }

            Deck.Remove(SharedCards.Hand[0]);
            Deck.Remove(SharedCards.Hand[1]);
            Deck.Remove(SharedCards.Hand[2]);
            Deck.Remove(SharedCards.Hand[3]);
            Deck.Remove(SharedCards.Hand[4]);

            Deck.Remove(Hand[0]);
            Deck.Remove(Hand[1]);

            for (int i = 0; i < 45; ++i)
            {
                for (int j = i + 1; j < 45; ++j)
                {
                    HoldemHand TmpHoldemHand = new HoldemHand();
                    TmpHoldemHand.Hand[0] = Deck.ElementAt(i);
                    TmpHoldemHand.Hand[1] = Deck.ElementAt(j);
                    PossibleHandsOfOpponent.Insert(0, TmpHoldemHand);
                }
            }

            BestPokerHand = FindBestPokerHand(SharedCards);

            for (int i = 0; i < 990; ++i)
            {
                BestPokerHandArray[i] = PossibleHandsOfOpponent.ElementAt(i).FindBestPokerHand(SharedCards);
            }

            for (int i = 0; i < 990; ++i)
            {
                ResultOfComparison = BestPokerHand.CompareTo(BestPokerHandArray[i]);

                if (ResultOfComparison == 1)
                {
                    ++NumWins;
                }

                else if (ResultOfComparison == -1)
                {
                    ++NumLoses;
                }

                else
                {
                    ++NumDraws;
                }
            }

            Deck.Insert(0, SharedCards.Hand[0]);
            Deck.Insert(0, SharedCards.Hand[1]);
            Deck.Insert(0, SharedCards.Hand[2]);
            Deck.Insert(0, SharedCards.Hand[3]);
            Deck.Insert(0, SharedCards.Hand[4]);

            Deck.Insert(0, Hand[0]);
            Deck.Insert(0, Hand[1]);

            ChancesOfWinning = (NumWins / 990.0) * 100.0;
            ChancesOfLosing  = (NumLoses / 990.0) * 100.0;
            ChancesOfDrawing = (NumDraws / 990.0) * 100.0;

            return(new Odds(ChancesOfWinning, ChancesOfLosing, ChancesOfDrawing));
        }