Algorithms on Strings by Christophe Hancart & Maxime Crochemore