public static void main(String[] args) throws IOException {
        Menu menuElement;
        boolean gameOver = false;
        System.out.println(START_MESSAGE);
        System.out.println();
        while (!gameOver) {
            Field gameField = null;
            do {
                menuElement = Menu.selectFromMenu(BR);
                if (menuElement == Menu.Exit) {
                    gameOver = true;
                    break;
                }
                gameField = makeNewField(menuElement);
                System.out.println();
            } while (gameField == null);

            if (!gameOver) {
                while (!gameField.isComplete()) {
                    gameField.show();
                    String userCommand = getUserCommand();
                    executeUserCommand(userCommand, gameField);
                }

                if (gameField.isWin() && gameField.isComplete()) {
                    gameField.openField();
                    System.out.println(WIN_MESSAGE);
                } else {
                    System.out.println(LOSE_MESSAGE);
                }
                System.out.println(END_MESSAGE);
                System.out.println();
                gameOver = isGameOver();
            }
        }
    }