def create_default_groups(self):
        for group in self.groups:
            group = group.replace(" ", "_").lower()
            self[group] = NamedRequirements(group)
def combinationSum(self, candidates, target):
        self.result = []
        self.dfs(candidates,0,target,[])
        return self.result