input method experiment