add Boyer Moore algorithm