Brace Expansion II

Given an expression like "{a,b,c}{1,2,3}", generate all combinations. For example, "{a,b}{c,d}e{f,g}h" → ["acde fh","acdfgh","acd efh","acdfh","ace dfh","acefh","acdegh","acdfgh"...]. This version supports nested braces.

Examples
Input: "{a,b}{c,{d,e}}"
Output: ["ac","ad","ae","bc","bd","be"]
Hints

Brace Expansion II

Given an expression like "{a,b,c}{1,2,3}", generate all combinations. For example, "{a,b}{c,d}e{f,g}h" → ["acde fh","acdfgh","acd efh","acdfh","ace dfh","acefh","acdegh","acdfgh"...]. This version supports nested braces.