argparser.add_argument('--state-dir',dest='state_dir',type=str,help='Directory to store sync state')
argparser.add_argument('--session-id',dest='session_id',type=str,help='Use state from specified session id')
argparser.add_argument('--cache-dir',dest='cache_dir',type=str,help='Directory to store tx data')
# address rules flags
argparser.add_argument('--input',default=[],action='append',type=str,help='Add input (recipient) addresses to includes list')
argparser.add_argument('--output',default=[],action='append',type=str,help='Add output (sender) addresses to includes list')
argparser.add_argument('--exec',default=[],action='append',type=str,help='Add exec (contract) addresses to includes list')
argparser.add_argument('--data',default=[],action='append',type=str,help='Add data prefix strings to include list')
argparser.add_argument('--data-in',default=[],action='append',dest='data_in',type=str,help='Add data contain strings to include list')
argparser.add_argument('--x-data',default=[],action='append',dest='xdata',type=str,help='Add data prefix string to exclude list')
argparser.add_argument('--x-data-in',default=[],action='append',dest='xdata_in',type=str,help='Add data contain string to exclude list')
argparser.add_argument('--address',default=[],action='append',type=str,help='Add addresses as input, output and exec to includes list')
argparser.add_argument('--x-input',default=[],action='append',type=str,dest='xinput',help='Add input (recipient) addresses to excludes list')
argparser.add_argument('--x-output',default=[],action='append',type=str,dest='xoutput',help='Add output (sender) addresses to excludes list')
argparser.add_argument('--x-exec',default=[],action='append',type=str,dest='xexec',help='Add exec (contract) addresses to excludes list')
argparser.add_argument('--x-address',default=[],action='append',type=str,dest='xaddress',help='Add addresses as input, output and exec to excludes list')
argparser.add_argument('--includes-file',type=str,dest='includes_file',help='Load include rules from file')
argparser.add_argument('--excludes-file',type=str,dest='excludes_file',help='Load exclude rules from file')
argparser.add_argument('--include-default',dest='include_default',action='store_true',help='Include all transactions by default')
argparser.add_argument('--skip-history',action='store_true',dest='skip_history',help='Skip history sync')
argparser.add_argument('--keep-alive',action='store_true',dest='keep_alive',help='Continue to sync head after history sync complete')
argparser.add_argument('--input',default=[],action='append',type=str,help='Add input (recipient) addresses to includes list')
argparser.add_argument('--output',default=[],action='append',type=str,help='Add output (sender) addresses to includes list')
argparser.add_argument('--exec',default=[],action='append',type=str,help='Add exec (contract) addresses to includes list')
argparser.add_argument('--data',default=[],action='append',type=str,help='Add data prefix strings to include list')
argparser.add_argument('--data-in',default=[],action='append',dest='data_in',type=str,help='Add data contain strings to include list')
argparser.add_argument('--x-data',default=[],action='append',dest='xdata',type=str,help='Add data prefix string to exclude list')
argparser.add_argument('--x-data-in',default=[],action='append',dest='xdata_in',type=str,help='Add data contain string to exclude list')
argparser.add_argument('--address',default=[],action='append',type=str,help='Add addresses as input, output and exec to includes list')
argparser.add_argument('--x-input',default=[],action='append',type=str,dest='xinput',help='Add input (recipient) addresses to excludes list')
argparser.add_argument('--x-output',default=[],action='append',type=str,dest='xoutput',help='Add output (sender) addresses to excludes list')
argparser.add_argument('--x-exec',default=[],action='append',type=str,dest='xexec',help='Add exec (contract) addresses to excludes list')
argparser.add_argument('--x-address',default=[],action='append',type=str,dest='xaddress',help='Add addresses as input, output and exec to excludes list')
argparser.add_argument('--includes-file',type=str,dest='includes_file',help='Load include rules from file')
argparser.add_argument('--include-default',dest='include_default',action='store_true',help='Include all transactions by default')
argparser.add_argument('--store-tx-data',dest='store_tx_data',action='store_true',help='Include all transaction data objects by default')
argparser.add_argument('--store-block-data',dest='store_block_data',action='store_true',help='Include all block data objects by default')
argparser.add_argument('--address-file',type=str,dest='excludes_file',help='Load exclude rules from file')
argparser.add_argument('--renderer',type=str,action='append',default=[],help='Python modules to dynamically load for rendering of transaction output')
argparser.add_argument('--filter',type=str,action='append',help='Add python module to tx filter path')
argparser.add_argument('--block-filter',type=str,dest='block_filter',action='append',help='Add python module to block filter path')
argparser.add_argument('--cache-dir',dest='cache_dir',type=str,help='Directory to store tx data')
argparser.add_argument('--state-dir',dest='state_dir',default=exec_dir,type=str,help='Directory to store sync state')
argparser.add_argument('--fresh',action='store_true',help='Do not read block and tx data from cache, even if available')
argparser.add_argument('--single',action='store_true',help='Execute a single sync, regardless of previous states')
argparser.add_argument('--session-id',dest='session_id',type=str,help='Use state from specified session id')
argparser.add_argument('--backend',type=str,help='State store backend')
argparser.add_argument('--list-backends',dest='list_backends',action='store_true',help='List built-in store backends')