anchor.diff:          if(!alive){
               return double.NEGATIVE_INFINITY;
           }
  +        int threeCount = threeConnectedCount(board);
  +        int twoCount = twoConnectedCount(board);
           Map blobs = connectedColors(board);
   
  -        return (6 * 12) - this.totalBlocks +
  +        return 
  +            twoCount * 5 + 
  +            threeCount * 10 + 
  +            (6 * 12) - this.totalBlocks +
               this.generatedNuisance +
               this.score;
       }
  
positive.code: 
      return blobs;
  }
  
negative.code: Map<int, Set<Point>> connectedColors(List<List<Cell>> board){
      Map<int, Set<Point>> blobs = new Map<int, Set<Point>>();
      Map<int, Set<int>> equivs = new Map<int, Set<int>>();
      DisJointPoints groups = new DisJointPoints();
      int groupIndex = 0;
      //TODO scan map, build blob and equivalency list
      //first pass
      for(int row = 0; row < 6; row++){
  