Easiest recursive function to generate all combinations. 
IntuitionTried brute force approach by generating all the possibilities recursively.ApproachCreate a recursive function to generate all possible combinations.Co
# Intuition
Tried brute force approach by generating all the possibilities recursively.

# Approach
Create a recursive function to generate all possible combinations.



# Code
```python3 []
class Solution:
    def findLexSmallestString(self, s: str, a: int, b: int) -> str:
        def rotate(s):
            return s[-b:] + s[0:-b]

        def add(s):
            new_s = ""
            for ind, c in enumerate(s):
                if ind % 2 == 1:
                    new_c = (a + int(c)) % 10
                    new_s += str(new_c)
                else:
                    new_s += c
            return new_s
        
        def generate_all_combinations(possibilities, s):
            if(s in possibilities):
                return possibilities
            possibilities.add(s)
            possibilities = generate_all_combinations(possibilities, add(s))
            possibilities = generate_all_combinations(possibilities, rotate(s))
            return possibilities

        possibilities = generate_all_combinations(set(), s)
        
           
        return min(possibilities)

```
['Python3']