https://www.wikitechy.com/technology/java-programming-searching-patterns-set-2-kmp-algorithm/
JAVA programming for Searching for Patterns Set 2 KMP Algorithm