public void getSubset(ArrayList<Integer> temp, int[] S, int start) {
		for (int i = start; i < S.length; i++) {
			temp.add(S[i]);
			result.add(new ArrayList<Integer>(temp));
			if (i < S.length - 1)
				getSubset(temp, S, i + 1);
			temp.remove(temp.size() - 1);

		}
	}