func removeDuplicates(S string) string {
stack := make([]rune, 0, 10)
for _, s := range S {
if len(stack) != 0 && s == stack[len(stack)-1] {
stack = stack[:len(stack)-1] // pop
} else {
stack = append(stack, s)
}
}
return string(stack)
}