refactor keyboard