added subsets solution