added nicer input functionality