manipulate input