((struct branch *)*base)->key = key[index] - ZERO_OFFSET;
((struct branch *)*base)->next = NULL;
((struct branch *)*base)->child = NULL;
ret = lookupLeaf(&(((struct branch *)*base)->child), key, index + 1);
/* Leaf level */
} else {
((struct branch *)*base)->key = key[index] - ZERO_OFFSET;
((struct branch *)*base)->next = NULL;
((struct branch *)*base)->child = NULL;
ret = lookupLeaf(&(((struct branch *)*base)->child), key, index + 1);
/* Leaf level */
} else {