static boolean check_answer_with_solution(List<List<Boolean>> A,
			boolean[] b, boolean[] x) {
		for (int i = 0; i < A.size(); ++i) {
			boolean res = A.get(i).get(0) && x[0];
			for (int j = 1; j < A.get(i).size(); ++j) {
				res = res ^ (A.get(i).get(j) && x[j]);
			}

			if (res != b[i]) {
				return false;
			}
		}
		return true;
	}