add new kmp.cpp