def explore_scenarios(self, current_mod=0, mod=None):
    if (mod is None):
        mod = {}
    for pos in self.variable_map_scenarios[self.variable_mods[current_mod].value]:
        temp_dict = deepcopy(mod)
        if pos:
            for p in pos:
                if (p not in temp_dict):
                    temp_dict[p] = [self.variable_mods[current_mod]]
                if (current_mod != (self.variable_mod_number - 1)):
                    (yield from self.explore_scenarios((current_mod + 1), temp_dict))
                else:
                    (yield temp_dict)
        elif (current_mod != (self.variable_mod_number - 1)):
            (yield from self.explore_scenarios((current_mod + 1), temp_dict))
        else:
            (yield temp_dict)
def explore_scenarios(self, current_mod=0, mod=None):
    if (mod is None):
        mod = {}
    for pos in self.variable_map_scenarios[self.variable_mods[current_mod].value]:
        temp_dict = deepcopy(mod)
        if pos:
            for p in pos:
                if (p not in temp_dict):
                    temp_dict[p] = [self.variable_mods[current_mod]]
                if (current_mod != (self.variable_mod_number - 1)):
                    (yield from self.explore_scenarios((current_mod + 1), temp_dict))
                else:
                    (yield temp_dict)
        elif (current_mod != (self.variable_mod_number - 1)):
            (yield from self.explore_scenarios((current_mod + 1), temp_dict))
        else:
            (yield temp_dict)