it's no problem entering the current MemoizeContext twice.
convert string to list instead of other way around