getopt added for much beauty