input method replacement