optimisation: lazily initialise remaining chars
s/TRIE_T/trie_t/
optimisation: use relative cursor inside trie