int SolveCell(int a, int b) throws Exception{
		if(grid[a][b] != 0){
			return -1;
		}
		
		int[] v = possibleValues(a,b);
		int val = 0;
		for(int i = 1; i <= 9; i++){
			if(v[i] == 0){
				if(val == 0){
					val = i;
				}
				else{
					return 0;
				}
			}
		}
		if(val == 0){
			throw new Exception("No possible values");
		}
		grid[a][b] = val;
		return val;
	}