- const bool rev = array_elt(config->reverses, i); \
- if (trie_lookup(trie, rev ? reverse : normal)) { \
+ const bool rev = array_elt(config->reverses, i); \
+ const bool part = array_elt(config->partiales, i); \
+ if ((!part && trie_lookup(trie, rev ? reverse : normal)) \
+ || (part && trie_prefix(trie, rev ? reverse : normal))) { \