getopt added