diff --git a/doc/wiki/cmds/command-help-swaptxcreate.md b/doc/wiki/cmds/command-help-swaptxcreate.md index c3ce9803..7790a1c8 100644 --- a/doc/wiki/cmds/command-help-swaptxcreate.md +++ b/doc/wiki/cmds/command-help-swaptxcreate.md @@ -16,9 +16,13 @@ -E, --fee-estimate-mode M Specify the network fee estimate mode. Choices: 'conservative','economical'. Default: 'conservative' -f, --fee f Transaction fee, as a decimal BTC amount or as - satoshis per byte (an integer followed by 's'). + satoshis per byte (an integer followed by ‘s’). See FEE SPECIFICATION below. If omitted, fee will be calculated using network fee estimation. + -g, --gas N Set the gas limit for Ethereum (see GAS LIMIT below) + -G, --router-gas N Set the gas limit for the Ethereum router contract + (integer). When unset, a hardcoded default will be + used. Applicable only for swaps from token assets. -i, --info Display unspent outputs and exit -I, --inputs i Specify transaction inputs (comma-separated list of MMGen IDs or coin addresses). Note that ALL unspent @@ -29,11 +33,15 @@ -m, --minconf n Minimum number of confirmations required to spend outputs (default: 1) -q, --quiet Suppress warnings; overwrite files without prompting + -r, --stream-interval N Set block interval for streaming swap (default: 3) -s, --swap-proto Swap protocol to use (Default: thorchain, Choices: 'thorchain') + -S, --list-assets List available swap assets -v, --verbose Produce more verbose output -V, --vsize-adj f Adjust transaction's estimated vsize by factor 'f' - -x, --proxy P Fetch the swap quote via SOCKS5 proxy ‘P’ (host:port) + -x, --proxy P Fetch the swap quote via SOCKS5h proxy ‘P’ (host:port). + Use special value ‘env’ to honor *_PROXY environment + vars instead. -y, --yes Answer 'yes' to prompts, suppress non-essential output @@ -56,19 +64,19 @@ automount is likewise supported via the --autosign option. The command line must contain at minimum a send coin (COIN1) and receive coin - (COIN2) symbol. Currently supported coins are BTC, LTC and BCH. All other - arguments are optional. If AMT is specified, the specified value of send coin - will be swapped and the rest returned to a change address in the originating - tracking wallet. Otherwise, the entire value of the interactively selected - inputs will be swapped. + (COIN2) symbol. Currently supported coins are BTC, LTC, BCH and ETH. All + other arguments are optional. If AMT is specified, the specified value of + send coin will be swapped and the rest returned to a change address in the + originating tracking wallet. Otherwise, the entire value of the interactively + selected inputs will be swapped. - By default, the change and destination addresses are chosen automatically by - finding the lowest-indexed unused addresses of the preferred address types in - the send and receive tracking wallets. For Bitcoin and forks, types ‘B’, - ‘S’ and ‘C’ (see ADDRESS TYPES below) are searched in that order for unused - addresses. Note that sending to an unused address may be undesirable for - Ethereum, where address (i.e. account) reuse is the norm. In that case, the - user should specify a destination address on the command line. + By default, the change (if applicable) and destination addresses are chosen + automatically by finding the lowest-indexed unused addresses of the preferred + address types in the send and receive tracking wallets. For Bitcoin and + forks, types ‘B’, ‘S’ and ‘C’ (see ADDRESS TYPES below) are searched in that + order for unused addresses. Note that sending to an unused address may be + undesirable for Ethereum, where address (i.e. account) reuse is the norm. In + that case, the user should specify a destination address on the command line. If the wallet contains eligible unused addresses with multiple Seed IDs, the user will be presented with a list of the lowest-indexed addresses of @@ -91,21 +99,21 @@ When choosing a fee, bear in mind that the longer the transaction remains unconfirmed, the greater the risk that the vault address will expire, leading - to loss of funds. It’s therefore advisable to learn how to create, sign and + to loss of funds. It’s therefore recommended to learn how to create, sign and send replacement transactions with ‘mmgen-txbump’ before performing a swap with this script. When bumping a stuck swap transaction, the safest option is to create a replacement transaction with one output that returns funds back to the originating tracking wallet, thus aborting the swap, rather than one that merely increases the fee (see EXAMPLES below). - Before broadcasting the transaction, it’s advisable to double-check the vault - address on a block explorer such as thorchain.net or runescan.io. + Before broadcasting the transaction, it’s a good idea to double-check the + vault address on a block explorer such as thorchain.net or runescan.io. The MMGen Node Tools suite contains two useful tools to help with fine-tuning transaction fees, ‘mmnode-feeview’ and ‘mmnode-blocks-info’, in addition to ‘mmnode-ticker’, which can be used to calculate the current cross-rate between - the asset pair of a swap, as well as the total receive value in terms of the - send value. + the asset pair of a swap, as well as the total receive value in terms of send + value. TRADE LIMIT @@ -140,15 +148,34 @@ ‘M’ monero - Monero address + GAS LIMIT + + This option specifies the maximum gas allowance for an Ethereum transaction. + It’s generally of interest only for token transactions or swap transactions + from token assets. + + Parameter must be an integer or one of the special values ‘fallback’ (for a + locally computed sane default) or ‘auto’ (for gas estimate via an RPC call, + in the case of a token transaction, or locally computed default, in the case + of a standard transaction). The default is ‘auto’. + + FEE SPECIFICATION Transaction fees, both on the command line and at the interactive prompt, may - be specified as either absolute BTC amounts, using a plain decimal number, or - as satoshis per byte, using an integer followed by 's', for satoshi. + be specified as either absolute coin amounts, using a plain decimal number, or + as satoshis per byte, using an integer followed by ‘s’, for satoshi (for + Bitcoin, Litecoin and Bitcoin Cash), or gas price, using an integer followed + by ‘w’,‘K’,‘M’,‘G’,‘s’ or ‘f’, for wei, Kwei, Mwei, Gwei, szabo and finney, + respectively (for Ethereum) EXAMPLES: + Display available swap assets: + + $ mmgen-swaptxcreate -S + Create a BTC-to-LTC swap transaction, prompting the user for transaction inputs. The full value of the inputs, minus miner fees, will be swapped and sent to an unused address in the user’s LTC tracking wallet: @@ -200,5 +227,22 @@ $ mmgen-tool --coin=bch --bch-rpc-host=gemini twview minconf=0 - MMGEN v15.1.dev23 March 2025 MMGEN-SWAPTXCREATE(1) + Create a Tether-to-LTC swap transaction for autosigning, connecting to the + swap quote server via Tor: + + $ mmgen-swaptxcreate --autosign --proxy=localhost:9050 ETH.USDT 1000 LTC + + After signing, send the transaction via public Etherscan proxy over Tor: + + $ mmgen-txsend --autosign --quiet --tx-proxy=etherscan --proxy=localhost:9050 + + After sending, check the transaction status: + + $ mmgen-txsend --autosign --verbose --status + + Create a Tether-to-DAI swap transaction, with explicit destination account: + + $ mmgen-swaptxcreate ETH.USDT 1000 ETH.DAI E:01234ABC:3 + + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-SWAPTXCREATE(1) ``` diff --git a/doc/wiki/cmds/command-help-swaptxdo.md b/doc/wiki/cmds/command-help-swaptxdo.md index a1f533bd..e62071ee 100644 --- a/doc/wiki/cmds/command-help-swaptxdo.md +++ b/doc/wiki/cmds/command-help-swaptxdo.md @@ -16,9 +16,13 @@ -E, --fee-estimate-mode M Specify the network fee estimate mode. Choices: 'conservative','economical'. Default: 'conservative' -f, --fee f Transaction fee, as a decimal BTC amount or as - satoshis per byte (an integer followed by 's'). + satoshis per byte (an integer followed by ‘s’). See FEE SPECIFICATION below. If omitted, fee will be calculated using network fee estimation. + -g, --gas N Set the gas limit for Ethereum (see GAS LIMIT below) + -G, --router-gas N Set the gas limit for the Ethereum router contract + (integer). When unset, a hardcoded default will be + used. Applicable only for swaps from token assets. -H, --hidden-incog-input-params f,o Read hidden incognito data from file 'f' at offset 'o' (comma-separated) -i, --in-fmt f Input is from wallet format 'f' (see FMT CODES below) @@ -46,14 +50,19 @@ for password hashing (default: '3') -P, --passwd-file f Get MMGen wallet passphrase from file 'f' -q, --quiet Suppress warnings; overwrite files without prompting + -r, --stream-interval N Set block interval for streaming swap (default: 3) -s, --swap-proto Swap protocol to use (Default: thorchain, Choices: 'thorchain') + -T, --txhex-idx N Send only part ‘N’ of a multi-part transaction. + Indexing begins with one. -u, --subseeds n The number of subseed pairs to scan for (default: 100, maximum: 1000000). Only the default or first supplied wallet is scanned for subseeds. -v, --verbose Produce more verbose output -V, --vsize-adj f Adjust transaction's estimated vsize by factor 'f' - -x, --proxy P Fetch the swap quote via SOCKS5 proxy ‘P’ (host:port) + -x, --proxy P Fetch the swap quote via SOCKS5h proxy ‘P’ (host:port). + Use special value ‘env’ to honor *_PROXY environment + vars instead. -y, --yes Answer 'yes' to prompts, suppress non-essential output -z, --show-hash-presets Show information on available hash presets @@ -77,19 +86,19 @@ automount is likewise supported via the --autosign option. The command line must contain at minimum a send coin (COIN1) and receive coin - (COIN2) symbol. Currently supported coins are BTC, LTC and BCH. All other - arguments are optional. If AMT is specified, the specified value of send coin - will be swapped and the rest returned to a change address in the originating - tracking wallet. Otherwise, the entire value of the interactively selected - inputs will be swapped. + (COIN2) symbol. Currently supported coins are BTC, LTC, BCH and ETH. All + other arguments are optional. If AMT is specified, the specified value of + send coin will be swapped and the rest returned to a change address in the + originating tracking wallet. Otherwise, the entire value of the interactively + selected inputs will be swapped. - By default, the change and destination addresses are chosen automatically by - finding the lowest-indexed unused addresses of the preferred address types in - the send and receive tracking wallets. For Bitcoin and forks, types ‘B’, - ‘S’ and ‘C’ (see ADDRESS TYPES below) are searched in that order for unused - addresses. Note that sending to an unused address may be undesirable for - Ethereum, where address (i.e. account) reuse is the norm. In that case, the - user should specify a destination address on the command line. + By default, the change (if applicable) and destination addresses are chosen + automatically by finding the lowest-indexed unused addresses of the preferred + address types in the send and receive tracking wallets. For Bitcoin and + forks, types ‘B’, ‘S’ and ‘C’ (see ADDRESS TYPES below) are searched in that + order for unused addresses. Note that sending to an unused address may be + undesirable for Ethereum, where address (i.e. account) reuse is the norm. In + that case, the user should specify a destination address on the command line. If the wallet contains eligible unused addresses with multiple Seed IDs, the user will be presented with a list of the lowest-indexed addresses of @@ -112,21 +121,21 @@ When choosing a fee, bear in mind that the longer the transaction remains unconfirmed, the greater the risk that the vault address will expire, leading - to loss of funds. It’s therefore advisable to learn how to create, sign and + to loss of funds. It’s therefore recommended to learn how to create, sign and send replacement transactions with ‘mmgen-txbump’ before performing a swap with this script. When bumping a stuck swap transaction, the safest option is to create a replacement transaction with one output that returns funds back to the originating tracking wallet, thus aborting the swap, rather than one that merely increases the fee (see EXAMPLES below). - Before broadcasting the transaction, it’s advisable to double-check the vault - address on a block explorer such as thorchain.net or runescan.io. + Before broadcasting the transaction, it’s a good idea to double-check the + vault address on a block explorer such as thorchain.net or runescan.io. The MMGen Node Tools suite contains two useful tools to help with fine-tuning transaction fees, ‘mmnode-feeview’ and ‘mmnode-blocks-info’, in addition to ‘mmnode-ticker’, which can be used to calculate the current cross-rate between - the asset pair of a swap, as well as the total receive value in terms of the - send value. + the asset pair of a swap, as well as the total receive value in terms of send + value. TRADE LIMIT @@ -161,18 +170,30 @@ ‘M’ monero - Monero address + GAS LIMIT + + This option specifies the maximum gas allowance for an Ethereum transaction. + It’s generally of interest only for token transactions or swap transactions + from token assets. + + Parameter must be an integer or one of the special values ‘fallback’ (for a + locally computed sane default) or ‘auto’ (for gas estimate via an RPC call, + in the case of a token transaction, or locally computed default, in the case + of a standard transaction). The default is ‘auto’. + + FEE SPECIFICATION Transaction fees, both on the command line and at the interactive prompt, may - be specified as either absolute BTC amounts, using a plain decimal number, or - as satoshis per byte, using an integer followed by 's', for satoshi. + be specified as either absolute coin amounts, using a plain decimal number, or + as satoshis per byte, using an integer followed by ‘s’, for satoshi. SIGNING NOTES Transactions may contain both MMGen or non-MMGen input addresses. - To sign non-MMGen inputs, a bitcoind wallet dump or flat key list is used + To sign non-MMGen inputs, a coin daemon wallet dump or flat key list is used as the key source (--keys-from-file option). To sign MMGen inputs, key data is generated from a seed as with the @@ -213,6 +234,10 @@ EXAMPLES: + Display available swap assets: + + $ mmgen-swaptxdo -S + Create a BTC-to-LTC swap transaction, prompting the user for transaction inputs. The full value of the inputs, minus miner fees, will be swapped and sent to an unused address in the user’s LTC tracking wallet: @@ -264,5 +289,22 @@ $ mmgen-tool --coin=bch --bch-rpc-host=gemini twview minconf=0 - MMGEN v15.1.dev23 March 2025 MMGEN-SWAPTXDO(1) + Create a Tether-to-LTC swap transaction for autosigning, connecting to the + swap quote server via Tor: + + $ mmgen-swaptxdo --autosign --proxy=localhost:9050 ETH.USDT 1000 LTC + + After signing, send the transaction via public Etherscan proxy over Tor: + + $ mmgen-txsend --autosign --quiet --tx-proxy=etherscan --proxy=localhost:9050 + + After sending, check the transaction status: + + $ mmgen-txsend --autosign --verbose --status + + Create a Tether-to-DAI swap transaction, with explicit destination account: + + $ mmgen-swaptxdo ETH.USDT 1000 ETH.DAI E:01234ABC:3 + + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-SWAPTXDO(1) ``` diff --git a/doc/wiki/cmds/command-help-txbump.md b/doc/wiki/cmds/command-help-txbump.md index ea52810b..6f0a319c 100644 --- a/doc/wiki/cmds/command-help-txbump.md +++ b/doc/wiki/cmds/command-help-txbump.md @@ -19,7 +19,7 @@ -d, --outdir d Specify an alternate directory 'd' for output -e, --echo-passphrase Print passphrase to screen when typing it -f, --fee f Transaction fee, as a decimal BTC amount or as - satoshis per byte (an integer followed by 's'). + satoshis per byte (an integer followed by ‘s’). See FEE SPECIFICATION below. -H, --hidden-incog-input-params f,o Read hidden incognito data from file 'f' at offset 'o' (comma-separated) @@ -44,6 +44,8 @@ -q, --quiet Suppress warnings; overwrite files without prompting -s, --send Sign and send the transaction (the default if seed data is provided) + -T, --txhex-idx N Send only part ‘N’ of a multi-part transaction. + Indexing begins with one. -v, --verbose Produce more verbose output -W, --allow-non-wallet-swap Allow signing of swap transactions that send funds to non-wallet addresses @@ -72,13 +74,13 @@ FEE SPECIFICATION Transaction fees, both on the command line and at the interactive prompt, may - be specified as either absolute BTC amounts, using a plain decimal number, or - as satoshis per byte, using an integer followed by 's', for satoshi. + be specified as either absolute coin amounts, using a plain decimal number, or + as satoshis per byte, using an integer followed by ‘s’, for satoshi. Transactions may contain both MMGen or non-MMGen input addresses. - To sign non-MMGen inputs, a bitcoind wallet dump or flat key list is used + To sign non-MMGen inputs, a coin daemon wallet dump or flat key list is used as the key source (--keys-from-file option). To sign MMGen inputs, key data is generated from a seed as with the @@ -116,5 +118,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN-WALLET 15.1.dev25 March 2025 MMGEN-TXBUMP(1) + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-TXBUMP(1) ``` diff --git a/doc/wiki/cmds/command-help-txcreate.md b/doc/wiki/cmds/command-help-txcreate.md index 21e0794a..02f35ac8 100644 --- a/doc/wiki/cmds/command-help-txcreate.md +++ b/doc/wiki/cmds/command-help-txcreate.md @@ -16,7 +16,7 @@ -E, --fee-estimate-mode M Specify the network fee estimate mode. Choices: 'conservative','economical'. Default: 'conservative' -f, --fee f Transaction fee, as a decimal BTC amount or as - satoshis per byte (an integer followed by 's'). + satoshis per byte (an integer followed by ‘s’). See FEE SPECIFICATION below. If omitted, fee will be calculated using network fee estimation. -i, --info Display unspent outputs and exit @@ -89,8 +89,8 @@ FEE SPECIFICATION Transaction fees, both on the command line and at the interactive prompt, may - be specified as either absolute BTC amounts, using a plain decimal number, or - as satoshis per byte, using an integer followed by 's', for satoshi. + be specified as either absolute coin amounts, using a plain decimal number, or + as satoshis per byte, using an integer followed by ‘s’, for satoshi. EXAMPLES: @@ -123,5 +123,5 @@ $ mmgen-txcreate B - MMGEN v15.1.dev18 March 2025 MMGEN-TXCREATE(1) + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-TXCREATE(1) ``` diff --git a/doc/wiki/cmds/command-help-txdo.md b/doc/wiki/cmds/command-help-txdo.md index 981d10af..d727b02f 100644 --- a/doc/wiki/cmds/command-help-txdo.md +++ b/doc/wiki/cmds/command-help-txdo.md @@ -16,7 +16,7 @@ -E, --fee-estimate-mode M Specify the network fee estimate mode. Choices: 'conservative','economical'. Default: 'conservative' -f, --fee f Transaction fee, as a decimal BTC amount or as - satoshis per byte (an integer followed by 's'). + satoshis per byte (an integer followed by ‘s’). See FEE SPECIFICATION below. If omitted, fee will be calculated using network fee estimation. -H, --hidden-incog-input-params f,o Read hidden incognito data from file @@ -47,6 +47,8 @@ -q, --quiet Suppress warnings; overwrite files without prompting -R, --no-rbf Make transaction non-replaceable (non-replace-by-fee according to BIP 125) + -T, --txhex-idx N Send only part ‘N’ of a multi-part transaction. + Indexing begins with one. -u, --subseeds n The number of subseed pairs to scan for (default: 100, maximum: 1000000). Only the default or first supplied wallet is scanned for subseeds. @@ -110,15 +112,15 @@ FEE SPECIFICATION Transaction fees, both on the command line and at the interactive prompt, may - be specified as either absolute BTC amounts, using a plain decimal number, or - as satoshis per byte, using an integer followed by 's', for satoshi. + be specified as either absolute coin amounts, using a plain decimal number, or + as satoshis per byte, using an integer followed by ‘s’, for satoshi. SIGNING NOTES Transactions may contain both MMGen or non-MMGen input addresses. - To sign non-MMGen inputs, a bitcoind wallet dump or flat key list is used + To sign non-MMGen inputs, a coin daemon wallet dump or flat key list is used as the key source (--keys-from-file option). To sign MMGen inputs, key data is generated from a seed as with the @@ -187,5 +189,5 @@ $ mmgen-txdo B - MMGEN v15.1.dev18 March 2025 MMGEN-TXDO(1) + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-TXDO(1) ``` diff --git a/doc/wiki/cmds/command-help-txsend.md b/doc/wiki/cmds/command-help-txsend.md index 3504cf70..4da9fafd 100644 --- a/doc/wiki/cmds/command-help-txsend.md +++ b/doc/wiki/cmds/command-help-txsend.md @@ -19,15 +19,20 @@ action has been successfully sent out-of-band. -n, --tx-proxy P Send transaction via public TX proxy ‘P’ (supported proxies: ‘etherscan’). This is done via a publicly accessible web - page, so no API key or registration is required + page, so no API key or registration is required. -q, --quiet Suppress warnings; overwrite files without prompting -r, --receipt Print the receipt of the sent transaction (Ethereum only) -s, --status Get status of a sent transaction (or current transaction, whether sent or unsent, when used with --autosign) -t, --test Test whether the transaction can be sent without sending it + -T, --txhex-idx N Send only part ‘N’ of a multi-part transaction. Indexing + begins with one. -v, --verbose Be more verbose - -x, --proxy P Connect to TX proxy via SOCKS5 proxy ‘P’ (host:port) + -w, --wait Wait for transaction confirmation (Ethereum only) + -x, --proxy P Connect to TX proxy via SOCKS5h proxy ‘P’ (host:port). + Use special value ‘env’ to honor *_PROXY environment vars + instead. -y, --yes Answer 'yes' to prompts, suppress non-essential output - MMGEN-WALLET 15.1.dev25 March 2025 MMGEN-TXSEND(1) + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-TXSEND(1) ``` diff --git a/doc/wiki/cmds/command-help-txsign.md b/doc/wiki/cmds/command-help-txsign.md index 9ef3da7f..98c38c12 100644 --- a/doc/wiki/cmds/command-help-txsign.md +++ b/doc/wiki/cmds/command-help-txsign.md @@ -44,7 +44,7 @@ Transactions may contain both MMGen or non-MMGen input addresses. - To sign non-MMGen inputs, a bitcoind wallet dump or flat key list is used + To sign non-MMGen inputs, a coin daemon wallet dump or flat key list is used as the key source (--keys-from-file option). To sign MMGen inputs, key data is generated from a seed as with the @@ -82,5 +82,5 @@ MMGenWallet .mmdat wallet,w PlainHexSeedFile .hex hex,rawhex,plainhex - MMGEN v15.1.dev18 March 2025 MMGEN-TXSIGN(1) + MMGEN-WALLET 15.1.dev37 May 2025 MMGEN-TXSIGN(1) ``` diff --git a/mmgen/main_txbump.py b/mmgen/main_txbump.py index 179f6c5d..85377cc6 100755 --- a/mmgen/main_txbump.py +++ b/mmgen/main_txbump.py @@ -125,7 +125,7 @@ column below: pnm = gc.proj_name, pnl = gc.proj_name.lower(), fu = help_notes('rel_fee_desc'), - fl = help_notes('fee_spec_letters'), + fl = help_notes('fee_spec_letters', use_quotes=True), kgs = help_notes('keygen_backends'), coin_id = help_notes('coin_id'), dsl = help_notes('dfl_seed_len'), diff --git a/mmgen/main_txcreate.py b/mmgen/main_txcreate.py index 8cfd7b7c..a9a656ae 100755 --- a/mmgen/main_txcreate.py +++ b/mmgen/main_txcreate.py @@ -97,7 +97,7 @@ opts_data = { cu = proto.coin, a_info = help_notes('account_info_desc'), fu = help_notes('rel_fee_desc'), - fl = help_notes('fee_spec_letters'), + fl = help_notes('fee_spec_letters', use_quotes=True), si = help_notes('stream_interval'), fe_all = fmt_list(cfg._autoset_opts['fee_estimate_mode'].choices, fmt='no_spc'), fe_dfl = cfg._autoset_opts['fee_estimate_mode'].choices[0], diff --git a/mmgen/main_txdo.py b/mmgen/main_txdo.py index e91b4354..fda4ac51 100755 --- a/mmgen/main_txdo.py +++ b/mmgen/main_txdo.py @@ -54,7 +54,7 @@ opts_data = { b- -E, --fee-estimate-mode=M Specify the network fee estimate mode. Choices: + {fe_all}. Default: {fe_dfl!r} -- -f, --fee= f Transaction fee, as a decimal {cu} amount or as - + {fu} (an integer followed by {fl!r}). + + {fu} (an integer followed by {fl}). + See FEE SPECIFICATION below. If omitted, fee will be + calculated using network fee estimation. et -g, --gas=N Set the gas limit (see GAS LIMIT below) @@ -143,7 +143,7 @@ column below: kgs = help_notes('keygen_backends'), coin_id = help_notes('coin_id'), fu = help_notes('rel_fee_desc'), - fl = help_notes('fee_spec_letters'), + fl = help_notes('fee_spec_letters', use_quotes=True), dsl = help_notes('dfl_seed_len'), ss = help_notes('dfl_subseeds'), si = help_notes('stream_interval'),