impl input actions