input changes
input handling