algorithm subsets working