If the character is a digit, parse the full number.
If the character is '[', push the current number and decoded string onto their respective stacks and reset them.
If the character is a letter, append it to the current decoded string.
If the character is ']', pop the stack to get the last number and decoded string, then append the current decoded string repeated number times to the decoded string.