update: change getopt style