Even better way of handling inputs