impliment a trie tree