anchor.diff:  
     // Recursively uncovers cells whose totalMineCount is zero.
     void cull(int x, int y) {
  -    if ((x < 0) || (x > rows - 1))
  -      return;
  -    if ((y < 0) || (y > cols - 1))
  -      return;
  -
  +    if (!inBoard(x, y))
  +      return;
       if (uiState[y][x] == CellState.cleared)
         return;
       uiState[y][x] = CellState.cleared;
  
positive.code: // CoveredMineNode and ExposedMineNode, none of them holding state.
  
  // Colors for each mine count (0-8):
  const List<TextStyle> textStyles = const <TextStyle>[
    const TextStyle(color: const Color(0xFF555555), fontWeight: bold),
    const TextStyle(color: const Color(0xFF0094FF), fontWeight: bold), // blue
    const TextStyle(color: const Color(0xFF13A023), fontWeight: bold), // green
    const TextStyle(color: const Color(0xFFDA1414), fontWeight: bold), // red
    const TextStyle(color: const Color(0xFF1E2347), fontWeight: bold), // black
    const TextStyle(color: const Color(0xFF7F0037), fontWeight: bold), // dark red
    const TextStyle(color: const Color(0xFF000000), fontWeight: bold),
    const TextStyle(color: const Color(0xFF000000), fontWeight: bold),
    const TextStyle(color: const Color(0xFF000000), fontWeight: bold),
  ];
  
  enum CellState { covered, exploded, cleared, flagged, shown }
  
  
negative.code:     }
      return buildCell(buildInnerCell(text));
    }
  }
  
  void main() {
  