Suffix trees: the hidden structure behind fast string searching