private int simGame(Board board) {
        int[] myCols = new int[COLS];
//        boolean firstMove = true;
        for (int i = 0; i < 50; i++) {
            Board boardCopy = copyBoard(board);
            Player p1 = new Player(me.getPlayerState());
            Player p2 = new Player(other.getPlayerState());
            Connect4 c4Copy = new Connect4(p1, p2, boardCopy);
            int firstMove = 0;//findRandomEmpty(boardCopy);
//            p1.moveTo = firstMove;
//            c4Copy.takeTurn();
//            c4Copy.nextPlayer();
            boolean first = true;

            while (true) {
                int[] scores = checkForWinner(c4Copy, p1, boardCopy);
                p1.moveTo = getMax(scores, boardCopy);
                if (first) {
                    firstMove = p1.moveTo;
                    first = false;
                }
                if (p1.moveTo == -1) {
                    myCols[firstMove]--;
                    break;
                }
                if (p1.win) {
                    myCols[firstMove]++;
                    break;
                }
                c4Copy.takeTurn();
                c4Copy.nextPlayer();

                scores = checkForWinner(c4Copy, p2, boardCopy);
                p2.moveTo = getMax(scores, boardCopy);
                if (p2.moveTo == -1) {
                    myCols[firstMove]--;
                    break;
                }
                if (p2.win) {
                    myCols[firstMove]--;
                    break;
                }
                c4Copy.takeTurn();
                c4Copy.nextPlayer();
            }
        }
//        System.out.println();
        int best = getMax(myCols, board);
        return best;
    }