Lyndon Factorization