anchor.diff:  
     List<String> _board;
   
  +  int _moveCount = 0;
  +
     TTTBoard() {
       _board = new List<String>.filled(9, null);
     }
   
     String move(int square, String player) {
       _board[square] = player;
  +    _moveCount++;
       return checkWin();
     }
   
  
positive.code:     availableMainSquares = mainBoard.unoccupiedSquares;
    }
  
    // find, save, and highlight all legal moves (little squares)
    for (int mainSquare in availableMainSquares) {
      List<int> littleSquares = littleBoards[mainSquare].unoccupiedSquares;
  
  
negative.code:     mainSquareDiv.children.clear();
      mainSquareDiv.appendHtml('<span class="main-mark">$littleBoardWinner</span>');
  
      // check for win
      if (mainBoardWinner != null) {
        messageDiv.text = "Player $mainBoardWinner wins!";
        return;
      }
      else if (mainBoard._moveCount >= 9) {
        messageDiv.text = "It's a tie!";
        return;
      }
    }
  