for i in range(2, len(sys.argv)):
     av = sys.argv[i]
     if av == "-e":#use exclusion
         interest_schema = "exclusion"
     elif av == "-s": #use segment
         interest_schema = "segment"
     elif av == "-i":#use id directly in the name
         interest_schema = "id"
     elif av == "-a": #adaptive mode, which adapt chunk size according to the packet loss rate
         mod = "adaptive"
     elif av == "-na": #adaptive mode, which adapt chunk size according to the packet loss rate
         mod = "non-adaptive"
     elif av == "-b": #block size
         assert i <= len(sys.argv), "-b should be followed by chunk size"
         i += 1
         default_block_size = int(sys.argv[i])
     elif av == "-h" or av == "--help":
         usage()
         #exit(0)
 #timeout = sys.argv[2]
 #global mydata
 consumer = Consumer(name=name, mydata=mydata, \
                     interest_schema=interest_schema, mod=mod, default_block_size=default_block_size)
 
 signal.signal(signal.SIGINT, signal_handler)
 consumer.start()
 mydata.list_info()
 log.info("program %s:%s end" %(PAPER, ITEM))    
 
 
    mod = "adaptive"
    default_block_size = DEFAULT_BLOCK_SIZE

    for i in range(begin_index, len(sys.argv)):
        av = sys.argv[i]
        if av == "-e":  #use exclusion
            interest_schema = "exclusion"
        elif av == "-s":  #use segment
            interest_schema = "segment"
        elif av == "-i":  #use id directly in the name
            interest_schema = "id"
        elif av == "-a":  #adaptive mode, which adapt chunk size according to the packet loss rate
            mod = "adaptive"
        elif av == "-na":  #adaptive mode, which adapt chunk size according to the packet loss rate
            mod = "non-adaptive"
        elif av == "-b":  #block size
            assert i <= len(sys.argv), "-b should be followed by chunk size"
            i += 1
            default_block_size = int(sys.argv[i])
        elif av == "-h" or av == "--help":
            usage()
            #exit(0)
    #global mydata

    #mydata = MyData()
    consumer = Producer(name=name, mydata=mydata, content_path=content_path,\
                        mod=mod, default_block_size=default_block_size)
    consumer.start()
    mydata.list_info(enable_chunks=True)
    log.info("program %s:%s end" % (PAPER, ITEM))
    
    for i in range(begin_index, len(sys.argv)):
        av = sys.argv[i]
        if av == "-e":#use exclusion
            interest_schema = "exclusion"
        elif av == "-s": #use segment
            interest_schema = "segment"
        elif av == "-i":#use id directly in the name
            interest_schema = "id"
        elif av == "-a": #adaptive mode, which adapt chunk size according to the packet loss rate
            mod = "adaptive"
        elif av == "-na": #adaptive mode, which adapt chunk size according to the packet loss rate
            mod = "non-adaptive"
        elif av == "-b": #block size
            assert i <= len(sys.argv), "-b should be followed by chunk size"
            i += 1
            default_block_size = int(sys.argv[i])
        elif av == "-h" or av == "--help":
            usage()
            #exit(0)
    #global mydata
    
    #mydata = MyData()
    consumer = Producer(name=name, mydata=mydata, content_path=content_path,\
                        mod=mod, default_block_size=default_block_size)
    consumer.start()
    mydata.list_info(enable_chunks=True)
    log.info("program %s:%s end" %(PAPER, ITEM))