add user inputs. fix minor things.