- current = array_elt(trie->keys, array_elt(trie->keys_offset, first_key) + offset);
- for (int i = first_key + 1 ; i < last_key ; ++i) {
- const char *str = array_ptr(trie->keys, array_elt(trie->keys_offset, i));
- const char c = str[offset];
+ current = key(trie, first_key)[offset];
+ for (uint32_t i = first_key + 1 ; i < last_key ; ++i) {
+ const char *ckey = key(trie, i) + offset;
+ const char c = *ckey;