improve user input method, only run once, fix array shuffle (didnt work)