public Board() {
		// Initialize blocks and cells
		this.blocks = new Block[9];
		for (int index = 0; index < this.blocks.length; index++) {
			this.blocks[index] = new Block();
		}
		
		// Create cell map
		this.cells = new Cell[9][9];
		for (int blockIndex = 0; blockIndex < 9; blockIndex++) {
			Block block = this.blocks[blockIndex];
			for (int cellIndex = 0; cellIndex < 9; cellIndex++) {
				Cell cell = block.getCells()[cellIndex];
				
				int row = this.getCellRow(blockIndex, cellIndex);
				int column = this.getCellColumn(blockIndex, cellIndex);
				
				this.cells[row][column] = cell;
			}
		}
	}