Clojure Zipper de Mapas aninhados reprimindo um TRIE

Como posso criar um zipper Clojure para um TRIE, representado por mapas aninhados, onde as chaves são as letras?

Algo assim:

{\b {\a {\n {\a {\n {\a {'$ '$}}}}}} \a {\n {\a {'$ '$}}}}

Representa um trie com 2 palavras 'banana' e 'ana'. (Se necessário, é possível fazer algumas alterações aqui nos mapas ..)

Eu tentei passarmap? vals assoc como as 3 funções para o zíper, respectivamente. Mas isso não parece funcionar ..

Quais 3 funções devo usar?

E como o insert-into-trie ficaria com base no zíper?

questionAnswers(2)

yourAnswerToTheQuestion