gathering work from my mac, refined how the user input works