split getInput into separate input functions