public void resetGame(int boardSize, int handicap, Player player1, Player player2) {
		if (computerMatch != null) {
			computerMatch.requestStop();
		}

		gameOver = false;

		this.player1 = player1;
		this.player2 = player2;

		board = new Board(boardSize, handicap);
		analyzerPanel.analyze(board);
		activeMove = new InitialPosition(boardSize, handicap);

		boardSizer.setBoardSize(boardSize);
		boardSizer.setImageSize(goPanel.getWidth(), goPanel.getHeight());

		goPanel.repaint();
		moveTree.reset(activeMove);

		if (player1 instanceof ComputerPlayer) {
			if (player2 instanceof ComputerPlayer) {
				computerMatch = new ComputerMatch();
			} else {
				maybeMakeComputerMove();
			}
		}
	}