public int assessment(Board b) {
		int contZero = 0;
		int val = Integer.MIN_VALUE;
		int codI = 0; int codJ = 0;
		for (int i = 0; i < 4; i++) {
			for (int j = 0; j < 4; j++) {
				if(this.board.get(i, j)==0){contZero++;}
				if(val < this.board.get(i, j)){
					val = this.board.get(i, j);
					codI = i; codJ = j; //keep the coordinates of more
				}
			}	
		}
		if (this.board.get(0, 0) == val || this.board.get(3, 0) == val ||this.board.get(0, 3) == val ||this.board.get(3, 3) == val) val *= val; 
		if (counter(codI,codJ)!=0) {val += val;} 
		return val * contZero + this.countNumberOfMerges(2)*2 * this.countNumberOfMerges(4)*8;
	}