add set getopt