diff --git a/.github/workflows/ISSUE_TEMPLATE/bug_report.md b/.github/workflows/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 000000000..6271a8410 --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,22 @@ +--- +name: ๐Ÿ› Bug Report +about: Report a problem or unexpected behavior +title: "๐Ÿ› [BUG] " +labels: bug +assignees: '' +--- + +### What happened? + +### Steps to reproduce + +### Expected behavior + +### Screenshots or logs + +### Environment +- Wallet Device: +- App Version: +- Host Platform: + +### Additional context diff --git a/.github/workflows/ISSUE_TEMPLATE/build_ci_issue.md b/.github/workflows/ISSUE_TEMPLATE/build_ci_issue.md new file mode 100644 index 000000000..9aa7475bf --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/build_ci_issue.md @@ -0,0 +1,24 @@ +--- +name: ๐Ÿ“ฆ Build or CI/CD Issue +about: Report a problem with build system, CI/CD pipeline, or deployment +title: "๐Ÿ“ฆ [CI/BUILD] " +labels: ci, build +assignees: '' +--- + +### Describe the issue +What broke? What did you expect instead? + +### Affected platform(s) +- [ ] Local build +- [ ] GitHub Actions +- [ ] Docker +- [ ] Other (specify below) + +### Logs or errors +Paste relevant logs or error output here. + +### Steps to reproduce (if applicable) + +### Additional context +Any recent changes that may be related? diff --git a/.github/workflows/ISSUE_TEMPLATE/documentation.md b/.github/workflows/ISSUE_TEMPLATE/documentation.md new file mode 100644 index 000000000..991e1fdfd --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/documentation.md @@ -0,0 +1,17 @@ +--- +name: ๐Ÿ“ Documentation Issue +about: Report a problem or improvement suggestion related to the documentation +title: "๐Ÿ“ [DOCS] " +labels: documentation +assignees: '' +--- + +### What is missing, unclear, or incorrect? + +### Location in docs +Link to file or section (or describe it). + +### Suggested fix or improvement + +### Additional context +Screenshots, examples, or other relevant info. diff --git a/.github/workflows/ISSUE_TEMPLATE/feature_request.md b/.github/workflows/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 000000000..b74976bbd --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,15 @@ +--- +name: ๐ŸŒŸ Feature Request +about: Suggest a new idea or improvement +title: "๐ŸŒŸ [FEATURE] " +labels: enhancement +assignees: '' +--- + +### What is your idea? + +### Why is it useful or important? + +### Optional: Suggested solution or example + +### Additional context diff --git a/.github/workflows/ISSUE_TEMPLATE/integration_compatibility.md b/.github/workflows/ISSUE_TEMPLATE/integration_compatibility.md new file mode 100644 index 000000000..bdd379e01 --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/integration_compatibility.md @@ -0,0 +1,23 @@ +--- +name: ๐Ÿงฉ Integration / Compatibility Issue +about: Report problems or requests related to external systems, platforms, or libraries +title: "๐Ÿงฉ [INTEGRATION] " +labels: compatibility +assignees: '' +--- + +### Describe the issue +What isn't working or what needs to be integrated? + +### Environment +- Platform or dependency: +- Version(s): +- Operating System / Hardware: + +### Expected vs Actual behavior + +### Reproduction or reference example +(Optional) Minimal reproducible example or link. + +### Additional context +Any related issues or compatibility requirements? diff --git a/.github/workflows/ISSUE_TEMPLATE/question.md b/.github/workflows/ISSUE_TEMPLATE/question.md new file mode 100644 index 000000000..3a6f56993 --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/question.md @@ -0,0 +1,15 @@ +--- +name: โ“ Question +about: Ask a general or technical question +title: "โ“ [QUESTION] " +labels: question +assignees: '' +--- + +### Your question + +Please describe your question clearly. + +### What have you tried? + +Any previous research or context? diff --git a/.github/workflows/ISSUE_TEMPLATE/test_coverage.md b/.github/workflows/ISSUE_TEMPLATE/test_coverage.md new file mode 100644 index 000000000..5f10a7b25 --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/test_coverage.md @@ -0,0 +1,19 @@ +--- +name: ๐Ÿงช Test Coverage Request +about: Report missing or insufficient test coverage +title: "๐Ÿงช [TEST] " +labels: tests +assignees: '' +--- + +### Area lacking tests +Describe the module/function/class that needs coverage. + +### Why this is important +Explain the impact or risk of not having these tests. + +### Suggested test approach +(Optional) Brief idea on how to test it. + +### Additional context +Any existing issues, crashes, or concerns related to this area. diff --git a/.github/workflows/PULL_REQUEST_TEMPLATE.md b/.github/workflows/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 000000000..b76a91090 --- /dev/null +++ b/.github/workflows/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,24 @@ +## Summary + +Briefly explain the purpose of this PR. + +## Related Issues + +- Closes # +- Related to # + +## Changes + +- Bullet point of key change 1 +- Bullet point of key change 2 + +## Testing + +Explain how this was tested or how to test it. + +## Checklist + +- [ ] Code builds without errors +- [ ] Tests added or updated +- [ ] Documentation updated (if needed) +- [ ] Code reviewed for security and edge cases diff --git a/.github/workflows/build_and_functional_tests.yml b/.github/workflows/build_and_functional_tests.yml index a1192bedb..69976cd09 100644 --- a/.github/workflows/build_and_functional_tests.yml +++ b/.github/workflows/build_and_functional_tests.yml @@ -34,4 +34,3 @@ jobs: with: download_app_binaries_artifact: "compiled_app_binaries" test_dir: "tests_liquid" - diff --git a/.github/workflows/ci-workflow.yml b/.github/workflows/ci-workflow.yml index 7c6174f69..f9b73c349 100644 --- a/.github/workflows/ci-workflow.yml +++ b/.github/workflows/ci-workflow.yml @@ -43,6 +43,8 @@ jobs: make DEBUG=0 COIN=liquid BOLOS_SDK=${{ matrix.SDK }} && mv bin/ liquid-bin/ make clean make DEBUG=0 COIN=liquid_regtest BOLOS_SDK=${{ matrix.SDK }} && mv bin/ liquid-regtest-bin/ + make clean + make DEBUG=0 COIN=liquid_testnet BOLOS_SDK=${{ matrix.SDK }} && mv bin/ liquid-testnet-bin/ - name: Upload Liquid app binary uses: actions/upload-artifact@v4 with: @@ -55,6 +57,12 @@ jobs: name: liquid-regtest-app-${{ matrix.model }} path: liquid-regtest-bin + - name: Upload Liquid Testnet app binary + uses: actions/upload-artifact@v4 + with: + name: liquid-testnet-app-${{ matrix.model }} + path: liquid-testnet-bin + job_unit_test: name: Unit test needs: job_build @@ -135,6 +143,39 @@ jobs: pip install --prefer-binary -r requirements.txt PYTHONPATH=$PYTHONPATH:/speculos pytest --tb=short -v --device=${{matrix.model}} --speculos_api_port 5000 + job_test_testnet: + name: Tests on testnet + strategy: + matrix: + include: + - model: nanos + - model: nanox + - model: nanosp + + needs: job_build + runs-on: ubuntu-latest + + steps: + - name: Clone + uses: actions/checkout@v4 + + - name: Download Liquid app binary + uses: actions/download-artifact@v4 + with: + name: liquid-testnet-app-${{matrix.model}} + path: build/${{ matrix.model == 'nanosp' && 'nanos2' || matrix.model }}/bin + + - name: Install tests dependencies + run: | + sudo apt-get update && sudo apt-get install -y qemu-user-static tesseract-ocr libtesseract-dev + pip install -U pip setuptools + + - name: Run tests + run: | + cd tests_liquid_testnet + pip install --prefer-binary -r requirements.txt + PYTHONPATH=$PYTHONPATH:/speculos pytest --tb=short -v --device=${{matrix.model}} --speculos_api_port 5000 + job_test_python_lib_legacyapp: if: false name: Tests with the Python library and legacy Bitcoin app diff --git a/.github/workflows/guidelines-enforcer.yml b/.github/workflows/guidelines-enforcer.yml index 143e41554..f14e3f00b 100644 --- a/.github/workflows/guidelines-enforcer.yml +++ b/.github/workflows/guidelines-enforcer.yml @@ -16,8 +16,8 @@ on: - develop # Temporarily disabled until PR #285 is merged to `github.com/LedgerHQ/ledger-app-database` # - liquid_develop - # - liquid_release - pull_request: + # Temporarily disabled until PR #285 is merged to `github.com/LedgerHQ/ledger-app-database` + # pull_request: jobs: guidelines_enforcer: diff --git a/.gitignore b/.gitignore index 1e9bb24ee..3d636e7ab 100644 --- a/.gitignore +++ b/.gitignore @@ -17,6 +17,7 @@ tests/.test_bitcoin tests/snapshots-tmp tests_liquid/snapshots-tmp tests_liquid_main/snapshots-tmp +tests_liquid_testnet/snapshots-tmp # Fuzzing fuzzing/build/ diff --git a/Makefile b/Makefile index a84c63534..067549287 100644 --- a/Makefile +++ b/Makefile @@ -78,7 +78,7 @@ endif # Setting to allow building variant applications VARIANT_PARAM = COIN -VARIANT_VALUES = liquid_regtest liquid +VARIANT_VALUES = liquid_regtest liquid_testnet liquid ######################################## # Application custom permissions # @@ -97,14 +97,30 @@ DEFINES += COIN_P2PKH_VERSION=111 DEFINES += COIN_P2SH_VERSION=75 DEFINES += COIN_PREFIX_CONFIDENTIAL=4 DEFINES += HAVE_LIQUID -DEFINES += HAVE_LIQUID_TEST -DEFINES += COIN_BLINDED_VERSION=4 -DEFINES += COIN_COINID_SHORT=\"L-BTC\" +DEFINES += LIQUID_NET_REGTEST +DEFINES += COIN_COINID_SHORT=\"tL-BTC\" DEFINES += COIN_NATIVE_SEGWIT_PREFIX=\"ert\" DEFINES += COIN_NATIVE_SEGWIT_PREFIX_CONFIDENTIAL=\"el\" APPNAME = "Liquid Regtest" +else ifeq ($(COIN),liquid_testnet) + +# Liquid testnet +DEFINES += BIP32_PUBKEY_VERSION=0x043587CF +DEFINES += BIP32_PRIVKEY_VERSION=0x04358394 +DEFINES += BIP44_COIN_TYPE=1 +DEFINES += COIN_P2PKH_VERSION=36 +DEFINES += COIN_P2SH_VERSION=19 +DEFINES += COIN_PREFIX_CONFIDENTIAL=23 +DEFINES += HAVE_LIQUID +DEFINES += LIQUID_NET_TESTNET +DEFINES += COIN_COINID_SHORT=\"tL-BTC\" +DEFINES += COIN_NATIVE_SEGWIT_PREFIX=\"tex\" +DEFINES += COIN_NATIVE_SEGWIT_PREFIX_CONFIDENTIAL=\"tlq\" + +APPNAME = "Liquid Testnet" + else ifeq ($(COIN),liquid) # Liquid @@ -115,7 +131,7 @@ DEFINES += COIN_P2PKH_VERSION=57 DEFINES += COIN_P2SH_VERSION=39 DEFINES += COIN_PREFIX_CONFIDENTIAL=12 DEFINES += HAVE_LIQUID -DEFINES += COIN_BLINDED_VERSION=12 +DEFINES += LIQUID_NET_MAINNET DEFINES += COIN_COINID_SHORT=\"L-BTC\" DEFINES += COIN_NATIVE_SEGWIT_PREFIX=\"ex\" DEFINES += COIN_NATIVE_SEGWIT_PREFIX_CONFIDENTIAL=\"lq\" @@ -124,7 +140,7 @@ APPNAME = "Liquid" else ifeq ($(filter clean,$(MAKECMDGOALS)),) -$(error Unsupported COIN - use liquid_regtest or liquid) +$(error Unsupported COIN - use liquid_regtest, liquid_testnet, liquid) endif endif diff --git a/src/handler/get_wallet_address.c b/src/handler/get_wallet_address.c index 501aed3a9..2643f0051 100644 --- a/src/handler/get_wallet_address.c +++ b/src/handler/get_wallet_address.c @@ -48,57 +48,6 @@ #include "liquid.h" #endif -#ifdef HAVE_LIQUID -/// State of the callback function obtaining `scriptPubKey` of the processed descriptor. -typedef struct { - /// Dispatcher context. - dispatcher_context_t *dc; - /// Pointer to the root node of the policy - const policy_node_t *policy; - /// Pointer to wallet header structure. - const policy_map_wallet_header_t *wallet_header; -} get_script_callback_state_t; - -/** - * Callback function obtaining `scriptPubKey` of the processed descriptor. - * - * @param[in,out] state - * Callback state, stores necessary properties of the processed descriptor. - * @param[in] descriptor_idx - * Descriptor index in the in the multipath scheme. - * @param[in] bip44_address_index - * Address index element of the derivation path, defined according to BIP 44. - * @param[out] out_buffer - * Buffer receiving `scriptPubKey`. - * - * @return true if successful, false if error. - */ -static bool get_script_callback(void *state_in, - uint32_t descriptor_idx, - uint32_t bip44_address_index, - buffer_t *out_buffer) { - if (!state_in || descriptor_idx > 1 || !out_buffer || - buffer_remaining(out_buffer) < MAX_SCRIPT_LEN) { - return false; - } - - get_script_callback_state_t *state = (get_script_callback_state_t *) state_in; - - int script_len = get_wallet_script( - state->dc, - state->policy, - &(wallet_derivation_info_t){.wallet_version = state->wallet_header->version, - .keys_merkle_root = state->wallet_header->keys_info_merkle_root, - .n_keys = state->wallet_header->n_keys, - .change = !!descriptor_idx, - .address_index = bip44_address_index}, - buffer_get_cur(out_buffer)); - - return script_len > 0 && buffer_seek_cur(out_buffer, script_len); -} - -#endif - void handler_get_wallet_address(dispatcher_context_t *dc, uint8_t protocol_version) { (void) protocol_version; @@ -272,13 +221,16 @@ void handler_get_wallet_address(dispatcher_context_t *dc, uint8_t protocol_versi if (liquid_policy_is_blinded(&wallet_policy_map.parsed)) { // Derive blinding public key from script uint8_t blinding_pubkey[33]; - get_script_callback_state_t callback_state = {.dc = dc, - .policy = &wallet_policy_map.parsed, - .wallet_header = &wallet_header}; + get_wallet_script_callback_state_t callback_state = { + .dc = dc, + .policy = &wallet_policy_map.parsed, + .wallet_version = wallet_header.version, + .keys_merkle_root = wallet_header.keys_info_merkle_root, + .n_keys = wallet_header.n_keys}; if (!liquid_get_blinding_public_key(&wallet_policy_map.parsed, script, script_len, - get_script_callback, + get_wallet_script_callback, &callback_state, blinding_pubkey)) { explicit_bzero(blinding_pubkey, sizeof(blinding_pubkey)); diff --git a/src/handler/lib/policy.c b/src/handler/lib/policy.c index 66773d6c2..5595ab279 100644 --- a/src/handler/lib/policy.c +++ b/src/handler/lib/policy.c @@ -1165,6 +1165,32 @@ int get_wallet_script(dispatcher_context_t *dispatcher_context, return -1; } +#ifdef HAVE_LIQUID +bool get_wallet_script_callback(void *state, + uint32_t descriptor_idx, + uint32_t bip44_address_index, + buffer_t *out_buffer) { + if (!state || descriptor_idx > 1 || !out_buffer || + buffer_remaining(out_buffer) < MAX_SCRIPT_LEN) { + return false; + } + + get_wallet_script_callback_state_t *st = (get_wallet_script_callback_state_t *) (state); + + int script_len = + get_wallet_script(st->dc, + st->policy, + &(wallet_derivation_info_t){.wallet_version = st->wallet_version, + .keys_merkle_root = st->keys_merkle_root, + .n_keys = st->n_keys, + .change = !!descriptor_idx, + .address_index = bip44_address_index}, + buffer_get_cur(out_buffer)); + + return script_len > 0 && buffer_seek_cur(out_buffer, script_len); +} +#endif // HAVE_LIQUID + __attribute__((noinline)) int get_wallet_internal_script_hash( dispatcher_context_t *dispatcher_context, const policy_node_t *policy, diff --git a/src/handler/lib/policy.h b/src/handler/lib/policy.h index 7a1ddf929..41fc3677d 100644 --- a/src/handler/lib/policy.h +++ b/src/handler/lib/policy.h @@ -50,6 +50,22 @@ typedef struct { bool change; // whether a change address or a receive address is derived } wallet_derivation_info_t; +#ifdef HAVE_LIQUID +/// State of the callback function obtaining `scriptPubKey` of the processed descriptor. +typedef struct { + /// Dispatcher context. + dispatcher_context_t *dc; + /// Pointer to the root node of the policy + const policy_node_t *policy; + /// The wallet policy version, either WALLET_POLICY_VERSION_V1 or WALLET_POLICY_VERSION_V2 + int wallet_version; + /// Pointer to the Merkle root of the tree of key informations in the policy + const uint8_t *keys_merkle_root; + /// The number of key information placeholders in the policy + uint32_t n_keys; +} get_wallet_script_callback_state_t; +#endif // HAVE_LIQUID + /** * Computes the hash of a taptree, to be used as tweak for the internal key per BIP-0341; * The returned hash is the second value in the tuple returned by taproot_tree_helper in @@ -93,6 +109,27 @@ __attribute__((warn_unused_result)) int get_wallet_script(dispatcher_context_t * const wallet_derivation_info_t *wdi, uint8_t out[static MAX_SCRIPT_LEN]); +#ifdef HAVE_LIQUID +/** + * A general purpose callback function obtaining `scriptPubKey` of the processed descriptor. + * + * @param[in,out] state + * Callback state, an instance of `get_wallet_script_callback_state_t`. + * @param[in] descriptor_idx + * Descriptor index in the in the multipath scheme. + * @param[in] bip44_address_index + * Address index element of the derivation path, defined according to BIP 44. + * @param[out] out_buffer + * Buffer receiving `scriptPubKey`. + * + * @return true if successful, false if error. + */ +__attribute__((warn_unused_result)) bool get_wallet_script_callback(void *state, + uint32_t descriptor_idx, + uint32_t bip44_address_index, + buffer_t *out_buffer); +#endif // HAVE_LIQUID + /** * Computes the script corresponding to a wallet policy, for a certain change and address index. * diff --git a/src/handler/sign_psbt.c b/src/handler/sign_psbt.c index da0c710aa..3f1073062 100644 --- a/src/handler/sign_psbt.c +++ b/src/handler/sign_psbt.c @@ -105,7 +105,7 @@ typedef struct { uint8_t asset_commitment[LIQUID_COMMITMENT_LEN]; /// Asset tag uint8_t asset_tag[LIQUID_ASSET_TAG_LEN]; - /// Information about the asset: ticher and precision + /// Information about the asset: ticker and precision asset_info_t asset_info; /// If true the asset is defined in internal asset list uint8_t built_in_asset; @@ -1864,6 +1864,61 @@ static void output_keys_callback(dispatcher_context_t *dc, } } +#ifdef HAVE_LIQUID + +/** + * Computes the confidential or unconfidential address corresponding to the given output. + * + * The termination character is added. + * + * @param[in,out] dc + * Dispatcher state. + * @param[in] output + * The current output being processed. + * @param[out] address + * The destination buffer for the computed address. + * @param[in] address_len + * The length of the destination buffer. + * + * @return the length of the computed address on success; -1 if the script is invalid, if it does + * not have an associated address (e.g. OP_RETURN), or the resulting address is too long to fit in + * out. + */ +static int __attribute__((noinline)) get_liquid_script_address(dispatcher_context_t *dc, + const output_info_t *output, + char *address, + size_t address_len) { + if (output->in_out.key_presence & HAS_BLINDING_PUBKEY) { + // Get blinding public key from PSET + uint8_t blinding_pubkey[33]; + if (sizeof(blinding_pubkey) != + call_get_merkleized_map_value(dc, + &output->in_out.map, + PSBT_ELEMENTS_OUT_BLINDING_PUBKEY, + sizeof(PSBT_ELEMENTS_OUT_BLINDING_PUBKEY), + blinding_pubkey, + sizeof(blinding_pubkey))) { + PRINTF("Error fetching blinding pubkey\n"); + return -1; + } + int result = liquid_get_script_confidential_address(output->in_out.scriptPubKey, + output->in_out.scriptPubKey_len, + &G_liquid_network_config, + blinding_pubkey, + sizeof(blinding_pubkey), + address, + address_len); + + explicit_bzero(blinding_pubkey, sizeof(blinding_pubkey)); + return result; + } else { + return get_script_address(output->in_out.scriptPubKey, + output->in_out.scriptPubKey_len, + address, + address_len); + } +} +#endif static bool __attribute__((noinline)) display_output(dispatcher_context_t *dc, sign_psbt_state_t *st, int cur_output_index, @@ -1873,10 +1928,16 @@ static bool __attribute__((noinline)) display_output(dispatcher_context_t *dc, // show this output's address char output_address[MAX(MAX_ADDRESS_LENGTH_STR + 1, MAX_OPRETURN_OUTPUT_DESC_SIZE)]; + +#ifdef HAVE_LIQUID + int address_len = get_liquid_script_address(dc, output, output_address, sizeof(output_address)); +#else int address_len = get_script_address(output->in_out.scriptPubKey, output->in_out.scriptPubKey_len, output_address, sizeof(output_address)); +#endif + if (address_len < 0) { // script does not have an address; check if OP_RETURN #ifdef HAVE_LIQUID diff --git a/src/liquid/liquid_assets.c b/src/liquid/liquid_assets.c index 7ce6e0593..1ba4635ce 100644 --- a/src/liquid/liquid_assets.c +++ b/src/liquid/liquid_assets.c @@ -22,15 +22,18 @@ STATIC_NO_TEST const asset_definition_t liquid_assets[] = { {{0x0e,0x99,0xc1,0xa6,0xda,0x37,0x9d,0x1f,0x41,0x51,0xfb,0x9d,0xf9,0x04,0x49,0xd4, 0x0d,0x06,0x08,0xf6,0xcb,0x33,0xa5,0xbc,0xbf,0xc8,0xc2,0x65,0xf4,0x2b,0xab,0x0a}, {"LCAD", 8}}, + {{0x14,0x4c,0x65,0x43,0x44,0xaa,0x71,0x6d,0x6f,0x3a,0xbc,0xc1,0xca,0x90,0xe5,0x64, + 0x1e,0x4e,0x2a,0x7f,0x63,0x3b,0xc0,0x9f,0xe3,0xba,0xf6,0x45,0x85,0x81,0x9a,0x49}, + {"tL-BTC", 8}}, // Liquid testnet {{0x34,0x38,0xec,0xb4,0x9f,0xc4,0x5c,0x08,0xe6,0x87,0xde,0x47,0x49,0xed,0x62,0x8c, 0x51,0x1e,0x32,0x64,0x60,0xea,0x43,0x36,0x79,0x4e,0x1c,0xf0,0x27,0x41,0x32,0x9e}, {"JPYS", 0}}, {{0x5a,0xc9,0xf6,0x5c,0x0e,0xfc,0xc4,0x77,0x5e,0x0b,0xae,0xc4,0xec,0x03,0xab,0xdd, 0xe2,0x24,0x73,0xcd,0x3c,0xf3,0x3c,0x04,0x19,0xca,0x29,0x0e,0x07,0x51,0xb2,0x25}, - {"TL-BTC", 8}}, + {"tL-BTC", 8}}, // Liquid regtest {{0x6f,0x02,0x79,0xe9,0xed,0x04,0x1c,0x3d,0x71,0x0a,0x9f,0x57,0xd0,0xc0,0x29,0x28, 0x41,0x64,0x60,0xc4,0xb7,0x22,0xae,0x34,0x57,0xa1,0x1e,0xec,0x38,0x1c,0x52,0x6d}, - {"L-BTC", 8}}, + {"L-BTC", 8}}, // Liquid mainnet (liquidv1) {{0xb0,0x0b,0x0f,0xf0,0xb1,0x1e,0xbd,0x47,0xf7,0xc6,0xf5,0x76,0x14,0xc0,0x46,0xdb, 0xbd,0x20,0x4e,0x84,0xbf,0x01,0x17,0x8b,0xaf,0x2b,0xe3,0x71,0x3a,0x20,0x6e,0xb7}, {"BTSE", 8}}, @@ -57,16 +60,23 @@ STATIC_NO_TEST const asset_definition_t liquid_assets[] = { /// Asset tag of L-BTC or TL-BTC depending on build const uint8_t liquid_bitcoin_tag[LIQUID_ASSET_TAG_LEN] = { -#ifdef HAVE_LIQUID_TEST - /// Asset tag of TL-BTC +#if defined(LIQUID_NET_REGTEST) + /// Asset tag of regtest TL-BTC 0x5a, 0xc9, 0xf6, 0x5c, 0x0e, 0xfc, 0xc4, 0x77, 0x5e, 0x0b, 0xae, 0xc4, 0xec, 0x03, 0xab, 0xdd, 0xe2, 0x24, 0x73, 0xcd, 0x3c, 0xf3, 0x3c, 0x04, 0x19, 0xca, 0x29, 0x0e, 0x07, 0x51, 0xb2, 0x25 -#else +#elif defined(LIQUID_NET_TESTNET) + /// Asset tag of testnet TL-BTC + 0x14, 0x4c, 0x65, 0x43, 0x44, 0xaa, 0x71, 0x6d, 0x6f, 0x3a, 0xbc, + 0xc1, 0xca, 0x90, 0xe5, 0x64, 0x1e, 0x4e, 0x2a, 0x7f, 0x63, 0x3b, + 0xc0, 0x9f, 0xe3, 0xba, 0xf6, 0x45, 0x85, 0x81, 0x9a, 0x49 +#elif defined(LIQUID_NET_MAINNET) /// Asset tag of L-BTC 0x6f, 0x02, 0x79, 0xe9, 0xed, 0x04, 0x1c, 0x3d, 0x71, 0x0a, 0x9f, 0x57, 0xd0, 0xc0, 0x29, 0x28, 0x41, 0x64, 0x60, 0xc4, 0xb7, 0x22, 0xae, 0x34, 0x57, 0xa1, 0x1e, 0xec, 0x38, 0x1c, 0x52, 0x6d +#else +#error Valid net must be selected for Liquid #endif }; diff --git a/src/main.c b/src/main.c index b97a3d5ba..0faf8fb20 100644 --- a/src/main.c +++ b/src/main.c @@ -206,8 +206,9 @@ void coin_main() { _Static_assert(sizeof(cx_sha256_t) <= 108, "cx_sha256_t too large"); _Static_assert(sizeof(policy_map_key_info_t) <= 156, "policy_map_key_info_t too large"); - // we assume in display.c that the ticker size is at most 5 characters (+ null) - _Static_assert(sizeof(COIN_COINID_SHORT) <= 6, "COIN_COINID_SHORT too large"); + // Ensure that the coin name is no longer than supported asset ticker length. + _Static_assert(sizeof(COIN_COINID_SHORT) <= (MAX_ASSET_TICKER_LENGTH + 1), + "COIN_COINID_SHORT too large"); #if defined(HAVE_PRINT_STACK_POINTER) && defined(HAVE_BOLOS_APP_STACK_CANARY) PRINTF("STACK CANARY ADDRESS: %08x\n", &app_stack_canary); diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00006.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00006.png index 41e46acfc..3eea75bd1 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00006.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00007.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00007.png index 08aec2035..a88df99b1 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00007.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00008.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00008.png index ea5c7753b..e1a950b1a 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00008.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00009.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00009.png index 12b06a78e..cd5bae4ca 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00009.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00010.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00010.png new file mode 100644 index 000000000..e36986880 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00011.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00011.png new file mode 100644 index 000000000..e48bbc2c7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00012.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00012.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_2_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_3_0/00000.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_3_0/00000.png index 06a78ea5d..dcd35a276 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_3_0/00000.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_0_3_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00006.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00006.png index 081d3beeb..6841082b0 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00006.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00007.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00007.png index 4871a3213..747ce6b02 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00007.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00008.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00008.png index 8b29f42d7..efd460575 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00008.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00009.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00009.png index 12b06a78e..0587372f0 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00009.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00010.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00010.png new file mode 100644 index 000000000..eb40f6e13 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00011.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00011.png new file mode 100644 index 000000000..c58cfab7a Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00012.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00012.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_2_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_3_0/00000.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_3_0/00000.png index 06a78ea5d..dcd35a276 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_3_0/00000.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_1_3_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00006.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00006.png index 83f712e2c..1759b5b10 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00006.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00007.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00007.png index 648856869..a7dbd7e69 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00007.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00008.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00008.png index 317b20674..ecfd520c5 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00008.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00009.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00009.png index 12b06a78e..a192b9d06 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00009.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00010.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00010.png new file mode 100644 index 000000000..896c6c2c7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00011.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00011.png new file mode 100644 index 000000000..2c9b17909 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00012.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00012.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_1_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_2_0/00000.png b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_2_0/00000.png index 06a78ea5d..dcd35a276 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_asset_metadata_display_no_ticker_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00006.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00006.png index 4bf43ae5c..017c3874b 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00006.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00007.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00007.png index 4b6f846a9..893d2f7b8 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00007.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00008.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00008.png index dc1ea6710..a2b0120da 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00008.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00009.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00009.png index 12b06a78e..d24ad5e59 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00009.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00010.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00010.png new file mode 100644 index 000000000..8bb502d74 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00011.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00011.png new file mode 100644 index 000000000..7d0ec43dd Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00012.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00012.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_1_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00007.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00007.png index 4bf43ae5c..017c3874b 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00007.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00008.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00008.png index 4b6f846a9..893d2f7b8 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00008.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00009.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00009.png index dc1ea6710..a2b0120da 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00009.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00010.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00010.png index 12b06a78e..d24ad5e59 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00010.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00011.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00011.png new file mode 100644 index 000000000..8bb502d74 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00012.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00012.png new file mode 100644 index 000000000..7d0ec43dd Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00013.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00013.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_2_0/00013.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_3_0/00001.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_3_0/00001.png index 91e76c17f..8b97b2aeb 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_0_3_0/00001.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_0_3_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00006.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00006.png index 01a831274..b1f7020cc 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00006.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00007.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00007.png index 51b818ab2..e4757fe41 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00007.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00008.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00008.png index 0a31a5e10..d0b34f52e 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00008.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00009.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00009.png index 12b06a78e..39833186d 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00009.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00010.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00010.png new file mode 100644 index 000000000..cb9f89e5e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00011.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00011.png new file mode 100644 index 000000000..d3f7f173f Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00012.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00012.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_1_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_2_0/00001.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_2_0/00001.png index 68a4f6b19..d4c5d3ac1 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_1_2_0/00001.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_1_2_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_asset_operations_0_2_2_0/00001.png b/tests_liquid/snapshots/nanos/test_asset_operations_0_2_2_0/00001.png index c4ce429ec..d179191bd 100644 Binary files a/tests_liquid/snapshots/nanos/test_asset_operations_0_2_2_0/00001.png and b/tests_liquid/snapshots/nanos/test_asset_operations_0_2_2_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00002.png index c8edc2320..449b06621 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00003.png index 344cc3550..24b4f44c3 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00004.png index e10123daf..a6a75aea3 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00005.png index 12b06a78e..e842a7e8f 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00006.png new file mode 100644 index 000000000..25a456c27 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00007.png new file mode 100644 index 000000000..4a9c357c9 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00002.png index c1b23f1f7..70d9611cf 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00003.png index 9ef8ad5f9..0f7fe990b 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00004.png index 418b112cf..31c599e58 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00005.png index 12b06a78e..2967e2630 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00006.png new file mode 100644 index 000000000..33263a931 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00007.png new file mode 100644 index 000000000..2f2129080 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_10_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00002.png index cf26e42a8..bb2e8c492 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00003.png index a3d900512..2193de94f 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00004.png index 44c5ef9a8..be1d520a9 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00005.png index 12b06a78e..3b2f2205d 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00006.png new file mode 100644 index 000000000..670a03292 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00007.png new file mode 100644 index 000000000..e39eff43c Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_1_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00002.png index c3ebaaaf1..445c66839 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00003.png index 77b2063fa..9c6545014 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00004.png index 0e6848ea9..719dea775 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00005.png index 12b06a78e..9ba07052a 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00006.png new file mode 100644 index 000000000..de29746b9 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00007.png new file mode 100644 index 000000000..4de33ce9d Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_2_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00002.png index d0366561a..6bcb3986a 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00003.png index b0329af05..c62bd9ba3 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00004.png index 5b957d1a7..5e34c7b87 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00005.png index 12b06a78e..ad81f2991 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00006.png new file mode 100644 index 000000000..8694adadc Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00007.png new file mode 100644 index 000000000..2b26e740f Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_3_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00002.png index d84ef9a13..52195c62d 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00003.png index 47fc4a7d6..decbc9924 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00004.png index c8967965b..0e484d471 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00005.png index 12b06a78e..71c20ee11 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00006.png new file mode 100644 index 000000000..db64fe034 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00007.png new file mode 100644 index 000000000..b72be78f7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_4_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00002.png index cc4ee612d..dd329acd2 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00003.png index 30add24e0..ce207930e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00004.png index e76b3dac6..17fbbe249 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00005.png index 12b06a78e..cc49d51c5 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00006.png new file mode 100644 index 000000000..446b04b29 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00007.png new file mode 100644 index 000000000..0d3bf3d6f Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_5_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00002.png index cdcd204b5..5e94dca48 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00003.png index 36c51efec..d0ac3dd82 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00004.png index 9761035b6..f666b12bf 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00005.png index 12b06a78e..423b5616f 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00006.png new file mode 100644 index 000000000..65a2358c0 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00007.png new file mode 100644 index 000000000..9fbf3cc5d Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_6_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00002.png index c26087168..5fc5d0e35 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00003.png index d2cb170a2..3a0e020dc 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00004.png index b0f9e1370..cccf82a37 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00005.png index 12b06a78e..ff27c5687 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00006.png new file mode 100644 index 000000000..4dc288c49 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00007.png new file mode 100644 index 000000000..77e58e55a Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_7_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00002.png index 992a86e7c..6d1eba6da 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00003.png index 775682a9c..a69c6d155 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00004.png index 212569332..080b1b3e7 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00005.png index 12b06a78e..bae97b2ea 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00006.png new file mode 100644 index 000000000..cbc177659 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00007.png new file mode 100644 index 000000000..414fe0ddd Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_8_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00001.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00001.png index af5ff2e44..28fe5e504 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00002.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00002.png index c1e7ecce2..9e74f1172 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00003.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00003.png index 0456d228e..0193d43f1 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00004.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00004.png index 78ee41e34..daa4bca86 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00005.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00005.png index 12b06a78e..a63d1462d 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00006.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00006.png new file mode 100644 index 000000000..c56c56d70 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00007.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00007.png new file mode 100644 index 000000000..689e4fd49 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00008.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_2_0/00000.png b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_2_0/00000.png index 4f0fe29c7..337e66c7e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighash_flags_0_9_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00001.png index 03dfde73e..2e97d7db3 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00002.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00002.png index ac4791d9e..b5720c673 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00003.png index 10f5958f7..860391e74 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00004.png index 009063e1d..676c1d78e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00005.png index 12b06a78e..b798f2a95 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00006.png index 9c7e7049c..e344bc24e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00007.png new file mode 100644 index 000000000..76f763ea0 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_11_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00001.png index 8c6818489..d06eb5096 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00002.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00002.png index 7a0fbdea8..5ff94008c 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00003.png index fb5f53bed..68b374778 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00004.png index 111c59a73..fcc3ab2a0 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00005.png index 12b06a78e..368ea32e3 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00006.png new file mode 100644 index 000000000..03dc901ef Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00007.png new file mode 100644 index 000000000..fbb5d0189 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_12_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00001.png index a17cd999e..b71160612 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00002.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00002.png index 9dd8223a4..7e8999ba0 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00003.png index ac07ef2c0..3008da9f5 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00004.png index 14216319a..3d8ef2c89 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00005.png index 12b06a78e..aed890d2e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00006.png new file mode 100644 index 000000000..8b0df73f7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00007.png new file mode 100644 index 000000000..8813b5826 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_13_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00001.png index 98e2ebfee..76952f224 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00002.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00002.png index b204f1f5b..aff9082f9 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00003.png index 49b85acb1..8f3f61047 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00004.png index 5252b4a48..8e0bf2e20 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00005.png index 12b06a78e..c89c3c0da 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00006.png new file mode 100644 index 000000000..734a43be8 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00007.png new file mode 100644 index 000000000..635ea3cef Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_14_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00001.png index aeb9af78f..ebd85102c 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00002.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00002.png index 44cd0ba4b..cf592bb3f 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00003.png index 07d160d61..2d76238b5 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00004.png index b01d492e9..2c57adde4 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00005.png index 12b06a78e..9f4d2ac25 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00006.png new file mode 100644 index 000000000..81ffdc1c6 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00007.png new file mode 100644 index 000000000..a052b0eb5 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_15_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00001.png index 0fb353d2a..7d6597dc2 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00002.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00002.png index b8e64ffb0..ccbf52b89 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00002.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00002.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00003.png index d1cfe6e3f..25c1d8f4d 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00004.png index a0f62aa47..438e94758 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00005.png index 12b06a78e..b458831d0 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00006.png new file mode 100644 index 000000000..f77f5b7d7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00007.png new file mode 100644 index 000000000..0b0b6fcb9 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00008.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_16_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00001.png index 9acc7af03..170a3c6de 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00003.png index 17a318f9b..1e6690bd7 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00004.png index e5973c7ec..558080461 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00005.png index f0d172eaf..c1a629258 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00006.png index 12b06a78e..72989d28e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00007.png new file mode 100644 index 000000000..4060e9bb7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00008.png new file mode 100644 index 000000000..b2086c3c0 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00009.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00009.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_17_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00001.png index 9acc7af03..170a3c6de 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00003.png index a71954872..01d3c6e5e 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00004.png index e54b2a697..09d0e950a 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00005.png index b3dbd503c..fd7db337d 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00006.png index 12b06a78e..bdf21f06f 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00007.png new file mode 100644 index 000000000..3525889ab Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00008.png new file mode 100644 index 000000000..35d77ddba Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00009.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00009.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_18_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00001.png index 9acc7af03..170a3c6de 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00003.png index ed408c19c..0bb5ac0bd 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00004.png index 706aa222d..a7323b050 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00005.png index 216c2fe48..2b633b960 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00006.png index 12b06a78e..694dc0d12 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00007.png new file mode 100644 index 000000000..b48e021a3 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00008.png new file mode 100644 index 000000000..318c2fb2d Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00009.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00009.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_19_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00001.png index 9acc7af03..170a3c6de 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00003.png index 8c52338f0..59f9d7898 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00004.png index f1959282f..96eccef6f 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00005.png index 22fbfb47c..0e55efc69 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00006.png index 12b06a78e..9fba75270 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00007.png new file mode 100644 index 000000000..f3abc99f7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00008.png new file mode 100644 index 000000000..e33a040c7 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00009.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00009.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_20_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00001.png index 9acc7af03..170a3c6de 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00003.png index ee05f12b3..60edf1db3 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00004.png index 8cff02554..2b1619a5b 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00005.png index f494c3828..c1427f49d 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00006.png index 12b06a78e..cf6db6eff 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00007.png new file mode 100644 index 000000000..830cdd3fe Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00008.png new file mode 100644 index 000000000..009ad6d0d Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00009.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00009.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_21_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00001.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00001.png index 9acc7af03..170a3c6de 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00001.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00001.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00003.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00003.png index a6d178967..413d2d6b1 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00003.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00003.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00004.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00004.png index 7dec345ff..ec80f1f26 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00004.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00004.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00005.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00005.png index 8e7fa37f0..3aeaeb732 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00005.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00005.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00006.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00006.png index 12b06a78e..568ae3178 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00006.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00007.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00007.png new file mode 100644 index 000000000..1d8c98c5a Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00008.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00008.png new file mode 100644 index 000000000..31bf8313f Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00009.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00009.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_22_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_23_0/00000.png b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_23_0/00000.png index 0139fc0b8..cd09259c7 100644 Binary files a/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_23_0/00000.png and b/tests_liquid/snapshots/nanos/test_sighashes_multi_input_0_23_0/00000.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00006.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00006.png index 5fe14c039..1989a475f 100644 Binary files a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00006.png and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00007.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00007.png index 5f79f1035..79f96bc07 100644 Binary files a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00007.png and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00007.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00008.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00008.png index 336b90354..ad93a128f 100644 Binary files a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00008.png and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00008.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00009.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00009.png index 12b06a78e..9a70f6e01 100644 Binary files a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00009.png and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00009.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00010.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00010.png new file mode 100644 index 000000000..52a13abe4 Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00010.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00011.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00011.png new file mode 100644 index 000000000..86b62513d Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00011.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00012.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00012.png new file mode 100644 index 000000000..12b06a78e Binary files /dev/null and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_1_0/00012.png differ diff --git a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_2_0/00000.png b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_2_0/00000.png index 06a78ea5d..dcd35a276 100644 Binary files a/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_2_0/00000.png and b/tests_liquid/snapshots/nanos/test_unknown_asset_display_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00004.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00004.png index 86005b0ae..ac552b42d 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00004.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00005.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00005.png index adea5145e..c53977d8f 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00005.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00006.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_3_0/00000.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_3_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_3_0/00000.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_0_3_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00004.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00004.png index 4bdfa1155..53776a0ef 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00004.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00005.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00005.png index adea5145e..07022f395 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00005.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00006.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_3_0/00000.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_3_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_3_0/00000.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_1_3_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00004.png index 286f8df02..40f5560cf 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00004.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00005.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00005.png index adea5145e..0158f55d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00005.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00006.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_2_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_asset_metadata_display_no_ticker_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00004.png index 4c6626bd9..e1e05e110 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00004.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00005.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00005.png index adea5145e..30d9121ec 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00005.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00006.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00005.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00005.png index 4c6626bd9..e1e05e110 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00005.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00006.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00006.png index adea5145e..30d9121ec 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00006.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00007.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00007.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_2_0/00007.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_3_0/00001.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_3_0/00001.png index 4e71c85fd..30cf12ea6 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_3_0/00001.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_0_3_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00004.png index 60bbb3121..3a9cbafff 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00004.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00005.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00005.png index adea5145e..45e84ef3e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00005.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00006.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_2_0/00001.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_2_0/00001.png index ad2b7030b..4037cd1eb 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_2_0/00001.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_1_2_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_asset_operations_0_2_2_0/00001.png b/tests_liquid/snapshots/nanosp/test_asset_operations_0_2_2_0/00001.png index 25123216c..3540a21b8 100644 Binary files a/tests_liquid/snapshots/nanosp/test_asset_operations_0_2_2_0/00001.png and b/tests_liquid/snapshots/nanosp/test_asset_operations_0_2_2_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00002.png index d2b9b55d5..f769df9e2 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00003.png index adea5145e..dbd67df89 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00002.png index dfba2e9d0..814895646 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00003.png index adea5145e..188c70a2d 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_10_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00002.png index b2f1d8d4e..9e7afe3ec 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00003.png index adea5145e..7c6eb94d9 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_1_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00002.png index 2ef4b4eb3..29a42df28 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00003.png index adea5145e..887939a76 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_2_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00002.png index 81dee4b71..8c19bea3c 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00003.png index adea5145e..a3e0040f6 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_3_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00002.png index e2b8c4ec8..48ce32da4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00003.png index adea5145e..aba5dfde6 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_4_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00002.png index 66822b2ee..3488b6cc0 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00003.png index adea5145e..df2b03539 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_5_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00002.png index b5e09eb8f..139e8262c 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00003.png index adea5145e..3c459530b 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_6_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00002.png index 344c08e16..0b6233481 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00003.png index adea5145e..dcbcd5e30 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_7_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00002.png index 48e85ec86..5a73118cb 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00003.png index adea5145e..d2992231e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_8_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00002.png index 6105253fc..326edcfc2 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00003.png index adea5145e..81cf50217 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighash_flags_0_9_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00001.png index fe400a4f7..17cf86d5f 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00002.png index 59ea580f2..ec39b71b5 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00003.png index adea5145e..4b19f3b69 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_11_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00001.png index b0d99ebe8..0f4c3337e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00002.png index 0b641ded7..abc157a65 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00003.png index adea5145e..1da206456 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_12_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00001.png index 62bc72a28..7d2021443 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00002.png index 80679e8fd..34b2ce346 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00003.png index adea5145e..7ffafae63 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_13_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00001.png index 4180ddfc2..183721565 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00002.png index e3fcc468a..3d99e78b0 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00003.png index adea5145e..0d072d4cd 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_14_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00001.png index ce17ef30c..6dc115e54 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00002.png index 51f0c28c2..50c28c782 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00003.png index adea5145e..9c1bc94ba 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_15_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00001.png index f10ce354a..d552a6f80 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00002.png index 6faf4ffd7..f78d8fbcd 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00003.png index adea5145e..1e552bf0a 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_16_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00001.png index c728af31d..13ed51dd0 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00002.png index 871d98ba9..81db66c5c 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00003.png index adea5145e..d9066be7e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_17_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00001.png index 522c5e74d..8e7cf85ed 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00002.png index bfd2b4af7..f1a596db6 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00003.png index adea5145e..35a47a02b 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_18_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00001.png index 8e3962f6a..6c463a2b8 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00002.png index de4d1c50d..2a84608ca 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00003.png index adea5145e..407cfcb0e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_19_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00001.png index ef24052f2..d999334f5 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00002.png index a472fedf7..b15da8dc1 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00003.png index adea5145e..aa8db4517 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_20_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00001.png index a82c09d14..9f0601b87 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00002.png index fc681ff95..17b191ce9 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00003.png index adea5145e..aa35b365e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_21_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00001.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00001.png index b5f1b9847..bf89f384a 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00001.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00001.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00002.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00002.png index 57b43c269..833f854d3 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00002.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00002.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00003.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00003.png index adea5145e..fbc86717a 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00003.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00003.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00004.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_22_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_23_0/00000.png b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_23_0/00000.png index 30081e987..1bce8de5d 100644 Binary files a/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_23_0/00000.png and b/tests_liquid/snapshots/nanosp/test_sighashes_multi_input_0_23_0/00000.png differ diff --git a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00004.png b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00004.png index ca4873492..8a4b17637 100644 Binary files a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00004.png and b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00005.png b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00005.png index adea5145e..dd7464e9e 100644 Binary files a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00005.png and b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00006.png b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_2_0/00000.png b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_2_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_2_0/00000.png and b/tests_liquid/snapshots/nanosp/test_unknown_asset_display_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00004.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00004.png index 86005b0ae..ac552b42d 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00004.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00005.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00005.png index adea5145e..c53977d8f 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00005.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00006.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_3_0/00000.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_3_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_3_0/00000.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_0_3_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00004.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00004.png index 4bdfa1155..53776a0ef 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00004.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00005.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00005.png index adea5145e..07022f395 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00005.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00006.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_3_0/00000.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_3_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_3_0/00000.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_1_3_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00004.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00004.png index 286f8df02..40f5560cf 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00004.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00005.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00005.png index adea5145e..0158f55d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00005.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00006.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_2_0/00000.png b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_2_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_asset_metadata_display_no_ticker_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00004.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00004.png index 4c6626bd9..e1e05e110 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00004.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00005.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00005.png index adea5145e..30d9121ec 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00005.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00006.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00005.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00005.png index 4c6626bd9..e1e05e110 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00005.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00006.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00006.png index adea5145e..30d9121ec 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00006.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00007.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00007.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_2_0/00007.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_3_0/00001.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_3_0/00001.png index 4e71c85fd..30cf12ea6 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_0_3_0/00001.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_0_3_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00004.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00004.png index 60bbb3121..3a9cbafff 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00004.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00005.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00005.png index adea5145e..45e84ef3e 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00005.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00006.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_2_0/00001.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_2_0/00001.png index ad2b7030b..4037cd1eb 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_1_2_0/00001.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_1_2_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_asset_operations_0_2_2_0/00001.png b/tests_liquid/snapshots/nanox/test_asset_operations_0_2_2_0/00001.png index 25123216c..3540a21b8 100644 Binary files a/tests_liquid/snapshots/nanox/test_asset_operations_0_2_2_0/00001.png and b/tests_liquid/snapshots/nanox/test_asset_operations_0_2_2_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00002.png index d2b9b55d5..f769df9e2 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00003.png index adea5145e..dbd67df89 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_0_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00002.png index dfba2e9d0..814895646 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00003.png index adea5145e..188c70a2d 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_10_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00002.png index b2f1d8d4e..9e7afe3ec 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00003.png index adea5145e..7c6eb94d9 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_1_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00002.png index 2ef4b4eb3..29a42df28 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00003.png index adea5145e..887939a76 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_2_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00002.png index 81dee4b71..8c19bea3c 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00003.png index adea5145e..a3e0040f6 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_3_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00002.png index e2b8c4ec8..48ce32da4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00003.png index adea5145e..aba5dfde6 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_4_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00002.png index 66822b2ee..3488b6cc0 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00003.png index adea5145e..df2b03539 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_5_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00002.png index b5e09eb8f..139e8262c 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00003.png index adea5145e..3c459530b 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_6_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00002.png index 344c08e16..0b6233481 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00003.png index adea5145e..dcbcd5e30 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_7_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00002.png index 48e85ec86..5a73118cb 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00003.png index adea5145e..d2992231e 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_8_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00001.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00001.png index 59c240427..1f04ac7b4 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00002.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00002.png index 6105253fc..326edcfc2 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00003.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00003.png index adea5145e..81cf50217 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00004.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_2_0/00000.png b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_2_0/00000.png index 115aa03f4..7054534d7 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighash_flags_0_9_2_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00001.png index fe400a4f7..17cf86d5f 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00002.png index 59ea580f2..ec39b71b5 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00003.png index adea5145e..4b19f3b69 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_11_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00001.png index b0d99ebe8..0f4c3337e 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00002.png index 0b641ded7..abc157a65 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00003.png index adea5145e..1da206456 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_12_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00001.png index 62bc72a28..7d2021443 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00002.png index 80679e8fd..34b2ce346 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00003.png index adea5145e..7ffafae63 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_13_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00001.png index 4180ddfc2..183721565 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00002.png index e3fcc468a..3d99e78b0 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00003.png index adea5145e..0d072d4cd 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_14_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00001.png index ce17ef30c..6dc115e54 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00002.png index 51f0c28c2..50c28c782 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00003.png index adea5145e..9c1bc94ba 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_15_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00001.png index f10ce354a..d552a6f80 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00002.png index 6faf4ffd7..f78d8fbcd 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00003.png index adea5145e..1e552bf0a 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_16_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00001.png index c728af31d..13ed51dd0 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00002.png index 871d98ba9..81db66c5c 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00003.png index adea5145e..d9066be7e 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_17_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00001.png index 522c5e74d..8e7cf85ed 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00002.png index bfd2b4af7..f1a596db6 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00003.png index adea5145e..35a47a02b 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_18_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00001.png index 8e3962f6a..6c463a2b8 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00002.png index de4d1c50d..2a84608ca 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00003.png index adea5145e..407cfcb0e 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_19_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00001.png index ef24052f2..d999334f5 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00002.png index a472fedf7..b15da8dc1 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00003.png index adea5145e..aa8db4517 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_20_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00001.png index a82c09d14..9f0601b87 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00002.png index fc681ff95..17b191ce9 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00003.png index adea5145e..aa35b365e 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_21_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00001.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00001.png index b5f1b9847..bf89f384a 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00001.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00001.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00002.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00002.png index 57b43c269..833f854d3 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00002.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00002.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00003.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00003.png index adea5145e..fbc86717a 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00003.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00003.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00004.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00004.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_22_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_23_0/00000.png b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_23_0/00000.png index 30081e987..1bce8de5d 100644 Binary files a/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_23_0/00000.png and b/tests_liquid/snapshots/nanox/test_sighashes_multi_input_0_23_0/00000.png differ diff --git a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00004.png b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00004.png index ca4873492..8a4b17637 100644 Binary files a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00004.png and b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00004.png differ diff --git a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00005.png b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00005.png index adea5145e..dd7464e9e 100644 Binary files a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00005.png and b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00005.png differ diff --git a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00006.png b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00006.png new file mode 100644 index 000000000..adea5145e Binary files /dev/null and b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_1_0/00006.png differ diff --git a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_2_0/00000.png b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_2_0/00000.png index c8d69c8f7..f9ea595e8 100644 Binary files a/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_2_0/00000.png and b/tests_liquid/snapshots/nanox/test_unknown_asset_display_0_2_0/00000.png differ diff --git a/tests_liquid_testnet/README.md b/tests_liquid_testnet/README.md new file mode 100644 index 000000000..b326d27e2 --- /dev/null +++ b/tests_liquid_testnet/README.md @@ -0,0 +1,42 @@ +# End-to-end tests + +These tests are implemented in Python and can be executed either using the [Speculos](https://github.com/LedgerHQ/speculos) emulator or a Ledger Nano S/X/SP. + +All the commands in this folder are meant to be ran from the `tests` folder, not from the root. + +Python dependencies are listed in [requirements.txt](requirements.txt), install them using [pip](https://pypi.org/project/pip/) + +``` +pip install -r requirements.txt +``` + +## Launch with Speculos + +Build the app as normal for Liquid testnet network from the root folder. For convenience, you probably want to enable DEBUG: + +``` +COIN=liquid_testnet DEBUG=1 make +``` + +Then run all the tests from this folder, specifying the device: nanos, nanox, nanosp, or all: + +``` +pytest --device yourdevice +``` +You can enable the screen display with the option `--display` + +## Launch with your Nano S/X/SP + +Compile and install the app on your device as normal. + +To run the tests on your Ledger device you also need to install an optional dependency + +``` +pip install ledgercomm[hid] +``` + +Be sure to have you device connected through USB (without any other software interacting with it) and run + +``` +pytest --device yourdevice --backend ledgercomm +``` diff --git a/tests_liquid_testnet/__init__.py b/tests_liquid_testnet/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests_liquid_testnet/conftest.py b/tests_liquid_testnet/conftest.py new file mode 100644 index 000000000..b500225ed --- /dev/null +++ b/tests_liquid_testnet/conftest.py @@ -0,0 +1,226 @@ +import sys +import os + +absolute_path = os.path.dirname(os.path.abspath(__file__)) +relative_bitcoin_path = ('../bitcoin_client') +absolute_bitcoin_client_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), '../') +sys.path.append(os.path.join(absolute_path, relative_bitcoin_path)) + +import random +from typing import Tuple + +from test_utils.fixtures import * +from test_utils.authproxy import AuthServiceProxy, JSONRPCException +from test_utils import segwit_addr + +import shutil +import subprocess +from time import sleep +from decimal import Decimal +from pathlib import Path + +from ledger_bitcoin import Chain +from ledger_bitcoin.common import sha256 +import ledger_bitcoin._base58 as base58 + +from ragger.conftest import configuration +from ragger.backend.interface import BackendInterface +from ragger.backend import RaisePolicy +from ragger_bitcoin import createRaggerClient, RaggerClient + +########################### +### CONFIGURATION START ### +########################### + +# You can configure optional parameters by overriding the value of ragger.configuration.OPTIONAL_CONFIGURATION +# Please refer to ragger/conftest/configuration.py for their descriptions and accepted values + +MNEMONIC = "glory promote mansion idle axis finger extra february uncover one trip resource lawn turtle enact monster seven myth punch hobby comfort wild raise skin" +configuration.OPTIONAL.CUSTOM_SEED = MNEMONIC +configuration.OPTIONAL.BACKEND_SCOPE = "function" + + +######################### +### CONFIGURATION END ### +######################### +TESTS_ROOT_DIR = Path(__file__).parent + +# Pull all features from the base ragger conftest using the overridden configuration +pytest_plugins = ("ragger.conftest.base_conftest", ) + +random.seed(0) # make sure tests are repeatable + +# Make sure that the native client library is used with, as speculos would otherwise +# return a version number < 2.0.0 for the app +os.environ['SPECULOS_APPNAME'] = f'Bitcoin Test:{get_app_version()}' + + +BITCOIN_DIRNAME = os.getenv("BITCOIN_DIRNAME", "tests/.test_bitcoin") + + +rpc_url = "http://%s:%s@%s:%s" % ( + os.getenv("BTC_RPC_USER", "user"), + os.getenv("BTC_RPC_PASSWORD", "passwd"), + os.getenv("BTC_RPC_HOST", "127.0.0.1"), + os.getenv("BTC_RPC_PORT", "18443") +) + +utxos = list() +btc_addr = "" + + +def get_rpc() -> AuthServiceProxy: + return AuthServiceProxy(rpc_url) + + +def get_wallet_rpc(wallet_name: str) -> AuthServiceProxy: + return AuthServiceProxy(f"{rpc_url}/wallet/{wallet_name}") + + +def setup_node(): + global btc_addr + + # Check bitcoind is running while generating the address + while True: + rpc = get_rpc() + try: + print(rpc.createwallet(wallet_name="test_wallet", descriptors=True)) + btc_addr = rpc.getnewaddress() + break + + except ConnectionError as e: + sleep(1) + except JSONRPCException as e: + if "Loading wallet..." in str(e): + sleep(1) + + # Mine enough blocks so coinbases are mature and we have enough funds to run everything + rpc.generatetoaddress(105, btc_addr) + + +@pytest.fixture(scope="session") +def run_bitcoind(): + # Run bitcoind in a separate folder + os.makedirs(BITCOIN_DIRNAME, exist_ok=True) + + bitcoind = os.getenv("BITCOIND", "/bitcoin/bin/bitcoind") + + shutil.copy(os.path.join(os.path.dirname(__file__), "bitcoin.conf"), BITCOIN_DIRNAME) + subprocess.Popen([bitcoind, f"--datadir={BITCOIN_DIRNAME}"]) + + # Make sure the node is ready, and generate some initial blocks + setup_node() + + yield + + rpc = get_rpc() + rpc.stop() + + shutil.rmtree(BITCOIN_DIRNAME) + + +@pytest.fixture(scope="session") +def rpc(run_bitcoind): + return get_rpc() + + +@pytest.fixture(scope="session") +def rpc_test_wallet(run_bitcoind): + return get_wallet_rpc("test_wallet") + + +def get_utxo(): + rpc = get_rpc() + global utxos + if not utxos: + utxos = rpc.listunspent() + + if len(utxos) == 0: + raise ValueError("There are no UTXOs.") + + utxo = utxos.pop(0) + while utxo.get("amount") < Decimal("0.00002"): + utxo = utxos.pop(0) + + return utxo + + +def seed_to_wif(seed: bytes): + assert len(seed) == 32 + + double_sha256 = sha256(sha256(b"\x80" + seed)) + return base58.encode(b"\x80" + seed + double_sha256[:4]) + + +wallet_count = 0 + + +def get_unique_wallet_name() -> str: + global wallet_count + + result = f"mywallet-{wallet_count}" + + wallet_count += 1 + + return result + + +def create_new_wallet() -> Tuple[str, str]: + """Creates a new descriptor-enabled wallet in bitcoin-core. Each new wallet has an increasing counter as + part of it's name in order to avoid conflicts. Returns the wallet name and the xpub (dropping the key origin + information).""" + + wallet_name = get_unique_wallet_name() + + # TODO: derive seed from wallet_count, and use it to create a descriptor wallet (how?) + # this would help to have repeatable tests, generating always the same seeds + + get_rpc().createwallet(wallet_name=wallet_name, descriptors=True) + wallet_rpc = get_wallet_rpc(wallet_name) + + all_descriptors = wallet_rpc.listdescriptors()["descriptors"] + descriptor: str = next(filter(lambda d: d["desc"].startswith( + "pkh") and "/0/*" in d["desc"], all_descriptors))["desc"] + + core_xpub_orig = descriptor[descriptor.index("(")+1: descriptor.index("/0/*")] + core_xpub = core_xpub_orig[core_xpub_orig.find("]") + 1:] + + return wallet_name, core_xpub + + +def generate_blocks(n): + return get_rpc().generatetoaddress(n, btc_addr) + + +def testnet_to_regtest_addr(addr: str) -> str: + """Convenience function to reencode addresses from testnet format to regtest one (bech32 prefix is different)""" + hrp, data, spec = segwit_addr.bech32_decode(addr) + if hrp is None: + return addr # bech32m decoding failed; either legacy/unknown address type, or invalid address + if (hrp != "tb"): + raise ValueError("Not a valid testnet bech32m string") + return segwit_addr.bech32_encode("bcrt", data, spec) + + +@pytest.fixture +def client(bitcoin_network: str, backend: BackendInterface) -> RaggerClient: + if bitcoin_network == "main": + chain = Chain.MAIN + elif bitcoin_network == "test": + chain = Chain.TEST + else: + raise ValueError( + f'Invalid value for BITCOIN_NETWORK: {bitcoin_network}') + + backend.raise_policy = RaisePolicy.RAISE_CUSTOM + backend.whitelisted_status = [0x9000, 0xE000] + return createRaggerClient(backend, chain=chain, debug=True, screenshot_dir=TESTS_ROOT_DIR) + +random.seed(0) # make sure tests are repeatable + +# Make sure that the native client library is used, as speculos would otherwise +# return a version number < 2.0.0 for the app +os.environ['SPECULOS_APPNAME'] = f'Bitcoin:{get_app_version()}' + +os.environ["BITCOIN_NETWORK"] = "test" + diff --git a/tests_liquid_testnet/requirements.txt b/tests_liquid_testnet/requirements.txt new file mode 100644 index 000000000..d8554a27a --- /dev/null +++ b/tests_liquid_testnet/requirements.txt @@ -0,0 +1,9 @@ +pytest>=6.1.1,<7.0.0 +pytest-timeout>=2.1.0,<3.0.0 +ledgercomm>=1.1.0,<1.2.0 +ecdsa>=0.16.1,<0.17.0 +typing-extensions>=3.7,<4.0 +embit>=0.7.0,<0.8.0 +mnemonic==0.20 +bip32>=3.4,<4.0 +ragger[speculos, ledgerwallet]>=1.6.0 \ No newline at end of file diff --git a/tests_liquid_testnet/setup.cfg b/tests_liquid_testnet/setup.cfg new file mode 100644 index 000000000..2d726e2b4 --- /dev/null +++ b/tests_liquid_testnet/setup.cfg @@ -0,0 +1,20 @@ +[tool:pytest] +addopts = --strict-markers + +[pylint] +disable = C0114, # missing-module-docstring + C0115, # missing-class-docstring + C0116, # missing-function-docstring + C0103, # invalid-name + R0801, # duplicate-code + R0913 # too-many-arguments +extension-pkg-whitelist=hid + +[pycodestyle] +max-line-length = 120 + +[mypy-hid.*] +ignore_missing_imports = True + +[mypy-pytest.*] +ignore_missing_imports = True diff --git a/tests_liquid_testnet/snapshots/nanos/test_dashboard/00000.png b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00000.png new file mode 100644 index 000000000..564836a21 Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00000.png differ diff --git a/tests_liquid_testnet/snapshots/nanos/test_dashboard/00001.png b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00001.png new file mode 100644 index 000000000..7abb49fee Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00001.png differ diff --git a/tests_liquid_testnet/snapshots/nanos/test_dashboard/00002.png b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00002.png new file mode 100644 index 000000000..3476b972a Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00002.png differ diff --git a/tests_liquid_testnet/snapshots/nanos/test_dashboard/00003.png b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00003.png new file mode 100644 index 000000000..e2279803e Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanos/test_dashboard/00003.png differ diff --git a/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00000.png b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00000.png new file mode 100644 index 000000000..4b8acea5f Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00000.png differ diff --git a/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00001.png b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00001.png new file mode 100644 index 000000000..afefa4f5d Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00001.png differ diff --git a/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00002.png b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00002.png new file mode 100644 index 000000000..7e1a28c65 Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00002.png differ diff --git a/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00003.png b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00003.png new file mode 100644 index 000000000..bcb20c683 Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanosp/test_dashboard/00003.png differ diff --git a/tests_liquid_testnet/snapshots/nanox/test_dashboard/00000.png b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00000.png new file mode 100644 index 000000000..4b8acea5f Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00000.png differ diff --git a/tests_liquid_testnet/snapshots/nanox/test_dashboard/00001.png b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00001.png new file mode 100644 index 000000000..afefa4f5d Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00001.png differ diff --git a/tests_liquid_testnet/snapshots/nanox/test_dashboard/00002.png b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00002.png new file mode 100644 index 000000000..7e1a28c65 Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00002.png differ diff --git a/tests_liquid_testnet/snapshots/nanox/test_dashboard/00003.png b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00003.png new file mode 100644 index 000000000..bcb20c683 Binary files /dev/null and b/tests_liquid_testnet/snapshots/nanox/test_dashboard/00003.png differ diff --git a/tests_liquid_testnet/test_dashboard.py b/tests_liquid_testnet/test_dashboard.py new file mode 100644 index 000000000..c5027e8fd --- /dev/null +++ b/tests_liquid_testnet/test_dashboard.py @@ -0,0 +1,24 @@ +from ragger.firmware import Firmware +from ragger.navigator import NavInsID, Navigator +from pathlib import Path + +ROOT_SCREENSHOT_PATH = Path(__file__).parent.resolve() + + +def test_dashboard(navigator: Navigator, firmware: Firmware, test_name: str): + # Tests that the text shown in the dashboard screens are the expected ones + + if firmware.device.startswith("nano"): + instructions = [ + NavInsID.RIGHT_CLICK, + NavInsID.RIGHT_CLICK, + NavInsID.RIGHT_CLICK + ] + else: + instructions = [ + NavInsID.USE_CASE_HOME_INFO, + NavInsID.USE_CASE_SETTINGS_SINGLE_PAGE_EXIT + ] + + navigator.navigate_and_compare(ROOT_SCREENSHOT_PATH, test_name, instructions, + screen_change_before_first_instruction=False) diff --git a/tests_liquid_testnet/test_get_wallet_address.py b/tests_liquid_testnet/test_get_wallet_address.py new file mode 100644 index 000000000..8d1619112 --- /dev/null +++ b/tests_liquid_testnet/test_get_wallet_address.py @@ -0,0 +1,238 @@ +from ledger_bitcoin import Client, AddressType, MultisigWallet, WalletPolicy, BlindedWallet, BlindedMultisigWallet +from ledger_bitcoin.exception.errors import IncorrectDataError +from ledger_bitcoin.exception.device_exception import DeviceException +from ragger.error import ExceptionRAPDU +from ragger_bitcoin import RaggerClient + +import pytest + + +def test_get_wallet_address_singlesig_wit(client: RaggerClient): + # bech32 address (P2WPKH) + wallet = WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[f5acc2fd/84'/1'/0']tpubDCtKfsNyRhULjZ9XMS4VKKtVcPdVDi8MKUbcSD9MJDyjRu1A2ND5MiipozyyspBT9bg8upEp7a8EAgFxNxXn1d7QkdbL52Ty5jiSLcxPt1P", + ], + ) + + res = client.get_wallet_address(wallet, None, 0, 0, False, sanity_check=False) + assert res == "tex1qzdr7s2sr0dwmkwx033r4nujzk86u0cy6njktcw" + + res = client.get_wallet_address(wallet, None, 1, 15, False, sanity_check=False) + assert res == "tex1qlrvzyx8jcjfj2xuy69du9trtxnsvjupehhdgda" + + +def test_get_wallet_confidential_address_singlesig_wit(client: RaggerClient): + # bech32 address (P2WPKH) + wallet = BlindedWallet( + name="", + blinding_key="slip77(0c11648c2c6df4f9dacdb4c8d35d6166d94cea2b9ad37833a82210bb7c9f5fb4)", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[f5acc2fd/84'/1'/0']tpubDCtKfsNyRhULjZ9XMS4VKKtVcPdVDi8MKUbcSD9MJDyjRu1A2ND5MiipozyyspBT9bg8upEp7a8EAgFxNxXn1d7QkdbL52Ty5jiSLcxPt1P", + ], + ) + + res = client.get_wallet_address(wallet, None, 0, 0, False, sanity_check=False) + assert res == "tlq1qqvk6gl0lgs80w8rargdqyfsl7f0llsttzsx8gd4fz262cjnt0uxh6y68aq4qx76ahvuvlrz8t8ey9v04clsf5utzxs3jk5msz" + + res = client.get_wallet_address(wallet, None, 1, 15, False, sanity_check=False) + assert res == "tlq1qqwfu5kl52jxc05g5nrux3almgt4ryz8eandhsjjnjw3k0jhetd9vp7xcygv093yny5dcf52mc2kxkd8qe9crjdkvj29as45eh" + + +def test_get_wallet_address_singlesig_sh_wit(client: RaggerClient): + # wrapped segwit addresses (P2SH-P2WPKH) + wallet = WalletPolicy( + name="", + descriptor_template="sh(wpkh(@0/**))", + keys_info=[ + f"[f5acc2fd/49'/1'/0']tpubDC871vGLAiKPcwAw22EjhKVLk5L98UGXBEcGR8gpcigLQVDDfgcYW24QBEyTHTSFEjgJgbaHU8CdRi9vmG4cPm1kPLmZhJEP17FMBdNheh3", + ], + ) + + res = client.get_wallet_address(wallet, None, 0, 0, False, sanity_check=False) + assert res == "8kTzKh7vfskVq8bD2b2RHdya2twLWCmR8i" + + res = client.get_wallet_address(wallet, None, 1, 15, False, sanity_check=False) + assert res == "8wman2geWUEz3QQRGGyciBV5aY1pMJbART" + + +def test_get_wallet_confidential_address_singlesig_sh_wit(client: RaggerClient): + # wrapped segwit addresses (P2SH-P2WPKH) + wallet = BlindedWallet( + name="", + blinding_key="slip77(0c11648c2c6df4f9dacdb4c8d35d6166d94cea2b9ad37833a82210bb7c9f5fb4)", + descriptor_template="sh(wpkh(@0/**))", + keys_info=[ + f"[f5acc2fd/49'/1'/0']tpubDC871vGLAiKPcwAw22EjhKVLk5L98UGXBEcGR8gpcigLQVDDfgcYW24QBEyTHTSFEjgJgbaHU8CdRi9vmG4cPm1kPLmZhJEP17FMBdNheh3", + ], + ) + + res = client.get_wallet_address(wallet, None, 0, 0, False, sanity_check=False) + assert res == "vjU7NNQpSPxe2GLKhtB6phQ35bwxP7dQE7ESi4YoVD5px8do6FQiKiEnFkTe1uBodCBC3BLAqfnFZaNz" + + res = client.get_wallet_address(wallet, None, 1, 15, False, sanity_check=False) + assert res == "vjU7jVGmGg7RQCcGj7wC3u1FPYSGMcKL6d11qQ18Vxmk4vmmdDBda1j95DSHBfEYDVQdD82cKPd5qbsF" + +# Multisig + +def test_get_wallet_address_multisig_sh_wit(client: Client, speculos_globals): + # test for a wrapped segwit multisig wallet + + wallet = MultisigWallet( + name="Cold storage", + address_type=AddressType.SH_WIT, + threshold=2, + keys_info=[ + f"[f5acc2fd/48'/1'/0'/1']tpubDFAqEGNyad35YgH8zxvxFZqNUoPtr5mDojs7wzbXQBHTZ4xHeVXG6w2HvsKvjBpaRpTmjYDjdPg5w2c6Wvu8QBkyMDrmBWdCyqkDM7reSsY", + f"[42b01983/48'/1'/0'/1']tpubDFjEjEPeyFun4mXBDxjLLx7hSM8jpMYNoSckRMtYygsAh4ZUtXKJtczddeHRKQ1Mzq8B6MWy3iUJyeKmJwiEKDd4rXxazBSjAEHzibDEhVK" + ], + ) + + res = client.get_wallet_address(wallet, wallet.hmac(speculos_globals.wallet_registration_key), 0, 0, False, sanity_check=False) + assert res == "91RmpYdgGgamwpee8kn77LEFbzP6QBf3ZZ" + + +def test_get_wallet_confidential_address_multisig_sh_wit(client: Client, speculos_globals): + # test for a blinded wrapped segwit multisig wallet + + # ct(slip77(80b796c76c895bda151cd5c40f3a11afcd96d66f99347a760d3f7b8aaa5815b5),sh(wsh(sortedmulti(2, + # [f5acc2fd/48h/1h/0h/2h]tpubDFAqEGNyad35aBCKUAXbQGDjdVhNueno5ZZVEn3sQbW5ci457gLR7HyTmHBg93oourBssgUxuWz1jX5uhc1qaqFo9VsybY1J5FuedLfm4dK/{0,1}/*, + # [42b01983/48h/1h/0h/2h]tpubDFjEjEPeyFun6FHqS248kK51SwLVx3hVzWdAFwsDXza1Lfjy1KASoBhMiiJMqtJTUAPdM7zbrx3BNgYMQNyGNVwkyNS1Wi82bb2Hwij7K9L/{0,1}/*, + # [9860e1eb/48h/1h/0h/2h]tpubDESXi1fi17YeJJA7xAn5sqHPvEBFpPscRv9QEzJpJQw4D7QfAWw8xfXuGdW1wMQvdj9vz8SxCSTVdhcS4Sro5GYdMojR2JYE3GuHBWipnxy/{0,1}/* + # )))) + + wallet = BlindedMultisigWallet( + name="Cold storage", + blinding_key="slip77(80b796c76c895bda151cd5c40f3a11afcd96d66f99347a760d3f7b8aaa5815b5)", + address_type=AddressType.SH_WIT, + threshold=2, + keys_info=[ + f"[f5acc2fd/48'/1'/0'/2']tpubDFAqEGNyad35aBCKUAXbQGDjdVhNueno5ZZVEn3sQbW5ci457gLR7HyTmHBg93oourBssgUxuWz1jX5uhc1qaqFo9VsybY1J5FuedLfm4dK", + f"[42b01983/48'/1'/0'/2']tpubDFjEjEPeyFun6FHqS248kK51SwLVx3hVzWdAFwsDXza1Lfjy1KASoBhMiiJMqtJTUAPdM7zbrx3BNgYMQNyGNVwkyNS1Wi82bb2Hwij7K9L", + f"[9860e1eb/48'/1'/0'/2']tpubDESXi1fi17YeJJA7xAn5sqHPvEBFpPscRv9QEzJpJQw4D7QfAWw8xfXuGdW1wMQvdj9vz8SxCSTVdhcS4Sro5GYdMojR2JYE3GuHBWipnxy" + ], + ) + + res = client.get_wallet_address(wallet, wallet.hmac(speculos_globals.wallet_registration_key), 0, 0, False, sanity_check=False) + assert res == "vjTzSV9ksKEhdzuUwG5RBAL8Cj2hSRV7Jq7fy7H2yoHaTBjiqnroqmWwdZLJY7yEHPQ39GA1KSnr3Mxh" + + +def test_get_wallet_address_multisig_wit(client: Client, speculos_globals): + # test for a native segwit multisig wallet (bech32 address) + + wallet = MultisigWallet( + name="Cold storage", + address_type=AddressType.WIT, + threshold=2, + keys_info=[ + "[f5acc2fd/48'/1'/0'/2']tpubDFAqEGNyad35aBCKUAXbQGDjdVhNueno5ZZVEn3sQbW5ci457gLR7HyTmHBg93oourBssgUxuWz1jX5uhc1qaqFo9VsybY1J5FuedLfm4dK", + "[42b01983/48'/1'/0'/2']tpubDFjEjEPeyFun6FHqS248kK51SwLVx3hVzWdAFwsDXza1Lfjy1KASoBhMiiJMqtJTUAPdM7zbrx3BNgYMQNyGNVwkyNS1Wi82bb2Hwij7K9L", + "[9860e1eb/48'/1'/0'/2']tpubDESXi1fi17YeJJA7xAn5sqHPvEBFpPscRv9QEzJpJQw4D7QfAWw8xfXuGdW1wMQvdj9vz8SxCSTVdhcS4Sro5GYdMojR2JYE3GuHBWipnxy" + ], + ) + + res = client.get_wallet_address(wallet, wallet.hmac(speculos_globals.wallet_registration_key), 0, 0, False, sanity_check=False) + assert res == "tex1qm00c95pvkjp97fvswsl09j7pgt75m54srzsu2y87wau7v423q2kqarlrs9" + + +def test_get_wallet_confidential_address_multisig_wit(client: Client, speculos_globals): + # test for a native segwit multisig wallet (bech32 address) + + # ct(slip77(80b796c76c895bda151cd5c40f3a11afcd96d66f99347a760d3f7b8aaa5815b5),wsh(sortedmulti(2, + # [f5acc2fd/48h/1h/0h/2h]tpubDFAqEGNyad35aBCKUAXbQGDjdVhNueno5ZZVEn3sQbW5ci457gLR7HyTmHBg93oourBssgUxuWz1jX5uhc1qaqFo9VsybY1J5FuedLfm4dK/{0,1}/*, + # [42b01983/48h/1h/0h/2h]tpubDFjEjEPeyFun6FHqS248kK51SwLVx3hVzWdAFwsDXza1Lfjy1KASoBhMiiJMqtJTUAPdM7zbrx3BNgYMQNyGNVwkyNS1Wi82bb2Hwij7K9L/{0,1}/*, + # [9860e1eb/48h/1h/0h/2h]tpubDESXi1fi17YeJJA7xAn5sqHPvEBFpPscRv9QEzJpJQw4D7QfAWw8xfXuGdW1wMQvdj9vz8SxCSTVdhcS4Sro5GYdMojR2JYE3GuHBWipnxy/{0,1}/* + # ))) + + wallet = BlindedMultisigWallet( + name="Cold storage", + blinding_key="slip77(80b796c76c895bda151cd5c40f3a11afcd96d66f99347a760d3f7b8aaa5815b5)", + address_type=AddressType.WIT, + threshold=2, + keys_info=[ + "[f5acc2fd/48'/1'/0'/2']tpubDFAqEGNyad35aBCKUAXbQGDjdVhNueno5ZZVEn3sQbW5ci457gLR7HyTmHBg93oourBssgUxuWz1jX5uhc1qaqFo9VsybY1J5FuedLfm4dK", + "[42b01983/48'/1'/0'/2']tpubDFjEjEPeyFun6FHqS248kK51SwLVx3hVzWdAFwsDXza1Lfjy1KASoBhMiiJMqtJTUAPdM7zbrx3BNgYMQNyGNVwkyNS1Wi82bb2Hwij7K9L", + "[9860e1eb/48'/1'/0'/2']tpubDESXi1fi17YeJJA7xAn5sqHPvEBFpPscRv9QEzJpJQw4D7QfAWw8xfXuGdW1wMQvdj9vz8SxCSTVdhcS4Sro5GYdMojR2JYE3GuHBWipnxy" + ], + ) + + res = client.get_wallet_address(wallet, wallet.hmac(speculos_globals.wallet_registration_key), 0, 0, False, sanity_check=False) + assert res == "tlq1qqwuytsp6xrqhuku4cqqftdasvf6d6rkxjlrf90ptm3670tx2pkwlfk7lstgzedyztujeqap77t9uzshafhftqx9pc5g0uameue24zq4vkcxh9ar9hkdl" + + +# Failure cases for default wallets + +def test_get_wallet_address_default_fail_wrongkeys(client: RaggerClient): + # 0 keys info should be rejected + with pytest.raises(ExceptionRAPDU) as e: + client.get_wallet_address(WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[], + ), None, 0, 0, False, sanity_check=False) + assert DeviceException.exc.get(e.value.status) == IncorrectDataError + assert len(e.value.data) == 0 + + # more than 1 key should be rejected + with pytest.raises(ExceptionRAPDU) as e: + client.get_wallet_address(WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[f5acc2fd/84'/1'/0']tpubDCtKfsNyRhULjZ9XMS4VKKtVcPdVDi8MKUbcSD9MJDyjRu1A2ND5MiipozyyspBT9bg8upEp7a8EAgFxNxXn1d7QkdbL52Ty5jiSLcxPt1P", + f"[f5acc2fd/84'/1'/0']tpubDCtKfsNyRhULjZ9XMS4VKKtVcPdVDi8MKUbcSD9MJDyjRu1A2ND5MiipozyyspBT9bg8upEp7a8EAgFxNxXn1d7QkdbL52Ty5jiSLcxPt1P" + ], + ), None, 0, 0, False, sanity_check=False) + assert DeviceException.exc.get(e.value.status) == IncorrectDataError + assert len(e.value.data) == 0 + + # wrong BIP44 purpose should be rejected (here using 49' for a P2WPKH address) + with pytest.raises(ExceptionRAPDU) as e: + client.get_wallet_address(WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[f5acc2fd/49'/1'/0']tpubDC871vGLAiKPcwAw22EjhKVLk5L98UGXBEcGR8gpcigLQVDDfgcYW24QBEyTHTSFEjgJgbaHU8CdRi9vmG4cPm1kPLmZhJEP17FMBdNheh3", + ], + ), None, 0, 0, False, sanity_check=False) + assert DeviceException.exc.get(e.value.status) == IncorrectDataError + assert len(e.value.data) == 0 + + # mismatching pubkey (claiming key origin "84'/1'/0'", but that's the extended dpubkey for "49'/1'/0'"") + with pytest.raises(ExceptionRAPDU) as e: + client.get_wallet_address(WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[f5acc2fd/84'/1'/0']tpubDC871vGLAiKPcwAw22EjhKVLk5L98UGXBEcGR8gpcigLQVDDfgcYW24QBEyTHTSFEjgJgbaHU8CdRi9vmG4cPm1kPLmZhJEP17FMBdNheh3", + ], + ), None, 0, 0, False, sanity_check=False) + assert DeviceException.exc.get(e.value.status) == IncorrectDataError + assert len(e.value.data) == 0 + + # wrong master fingerprint + with pytest.raises(ExceptionRAPDU) as e: + client.get_wallet_address(WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[05acc2fd/84'/1'/0']tpubDCtKfsNyRhULjZ9XMS4VKKtVcPdVDi8MKUbcSD9MJDyjRu1A2ND5MiipozyyspBT9bg8upEp7a8EAgFxNxXn1d7QkdbL52Ty5jiSLcxPt1P", + ], + ), None, 0, 0, False, sanity_check=False) + assert DeviceException.exc.get(e.value.status) == IncorrectDataError + assert len(e.value.data) == 0 + + # too large address_index, cannot be done non-silently + with pytest.raises(ExceptionRAPDU) as e: + client.get_wallet_address(WalletPolicy( + name="", + descriptor_template="wpkh(@0/**)", + keys_info=[ + f"[f5acc2fd/84'/1'/0']tpubDCtKfsNyRhULjZ9XMS4VKKtVcPdVDi8MKUbcSD9MJDyjRu1A2ND5MiipozyyspBT9bg8upEp7a8EAgFxNxXn1d7QkdbL52Ty5jiSLcxPt1P", + ], + ), None, 0, 100000, False, sanity_check=False) + assert DeviceException.exc.get(e.value.status) == IncorrectDataError + assert len(e.value.data) == 0 diff --git a/unit-tests/CMakeLists.txt b/unit-tests/CMakeLists.txt index 1ed66b3ae..04fb53378 100644 --- a/unit-tests/CMakeLists.txt +++ b/unit-tests/CMakeLists.txt @@ -67,24 +67,32 @@ add_compile_definitions(TEST DEBUG=0 SKIP_FOR_CMOCKA PRINTF=printf) if(NOT DEFINED HAVE_LIQUID OR HAVE_LIQUID GREATER_EQUAL 1) set(HAVE_LIQUID 1) add_compile_definitions(HAVE_LIQUID) + add_compile_definitions(LIQUID_NET_REGTEST) endif() if(HAVE_LIQUID) message("${BoldCyan}** LIQUID SUPPORT ENABLED **${ColourReset}") endif() +# Include directories include_directories(../src) include_directories(../src/common) include_directories(mock_includes) +include_directories(libs) include_directories(lib/sha-2) +# Detect strlcpy availability and include fallback if necessary +include(CheckFunctionExists) +check_function_exists(strlcpy HAVE_STRLCPY) +if(NOT HAVE_STRLCPY) + add_compile_options(-include fallback_strlcpy.h) +endif() + if(CMAKE_C_COMPILER_ID STREQUAL "AppleClang") include_directories(/usr/local/include) link_directories(/usr/local/lib) endif() -include_directories(libs) - add_executable(test_apdu_parser test_apdu_parser.c) add_executable(test_base58 test_base58.c) add_executable(test_bip32 test_bip32.c) diff --git a/unit-tests/libs/fallback_strlcpy.h b/unit-tests/libs/fallback_strlcpy.h new file mode 100644 index 000000000..a0d94f4be --- /dev/null +++ b/unit-tests/libs/fallback_strlcpy.h @@ -0,0 +1,47 @@ +/** + * @file fallback_strlcpy.h + * @brief Provides a portable fallback for `strlcpy()` if the platform does not support it. + * + * This header defines an inline implementation of `strlcpy()` if it is not available + * in the system C library. It is intended to be force-included by the build system + * on platforms without native `strlcpy` support. + * + * @note `strlcpy()` is a BSD function and not part of the standard C library, + * so many Linux distributions (like glibc-based ones) do not provide it. + */ + +#pragma once + +#include + +/** + * @brief Safely copies a C-string into a destination buffer with truncation. + * + * This function copies at most `size - 1` characters from the null-terminated + * string `src` to `dst`, null-terminating the result if `size > 0`. + * + * It returns the total length of the string it tried to create โ€” that is, + * the length of `src`. If the return value is greater than or equal to `size`, + * truncation occurred. + * + * @param[out] dst + * Destination buffer. + * @param[in] src + * Source null-terminated string. + * @param[in] size + * Size of the destination buffer in bytes. + * + * @return Length of `src`; this will be >= `size` if truncation occurred. + * + * @note This implementation is safe and standard-compliant, but less efficient + * than optimized versions found in libc replacements like `libbsd`. + */ +static inline size_t strlcpy(char *dst, const char *src, size_t size) { + size_t srclen = strlen(src); + if (size > 0) { + size_t copylen = (srclen >= size) ? size - 1 : srclen; + memcpy(dst, src, copylen); + dst[copylen] = '\0'; + } + return srclen; +} \ No newline at end of file diff --git a/unit-tests/mock_includes/os.h b/unit-tests/mock_includes/os.h index 06a1351cb..f263199be 100644 --- a/unit-tests/mock_includes/os.h +++ b/unit-tests/mock_includes/os.h @@ -1,4 +1,5 @@ #pragma once +// clang-format off /******************************************************************************* * Ledger Nano S - Secure firmware @@ -494,14 +495,16 @@ void svc_nvm_write_page(unsigned char WIDE *page_adr); #define CPP_CONCAT(x, y) CPP_CONCAT_x(x, y) #define CPP_CONCAT_x(x, y) x##y -SUDOCALL PERMISSION(APPLICATION_FLAG_NONE) try_context_t *try_context_get(void); +SUDOCALL PERMISSION(APPLICATION_FLAG_NONE) +try_context_t *try_context_get(void); try_context_t *svc_try_context_get(void); // set the new try context and retrieve the previous one // SECURITY NOTE: no PLENGTH(sizeof(try_context_t)) set because the value is // never dereferenced within the SUDOCALL. // and is checked before being used in all SYSCALL that would use // it. -SUDOCALL PERMISSION(APPLICATION_FLAG_NONE) try_context_t *try_context_set(try_context_t *context); +SUDOCALL PERMISSION(APPLICATION_FLAG_NONE) +try_context_t *try_context_set(try_context_t *context); try_context_t *svc_try_context_set(try_context_t *tryctx); // ----------------------------------------------------------------------- @@ -1239,11 +1242,13 @@ SYSCALL bolos_bool_t os_global_pin_is_validated(void); * alternate) * @return BOLOS_UX_OK if pin validated */ -SYSCALL PERMISSION(APPLICATION_FLAG_GLOBAL_PIN) bolos_bool_t - os_global_pin_check(unsigned char *pin_buffer PLENGTH(pin_length), unsigned char pin_length); +SYSCALL PERMISSION(APPLICATION_FLAG_GLOBAL_PIN) +bolos_bool_t os_global_pin_check(unsigned char *pin_buffer PLENGTH(pin_length), + unsigned char pin_length); SYSCALL PERMISSION(APPLICATION_FLAG_GLOBAL_PIN) void os_global_pin_invalidate(void); -SYSCALL PERMISSION(APPLICATION_FLAG_GLOBAL_PIN) unsigned int os_global_pin_retries(void); +SYSCALL PERMISSION(APPLICATION_FLAG_GLOBAL_PIN) +unsigned int os_global_pin_retries(void); SYSCALL PERMISSION(APPLICATION_FLAG_BOLOS_UX) unsigned int os_registry_count(void); @@ -1297,7 +1302,8 @@ SYSCALL void os_lib_throw(unsigned int exception); #define OS_FLAG_PIN_VALIDATED 128 //#define OS_FLAG_CUSTOM_UX 4 /* Enable application to retrieve OS current running options */ -SYSCALL PERMISSION(APPLICATION_FLAG_NONE) unsigned int os_flags(void); +SYSCALL PERMISSION(APPLICATION_FLAG_NONE) +unsigned int os_flags(void); SYSCALL unsigned int os_version(unsigned char *version PLENGTH(maxlength), unsigned int maxlength); /* Grab the SE serial number */ SYSCALL unsigned int os_serial(unsigned char *serial PLENGTH(maxlength), unsigned int maxlength); @@ -1354,10 +1360,10 @@ typedef enum os_setting_e { * Retrieve the value of a setting in a user specified buffer, with a max * length, and return the effective returned length. */ -SYSCALL PERMISSION(APPLICATION_FLAG_BOLOS_SETTINGS) unsigned int os_setting_get( - unsigned int setting_id, - unsigned char *value PLENGTH(maxlen), - unsigned int maxlen); +SYSCALL PERMISSION(APPLICATION_FLAG_BOLOS_SETTINGS) +unsigned int os_setting_get(unsigned int setting_id, + unsigned char *value PLENGTH(maxlen), + unsigned int maxlen); /** * Define a setting's value from a user buffer and its length. In case of error, @@ -1426,13 +1432,13 @@ SYSCALL PERMISSION(APPLICATION_FLAG_BOLOS_UX) void os_get_memory_info( * @param maxlength Size of the buffer to be compared OR to be retrieved * (trimmed depending the TLV effective length). */ -SYSCALL PERMISSION(APPLICATION_FLAG_BOLOS_UX) unsigned int os_registry_get_tag( - unsigned int appidx, - unsigned int *tlvoffset, - unsigned int tag, - unsigned int value_offset, - void *buffer PLENGTH(maxlength), - unsigned int maxlength); +SYSCALL PERMISSION(APPLICATION_FLAG_BOLOS_UX) +unsigned int os_registry_get_tag(unsigned int appidx, + unsigned int *tlvoffset, + unsigned int tag, + unsigned int value_offset, + void *buffer PLENGTH(maxlength), + unsigned int maxlength); // Copy the currently running application tag from its install parameters to the // given user buffer. Only APPNAME/APPVERSION/DERIVEPATH/ICON tags are @@ -1542,8 +1548,8 @@ SYSCALL bolos_bool_t os_sched_is_running(unsigned int task_idx); /** * Retrieve the last status issued by a task using either yield or exit. */ -SUDOCALL PERMISSION(APPLICATION_FLAG_NONE) bolos_task_status_t - os_sched_last_status(unsigned int task_idx); +SUDOCALL PERMISSION(APPLICATION_FLAG_NONE) +bolos_task_status_t os_sched_last_status(unsigned int task_idx); bolos_task_status_t svc_os_sched_last_status(unsigned int task_idx); /** @@ -1759,3 +1765,4 @@ SYSCALL void io_i2c_dumpstate(void); #endif // SYSCALL_GENERATE #endif // OS_H +// clang-format on \ No newline at end of file