In i2c configuration tooling, a string may represent selectable characters in a payment or cardholder rule. Given a string and an arrangement mode, generate every unique arrangement without returning duplicates caused by repeated characters.
Implement a function that supports two modes:
"permutations": return every distinct arrangement using all characters exactly once."combinations": return every distinct non-empty combination of the characters, where character order within a combination is nondecreasing. Each character occurrence may be used at most once, so repeated input characters are treated as a multiset.Return results in lexicographic order. For combinations, include combinations of every possible length.
s containing lowercase English letters and a string mode, either "permutations" or "combinations".def generate_arrangements(s, mode):