implement unitinput