class Solution:
def back(self,nums,start,path,res):
res.append(path[:])
for i in range(start,len(nums)):
path.append(nums[i])
self.back(nums,i+1,path,res)
path.pop()
def subsets(self, nums: List[int]) -> List[List[int]]:
res = []
self.back(nums,0,[],res)
return res