experimental generic key, trie