From 22da8de96c5bdbac9212a319d6a137db9d315a95 Mon Sep 17 00:00:00 2001 From: Gabriele Della Casa Venturelli Date: Sat, 10 Feb 2024 14:39:59 -0800 Subject: [PATCH 1/2] Support for non-UTF8 messages --- src/bcs/types.h | 8 +++++- src/transaction/deserialize.c | 18 ++++++------- src/ui/bagl_display.c | 43 ++++++++++++++++++++++++++++++ src/ui/common_display.c | 2 ++ src/ui/display.h | 1 + src/ui/nbgl_display_message.c | 50 +++++++++++++++++++++++++++++++++++ 6 files changed, 112 insertions(+), 10 deletions(-) diff --git a/src/bcs/types.h b/src/bcs/types.h index 87aab9c..9315f3c 100644 --- a/src/bcs/types.h +++ b/src/bcs/types.h @@ -121,7 +121,13 @@ typedef struct { fixed_bytes_t *args; } script_payload_t; -typedef enum { TX_RAW = 0, TX_RAW_WITH_DATA = 1, TX_MESSAGE = 2, TX_UNDEFINED = 1000 } tx_variant_t; +typedef enum { + TX_RAW = 0, + TX_RAW_WITH_DATA = 1, + TX_MESSAGE = 2, + TX_RAW_MESSAGE = 3, + TX_UNDEFINED = 1000 +} tx_variant_t; typedef enum { PAYLOAD_SCRIPT = 0, diff --git a/src/transaction/deserialize.c b/src/transaction/deserialize.c index 9835fe6..dbad298 100644 --- a/src/transaction/deserialize.c +++ b/src/transaction/deserialize.c @@ -25,6 +25,7 @@ parser_status_e transaction_deserialize(buffer_t *buf, transaction_t *tx) { return tx_raw_deserialize(buf, tx); case TX_RAW_WITH_DATA: case TX_MESSAGE: + case TX_RAW_MESSAGE: // To make sure the message is a null-terminated string if (buf->size == MAX_TRANSACTION_LEN && buf->ptr[MAX_TRANSACTION_LEN - 1] != 0) { return WRONG_LENGTH_ERROR; @@ -107,7 +108,6 @@ parser_status_e tx_raw_deserialize(buffer_t *buf, transaction_t *tx) { } parser_status_e tx_variant_deserialize(buffer_t *buf, transaction_t *tx) { - parser_status_e status = TX_VARIANT_UNDEFINED_ERROR; if (buf->offset != 0) { return TX_VARIANT_READ_ERROR; } @@ -126,17 +126,17 @@ parser_status_e tx_variant_deserialize(buffer_t *buf, transaction_t *tx) { tx->tx_variant = TX_RAW; return PARSING_OK; } - } else { - status = HASHED_PREFIX_READ_ERROR; } - if (transaction_utils_check_encoding(buf->ptr, buf->size)) { - buf->offset = 0; - tx->tx_variant = TX_MESSAGE; - return PARSING_OK; - } + // Not a transaction prefix, so we reset the offer to consider the full message + buf->offset = 0; + + // Try to display the message as UTF8 if possible + tx->tx_variant = transaction_utils_check_encoding(buf->ptr, buf->size) + ? TX_MESSAGE + : TX_RAW_MESSAGE; - return status; + return PARSING_OK; } parser_status_e entry_function_payload_deserialize(buffer_t *buf, transaction_t *tx) { diff --git a/src/ui/bagl_display.c b/src/ui/bagl_display.c index 2072a24..7196060 100644 --- a/src/ui/bagl_display.c +++ b/src/ui/bagl_display.c @@ -24,6 +24,7 @@ #include "ux.h" #include "glyphs.h" #include "io.h" +#include "format.h" #include "bagl_display.h" #include "display.h" @@ -207,6 +208,13 @@ UX_STEP_NOCB(ux_display_short_msg_step, .title = "Message", .text = g_struct, }); +// Step with title/text for message in raw form +UX_STEP_NOCB(ux_display_raw_msg_step, + bnnn_paging, + { + .title = "Raw message", + .text = g_struct, + }); // Step with title/text for transaction type UX_STEP_NOCB(ux_display_tx_type_step, bnnn_paging, @@ -289,6 +297,18 @@ UX_FLOW(ux_display_short_message_flow, SEQUENCE_SHORT_MESSAGE); // preceding screen : warning icon + "Blind Signing" UX_FLOW(ux_display_blind_short_message_flow, &ux_display_blind_warn_step, SEQUENCE_SHORT_MESSAGE); +// FLOW to display message information in raw form: +// #1 screen : eye icon + "Review Message" +// #2 screen : display raw message +// #3 screen : approve button +// #4 screen : reject button +#define SEQUENCE_RAW_MESSAGE \ + &ux_display_review_msg_step, &ux_display_raw_msg_step, &ux_display_approve_step, \ + &ux_display_reject_step +UX_FLOW(ux_display_raw_message_flow, SEQUENCE_RAW_MESSAGE); +// preceding screen : warning icon + "Blind Signing" +UX_FLOW(ux_display_blind_raw_message_flow, &ux_display_blind_warn_step, SEQUENCE_RAW_MESSAGE); + // FLOW to display entry_function transaction information: // #1 screen : warning icon + "Blind Signing" // #2 screen : eye icon + "Review Transaction" @@ -390,6 +410,29 @@ int ui_display_message() { return 0; } +int ui_display_raw_message() { + memset(g_struct, 0, sizeof(g_struct)); + const bool short_enough = sizeof(g_struct) >= 2 * G_context.tx_info.raw_tx_len + 1; + if (short_enough) { + format_hex(G_context.tx_info.raw_tx, G_context.tx_info.raw_tx_len, + g_struct, sizeof(g_struct)); + } else { + const size_t cropped_bytes_len = (sizeof(g_struct) - sizeof(DOTS)) / 2; + format_hex(G_context.tx_info.raw_tx, cropped_bytes_len, + g_struct, sizeof(g_struct)); + strcpy(g_struct + cropped_bytes_len * 2, DOTS); + } + PRINTF("Message: %s\n", g_struct); + + if (short_enough) { + ui_flow_display(ux_display_raw_message_flow); + } else { + ui_flow_verified_display(ux_display_blind_raw_message_flow); + } + + return 0; +} + int ui_display_entry_function() { const int ret = ui_prepare_entry_function(); if (ret == UI_PREPARED) { diff --git a/src/ui/common_display.c b/src/ui/common_display.c index fcc296d..eeb4487 100644 --- a/src/ui/common_display.c +++ b/src/ui/common_display.c @@ -87,6 +87,8 @@ int ui_prepare_transaction() { if (transaction->tx_variant == TX_MESSAGE) { return ui_display_message(); + } else if (transaction->tx_variant == TX_RAW_MESSAGE) { + return ui_display_raw_message(); } else if (transaction->tx_variant != TX_UNDEFINED) { uint64_t gas_fee_value = transaction->gas_unit_price * transaction->max_gas_amount; memset(g_gas_fee, 0, sizeof(g_gas_fee)); diff --git a/src/ui/display.h b/src/ui/display.h index 9caca4e..05e4759 100644 --- a/src/ui/display.h +++ b/src/ui/display.h @@ -29,6 +29,7 @@ int ui_display_transaction(void); int ui_prepare_transaction(void); int ui_display_message(void); +int ui_display_raw_message(void); int ui_display_entry_function(void); int ui_prepare_entry_function(void); diff --git a/src/ui/nbgl_display_message.c b/src/ui/nbgl_display_message.c index 19607c8..a7bb416 100755 --- a/src/ui/nbgl_display_message.c +++ b/src/ui/nbgl_display_message.c @@ -21,6 +21,7 @@ #include // memset #include "os.h" +#include "format.h" #include "glyphs.h" #include "nbgl_use_case.h" @@ -32,6 +33,8 @@ #include "action/validate.h" #include "../common/user_format.h" +#define DOTS "[...]" + static void confirm_message_rejection(void) { validate_transaction(false); nbgl_useCaseStatus("Message rejected", false, ui_menu_main); @@ -69,6 +72,21 @@ static void review_message_continue(void) { nbgl_useCaseStaticReview(&pairList, &infoLongPress, "Reject message", review_choice); } +static void review_raw_message_continue(void) { + pairs[0].item = "Raw message"; + pairs[0].value = g_struct; + + pairList.nbMaxLinesForValue = 0; + pairList.nbPairs = 1; + pairList.pairs = pairs; + + infoLongPress.icon = &C_Message_64px; + infoLongPress.text = "Sign message"; + infoLongPress.longPressText = "Hold to sign"; + + nbgl_useCaseStaticReview(&pairList, &infoLongPress, "Reject message", review_choice); +} + int ui_display_message() { if (is_str_interrupted((const char *) G_context.tx_info.raw_tx, G_context.tx_info.raw_tx_len)) { nbgl_useCaseReviewVerify(&C_Message_64px, @@ -89,4 +107,36 @@ int ui_display_message() { return 0; } +int ui_display_raw_message() { + memset(g_struct, 0, sizeof(g_struct)); + const bool short_enough = sizeof(g_struct) >= 2 * G_context.tx_info.raw_tx_len + 1; + if (short_enough) { + format_hex(G_context.tx_info.raw_tx, G_context.tx_info.raw_tx_len, + g_struct, sizeof(g_struct)); + } else { + const size_t cropped_bytes_len = (sizeof(g_struct) - sizeof(DOTS)) / 2; + format_hex(G_context.tx_info.raw_tx, cropped_bytes_len, + g_struct, sizeof(g_struct)); + strcpy(g_struct + cropped_bytes_len * 2, DOTS); + } + + if (!short_enough) { + nbgl_useCaseReviewVerify(&C_Message_64px, + "Review message", + NULL, + "Reject message", + review_raw_message_continue, + ask_message_rejection_confirmation); + } else { + nbgl_useCaseReviewStart(&C_Message_64px, + "Review message", + NULL, + "Reject message", + review_raw_message_continue, + ask_message_rejection_confirmation); + } + + return 0; +} + #endif From 0bc69d9839c360d6b7402a142071c89ad25c5fc4 Mon Sep 17 00:00:00 2001 From: Gabriele Della Casa Venturelli Date: Sat, 10 Feb 2024 14:40:58 -0800 Subject: [PATCH 2/2] Non-UTF8 messages testing --- .../test_sign_long_raw_msg/part0/00000.png | Bin 0 -> 428 bytes .../test_sign_long_raw_msg/part0/00001.png | Bin 0 -> 426 bytes .../test_sign_long_raw_msg/part0/00002.png | Bin 0 -> 398 bytes .../test_sign_long_raw_msg/part1/00000.png | Bin 0 -> 396 bytes .../test_sign_long_raw_msg/part1/00001.png | Bin 0 -> 505 bytes .../test_sign_long_raw_msg/part1/00002.png | Bin 0 -> 520 bytes .../test_sign_long_raw_msg/part1/00003.png | Bin 0 -> 519 bytes .../test_sign_long_raw_msg/part1/00004.png | Bin 0 -> 515 bytes .../test_sign_long_raw_msg/part1/00005.png | Bin 0 -> 515 bytes .../test_sign_long_raw_msg/part1/00006.png | Bin 0 -> 491 bytes .../test_sign_long_raw_msg/part1/00007.png | Bin 0 -> 384 bytes .../test_sign_long_raw_msg/part1/00008.png | Bin 0 -> 341 bytes .../test_sign_long_raw_msg/part1/00009.png | Bin 0 -> 408 bytes .../nanos/test_sign_short_raw_msg/00000.png | Bin 0 -> 388 bytes .../nanos/test_sign_short_raw_msg/00001.png | Bin 0 -> 400 bytes .../nanos/test_sign_short_raw_msg/00002.png | Bin 0 -> 341 bytes .../nanos/test_sign_short_raw_msg/00003.png | Bin 0 -> 408 bytes .../test_sign_long_raw_msg/part0/00000.png | Bin 0 -> 580 bytes .../test_sign_long_raw_msg/part0/00001.png | Bin 0 -> 457 bytes .../test_sign_long_raw_msg/part1/00000.png | Bin 0 -> 431 bytes .../test_sign_long_raw_msg/part1/00001.png | Bin 0 -> 956 bytes .../test_sign_long_raw_msg/part1/00002.png | Bin 0 -> 926 bytes .../test_sign_long_raw_msg/part1/00003.png | Bin 0 -> 469 bytes .../test_sign_long_raw_msg/part1/00004.png | Bin 0 -> 364 bytes .../test_sign_long_raw_msg/part1/00005.png | Bin 0 -> 471 bytes .../nanosp/test_sign_short_raw_msg/00000.png | Bin 0 -> 420 bytes .../nanosp/test_sign_short_raw_msg/00001.png | Bin 0 -> 467 bytes .../nanosp/test_sign_short_raw_msg/00002.png | Bin 0 -> 364 bytes .../nanosp/test_sign_short_raw_msg/00003.png | Bin 0 -> 471 bytes .../test_sign_long_raw_msg/part0/00000.png | Bin 0 -> 580 bytes .../test_sign_long_raw_msg/part0/00001.png | Bin 0 -> 457 bytes .../test_sign_long_raw_msg/part1/00000.png | Bin 0 -> 431 bytes .../test_sign_long_raw_msg/part1/00001.png | Bin 0 -> 956 bytes .../test_sign_long_raw_msg/part1/00002.png | Bin 0 -> 926 bytes .../test_sign_long_raw_msg/part1/00003.png | Bin 0 -> 469 bytes .../test_sign_long_raw_msg/part1/00004.png | Bin 0 -> 364 bytes .../test_sign_long_raw_msg/part1/00005.png | Bin 0 -> 471 bytes .../nanox/test_sign_short_raw_msg/00000.png | Bin 0 -> 420 bytes .../nanox/test_sign_short_raw_msg/00001.png | Bin 0 -> 467 bytes .../nanox/test_sign_short_raw_msg/00002.png | Bin 0 -> 364 bytes .../nanox/test_sign_short_raw_msg/00003.png | Bin 0 -> 471 bytes .../test_sign_long_raw_msg/part0/00000.png | Bin 0 -> 11897 bytes .../test_sign_long_raw_msg/part0/00001.png | Bin 0 -> 5208 bytes .../test_sign_long_raw_msg/part1/00000.png | Bin 0 -> 14377 bytes .../test_sign_long_raw_msg/part1/00001.png | Bin 0 -> 7712 bytes .../test_sign_long_raw_msg/part1/00002.png | Bin 0 -> 21556 bytes .../test_sign_long_raw_msg/part1/00003.png | Bin 0 -> 8440 bytes .../test_sign_long_raw_msg/part1/00004.png | Bin 0 -> 5084 bytes .../test_sign_long_raw_msg/part1/00005.png | Bin 0 -> 10733 bytes .../stax/test_sign_short_raw_msg/00000.png | Bin 0 -> 7712 bytes .../stax/test_sign_short_raw_msg/00001.png | Bin 0 -> 8186 bytes .../stax/test_sign_short_raw_msg/00002.png | Bin 0 -> 8440 bytes .../stax/test_sign_short_raw_msg/00003.png | Bin 0 -> 5084 bytes .../stax/test_sign_short_raw_msg/00004.png | Bin 0 -> 10733 bytes tests/test_sign_cmd.py | 87 ++++++++++++++++++ 55 files changed, 87 insertions(+) create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part0/00000.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part0/00001.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part0/00002.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00000.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00001.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00002.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00003.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00004.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00005.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00006.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00007.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00008.png create mode 100644 tests/snapshots/nanos/test_sign_long_raw_msg/part1/00009.png create mode 100644 tests/snapshots/nanos/test_sign_short_raw_msg/00000.png create mode 100644 tests/snapshots/nanos/test_sign_short_raw_msg/00001.png create mode 100644 tests/snapshots/nanos/test_sign_short_raw_msg/00002.png create mode 100644 tests/snapshots/nanos/test_sign_short_raw_msg/00003.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part0/00000.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part0/00001.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00000.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00001.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00002.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00003.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00004.png create mode 100644 tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00005.png create mode 100644 tests/snapshots/nanosp/test_sign_short_raw_msg/00000.png create mode 100644 tests/snapshots/nanosp/test_sign_short_raw_msg/00001.png create mode 100644 tests/snapshots/nanosp/test_sign_short_raw_msg/00002.png create mode 100644 tests/snapshots/nanosp/test_sign_short_raw_msg/00003.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part0/00000.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part0/00001.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part1/00000.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part1/00001.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part1/00002.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part1/00003.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part1/00004.png create mode 100644 tests/snapshots/nanox/test_sign_long_raw_msg/part1/00005.png create mode 100644 tests/snapshots/nanox/test_sign_short_raw_msg/00000.png create mode 100644 tests/snapshots/nanox/test_sign_short_raw_msg/00001.png create mode 100644 tests/snapshots/nanox/test_sign_short_raw_msg/00002.png create mode 100644 tests/snapshots/nanox/test_sign_short_raw_msg/00003.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part0/00000.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part0/00001.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part1/00000.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part1/00001.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part1/00002.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part1/00003.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part1/00004.png create mode 100644 tests/snapshots/stax/test_sign_long_raw_msg/part1/00005.png create mode 100644 tests/snapshots/stax/test_sign_short_raw_msg/00000.png create mode 100644 tests/snapshots/stax/test_sign_short_raw_msg/00001.png create mode 100644 tests/snapshots/stax/test_sign_short_raw_msg/00002.png create mode 100644 tests/snapshots/stax/test_sign_short_raw_msg/00003.png create mode 100644 tests/snapshots/stax/test_sign_short_raw_msg/00004.png diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part0/00000.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part0/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..c2420afe1d5b2ea19c999ee43f90c67f120d4f5b GIT binary patch literal 428 zcmV;d0aN~oP)CI>TUk!C8`c(mGx8WRa z!xd`|I)kHai-|mfH_EU=@WQ<8?vt;iutXgsJ7fsT#RT=*@-kDbFv|(3aIfXRyfj@+?msfv|9!ih8`J$fW)Vn zz~CO>;T|BN_mLd%e%vjPJ%D;eMaiRY#At6&Lsw*_J&nWB{N+Jii(`R~LM#+7vH7^1 zF{YKPgOW#*A8m0f)G#fTs8dpVu7-&qzkS-3oiTU-^*<9k78P5Y>WHD!W4f~aS-%if z=ZR@VlnSwV`CZM!$c^HXr@$^f3+e?K9T@e1AEk+s4NtSE;t^;oLOod9f%9u_+g!V> zg-|*Hr>)vEHnNj9aru-OX(LJU#UxzW#2tv5bk|2oN7xMoGovT4Cs$JRS3(FO58w+7 Wi7X{&VtL~L0000c)VqKK#{wdKnWi$6d?v9bX;j^j9QWi!)!9>|JaO=b{v36CU) z0cr0w@kQVOjFX95nBEb_$oN_*Ccq0bTBPKfjar;K&g1{NT5vD_onP!lIg;KfnC^hl zix+41G|S&3?|-Zf7zXd(dw3rn8-PW;55_4-c#x7Wj=5pvDNW`dEbvAlv3ns?pxO9o zPhC*7wD)0!0C2ii_x?fM)KmrR6WVTjCP*1@|wl~-{6W52;vK)0%=LIq3q5GQ4xzqJOvqJ_rIVAFyd5q9LJf+4};Sn UVzi>sz5oCK07*qoM6N<$f|h^9Q~&?~ literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part0/00002.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part0/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..2d1b9409c6522828731aab12cfaa18aa574835da GIT binary patch literal 398 zcmV;90df9`P)RF|2j{?)lOikugDmzd53ViMBoUAZ0002!$+3qIz4I&b>fHdMW2f!& z1h0b(&;d%0{kNTm{8DfqsBo4AO-$R(ACw}K&^rTM{ULg66?*q>z?5OT5X#D3 zgT-sK1>rGwQRK>bDPms_GiviM=;K$~jo8>iu7ZE4roejmD{9aEJRlCfEXq@VIeX=2UOS4^go=mtjW9`lm8lGU*`Ko sh^YTB$;Y$hZ&{Dntm1wV008L97k%0p$W|+otpET307*qoM6N<$f)F>k>Hq)$ literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00000.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..f06b65ffbaebdf97e40c066e262aadcd39755f53 GIT binary patch literal 396 zcmV;70dxL|P)t*Pb8Q?ykqHG`A` z_ZknGyeto}KRM4}dsXd5m_*g3h^IwQk}RVs_Gm{9O;W8CO|c=Gyx)GRMmQ+OZxbm qkSD$~1a(B~{{=k_@+w82?Mgy9ySuWWgX%;2> zvDQxjYe%e2NlRH8($fQ%(gzqNQCTtoImi4GTL;zw`)pim_%z z$EbL}gzu59QY|jm%kU*UtlUnGw74K?7VAASn}R_|!wazcFR2RF-?dcj>EV?sZWgH) zk!o4G&*_y_iLM1999wgCaod4p5WsEvB;FX1XLnXGYH<`(&pBtKKjj^1sO}sjZ*ECC vuSr9D$=U2v`rnkzQ|aPGQ4~c{6a~N=J;rvul^CgI00000NkvXXu0mjfuVdY! literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00002.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..03ca92b07d81d2d83bebf178c29947c6c18f3127 GIT binary patch literal 520 zcmV+j0{8uiP)qa`X6CqUV%vA{JWXK2(0yO?xvgP2$V%K;C844XJT?gP0EN4f3C zGL`y_2d&3zwgVCpz^`?t0yhy4MRYSp^?R<2Wlefa=7GDnfl-l?+Jrq+G5!_G=MySPk|arzWQ1>HXOz6LoIyJP0000< KMNUMnLSTYkL+q3Q literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00003.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..ba6782fa84bfb796fb2860ef89c38cb6c3758977 GIT binary patch literal 519 zcmV+i0{H!jP)}OKXpJ5q^DQJcwVkP9e2fsoEw3Sl^T$*&a#i`!M7e z_}iVz(vZHsYN~zf53p#WV&ViSuDTZNo{=*&s)J=13GU}a`H2m%9PlL|W|QT>)j=JO zc014fQZCw$$Ls{8Bw*jxm0IXTSc>RsM2+=JlW;j93SnB-A6Xs97&g_HR~Nyr=v%nV zx2{xEmhn94Hs70j9`tq8qk0i&q4HwBUvX5ESW|uwj3#lEy9sg+K8f2!p-^~TWMD%v z50hIATfpH>2YaMXu*9mu@UWdkP%23kE9{h!WkHHi(F~V43ft!(TM7^?Y;H9645`$e zd5GQWDk%|Pfa#m?5ZL{97rvLMm|ZtvCA{cTc9A#G#ZuU0J6od3XTAW#2H-ie+|DQS zxkRY7ZzmzKcx)$fqB#Rio`_6l{<34kt!DhR+DiOBxk`#JAx1=dSdJC zMDI^|rCf7VW~|1>YLYGKEP^dgEklbCbAmWZB9TZW5{X14JOK$Cj;F(i(DDEP002ov JPDHLkV1kwr>c0R0 literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00004.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00004.png new file mode 100644 index 0000000000000000000000000000000000000000..88c45cd2c4543b2117cffadcecfda67825fe1d48 GIT binary patch literal 515 zcmV+e0{s1nP)G@VdQ_XV5!eI7 zifI44O)&{eyH``A#jrg#vmOAJsxRuC2_G7@VcJxo+Jo5%U>w{9(cz*ZC&Z^}Lr&N2 zbO%xRt2OQ(^YK`!jkn19BoL>TCQC;dH_-)E>+DQ?)^qQIGmW zERpU4@>yX!9{RJ4o{)=uXR0@49y0q(cMITdd8f5s*z?h@7_*gq-$2a4fAU?s&~E%4 z@HG;G# zoKV`0Basq~wU@AkS-pxd=vjvbF5mQ2VMcp zFXaEBDo?^{Jw?^J{Qp^PIW2+gSOLIQb5Z9^?#oj)48^3vV|Mu+6X03kDX?y{Lre)Y(N%Qg8tAK?BYH1&-L?@D=2sY!adwuF5+z!}<P0|X<;8rzqXv}kMX}^O#@&RPgLiVfUFcM72U)y^ zs<%q;bVD;$G3&~z%7m3O8KB3bIWPjW6qpeVbLe&4^CAeI67efzOnFw3QyA;sx<;3@6NsncbxCN!|kO9&a*PjvEwl;JszylcaFnAwVI}xEYQY_8Z2;`6H94MR2Xl>t zR;nG%j=k3Hr)^Kz7s!!~&gyZFfb1IRPEiy^Q4~ed+AoYC!PmXPJB0uM002ovPDHLk FV1gVg^A-RA literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00006.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00006.png new file mode 100644 index 0000000000000000000000000000000000000000..6dc8ceb1b3dd31d5da9ef5cd898d6703ca15ec41 GIT binary patch literal 491 zcmV$Zvuv4;9Z*Sl`CWc|_f~_W4hEk=>8kDtWd4x4Bsn0{- z0c>5!?^9KlLhJ2ARPEdA(|VWD5|xe}pe)s~z&VrWvdacbGqzXeobnwLVAA)JOFeV5ufT!AG8oX~;2GAGgD5*Y~B+-*RErmUTUXfURsc9vJ0!gQe z&`lUlV>o_YKk%Jtq5mfA+C=ceIaRQT_l%n5?VT3>ay9`yZaJJKot<8_8(?YEH`(e0 z$bn#|;hHz+HLYsk^Z`d&u_PB;!HkQ0$G+;H^7=7n4@331HYV5#1a-qK8eka8)P}>* hBuSDaNs@$!h@OW=c8#s^{r?}_hxVbJ^8nG5lI(qMwG0000_<<&TDTa!6HCaSn#TYt;R zEpYF^@5X@_k!q02cZaVN@HKx=p zZsd=pcLH)G5bs7y83qwQis)*1&Gn{5IGm7$cv;pjMIA^VvD61OM2ewf7F#o&DZ}wP z*}VML+OyExUbpHbXsL3t*pF=M|KkKf6FYtq2Rz|AZ>cE~CWYjR z5I^)Mj5nc(wFSGMgh3y0z+m8j!N387fdi(*)e*C%MU=%e5+0RKVcap)`hCEC;cv~v e4gdfEfE8bY;A2-u*(ogm0000_wxG+Yry2qARt#sf<#$}=)VJ~ zBlvESR-Jq3=$jydfC?r!$iuAw9oGJ!U-M%YMJ+y&Ch%TCM^JUq5BGkf8O_{y`#mQ} nq4{V^xv44i3V1v$0C_ea3_go|-rj`700000NkvXXu0mjfd&QW1 literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00009.png b/tests/snapshots/nanos/test_sign_long_raw_msg/part1/00009.png new file mode 100644 index 0000000000000000000000000000000000000000..02d922befda7ad5494398ded74de6ab739697b06 GIT binary patch literal 408 zcmV;J0cZY+P)tP{{Ii&hxNhEIZ=euB@oYbT~S*K@+uU9<2a7vtmHgakKmt)-tWf1Xpr8k z2T&vT^|oJ@_?%nP+p5JO0W+Zbn)L-eycYldd3+b_womY&!WamUpjlo^(xgg)h64cI z$DKbE@eyJs>50KMbammfBqPN6Lr+Bu+=K(zW6f^D^ksM+w?|?B%^1|tnHtyot!oEk zU^oB)nH_7|RqwY>id<|5AlxRnT_%=vLiLAs-CF!G6^C;(09o(j+kkB*s1Wo%vL!e< zch7)hC{c^>lVV}V@AI5e2`mU^4k_u3Sp5+)43v3=SY98|gPc}GtBk_yuWlm3!dPHh z3{jM0+(p;zWfB{oc+*sH$8@+CG;uXi)~30wUO+cALhNP2PoWm6V)g$41ylYNXx&z% z`isc`N-r}H4|4WZn+>Ls8Wmv@&HnKs<1FD8!#&=}Xx$G!PoP zUqaXGeRw#IxPU|Sv6_gDO@(!!O><2D6soNNu}A>o{O-dA)lg0D+@hwFj#8uU=j;?z zkO%M#c2w0W!Xzp#MLaEfkXt0WVvBaw)CAQ^(G?BR1{ygWBMf3)`4hfRXiK?nTQ36Ogyjgi{)5vI|T7cXWVs4$fA8Zuby^A4|!srA!s04 i|1aoikS78FfX)u7xAbN92cC!k0000DWAZrFMMNR9e-$T!UqR9gP?wT4ATHX(vGQ~dwl&R|EsMe4i z+S>>JWz#Yhn}S+ySs!H(LJ+oPekR uloOuv_wxG+Yry2qARt#sf<#$}=)VJ~ zBlvESR-Jq3=$jydfC?r!$iuAw9oGJ!U-M%YMJ+y&Ch%TCM^JUq5BGkf8O_{y`#mQ} nq4{V^xv44i3V1v$0C_ea3_go|-rj`700000NkvXXu0mjfd&QW1 literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanos/test_sign_short_raw_msg/00003.png b/tests/snapshots/nanos/test_sign_short_raw_msg/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..02d922befda7ad5494398ded74de6ab739697b06 GIT binary patch literal 408 zcmV;J0cZY+P)tP{{Ii&hxNhEIZ=euB@oYbT~S*K@+uU9<2a7vtmHgakKmt)-tWf1Xpr8k z2T&vT^|oJ@_?%nP+p5JO0W+Zbn)L-eycYldd3+b_womY&!WamUpjlo^(xgg)h64cI z$DKbE@eyJs>50KMbammfBqPN6Lr+Bu+=K(zW6f^D^ksM+w?|?B%^1|tnHtyot!oEk zU^oB)nH_7|RqwY>id<|5AlxRnT_%=vLiLAs-CF!G6^C;(09o(j+kkB*s1Wo%vL!e< zch7)hC{c^>lVV}V@AI5e2`mU^4k_u3Sp5+)43v3=SY98|gPc}GtBk_yuWlm3!dPHh z3{jM0+(p;zWfB{oc+*sH$8@+CG;uXi)~30wUO+cALhNP2PoWm6V)g$41ylYNXx&z% z`isc`N-r}H4|4WZn+>Ls8Wmv@`z`V0000000000001B&=bUps z9fgVS(*b-sffG>Ye)J-U$}WFjXL?HM zvPfKrT>&Yja8JA=SOS&{eYlS(HdTdDsp^TZB9jEMy%UkVgGfiU{3oj_WabHFPtxM`q$vP_nRG9A-D%l z^WDZx{_eQ^(IL>*QV4b+^E~c#COrG3xLyPR0DvbJ8*6E1@b{8mq>4dfpiH0Z zAG*eh7)`|5L|T&LMe^l@{N!O`;JsL3{H?*+wzh_)&~v@$vrA|qGW~fG7uoiT+<9FF zDGykVsRE3B?6)jwr?8~3j3_)iO#*~tkY_A*Sp~C$9V1;{b-pRA2tB0dy6c;6SAcxC zkvNNttcwFIG%4G;EI&(_y^O&B_;*~4+X9xL!`#aa4Fo(_0000000000K*KLZfh4pN SdPXk*0000P@)+k+@4A&=7?{fRSKF|MxIuN$a_GV1=zB000000000m!F%t$-<`#P z_wEE%vQ_%vISq)_ch2q2WQef_)Mgl?)faOO2(lj7t-hFRKrC@Ay6NhR$ZK~3Gs;=W zX!XV12ne!r+pWHB=HBuH005whH+GjgDX+rn*S38WrrN2Rxx$weQc4qhKm+7A`FA{J zcR}y}#Bb9}hsS$4=MIw5lV8*`0vcD#uSy(@0I9WQpExMBCH7C*Wb;X{g_o*lE_zbk z16Acc(K++<%=nrc`8j{c4%wa37@Fw>W#;Ar006+H{I7U2JLrki2tFEZ?(rtA+Q=-Q z@|g1NT!_WBRa(t-F*Q`>!)Q`$C8ht|*!byXkp4^*Dd!&<+|ewL)5zJGx%mB8uW+%Ln&!O$V!?brmm+X(S$vUI< zoB94AolJf{;7Lq=LZ+>@s<=N0000000LXm-^5SD-<|qUF00000NkvXXu0mjfQGncL literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00000.png b/tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..6644903b5bb3d33e0835de0ae523097ff5dba586 GIT binary patch literal 431 zcmV;g0Z{&lP);qG3P@ax@yi>g4&#a&e?#qK}*RSBvq0B%OpTygp* z-4#&9S~2u1y-z`jkD)<4;~)kA0DzQ~Pc#w^!s{OWVw`>8m%4PjVOJyELzUWe?8#Sk zZY{{&jt0Oki*6QZrg5mz4LSzh7~N86e>$=qShiBmxs>9bRN4QFp5Bc&bb8b7+Tqcn|DvK~>9Bjl1Otmg6Sg)^)j+Z)^+z0D$*ubDyGLvARa}i&>8$ za1g5wR+H84mC>VKt;$e#tKCAk+FqZ3Di=yCz+S0xrCW6}rV&CPg`JP{lXSEWx`k2Z zE&|mzVViVot8L@3dwujRsLgKfSJPn2vTewi{-4QrY)7hF&|?Vyf54>nWB>pF0002o Z`~l`#Y3Hh$(Z3`?F97L(|k`Y0tpdg+~u}`@jiY0a_9?IwKxL#~Qg9H@D)R=)#Ar1eMIH51|x+bFU$kz^VA9)$#7 z#r^B@pM=F{#dJ?31!<$i?D6ESfH>)&02(QKwVJL=k0PQ1zj(Q7jeE7onEy=cTGDU& zVr`aQ$hagzW32F1Xd9wQL64HW2RtV_D}bw@FL|~zm!VyH6HQ&=?MC^?oz}8BQgq%^ zhEmVP>hn-upo(>>+wBMMv9BMF8sv)pZ3v;R=-*78gI7{n=#@A@u5)lHJiPuJF|gv) z`ZWFNce3INklG3YHkYV#XzWUz(LoE9i{b_GbSGool}^YB9<;S*73-HhTt z316*tg~S}B^F!o0(2Z?c5GZr>_^!&*aVCYj*OX9As36L6yA?*f3O+@XA z^G63}PC#0)6mOn1X}V&s*g1!BW4IIOh0H~lt&xjDd2G?TUBX?Ba{>TbR2o^pN{z+)z@*Mnng-S7Dn7 zeMKNHGYO)1f->P~nY2ShNks%y!~tXo*v)nlltSChKT#4lMS7b&MD<)GqXlhw#6?Ub ztc3h&%G0coaMDls8i9{<2iiwV_NWj%%ZnL*iwPRsVQXsSim9Qihg4Nx3mTI~*Vb6Z zT+uS0oN)MZ@NixGaqeK(I~mG#GVQt>_{K$lq7*7a?F^2Wq4ryjr;GG^Y79*#-?0000v(T5Y zWs;Dlsu0?R7B%P;!V5g6{v%>Z$W60kZ;?V4A3>kNs%^{2nP3ZVV^|lV#?G*%F4{ z8OAN=W~Gx%Sj`nEPPt6WJUowQxB+fWHMn2TeLgMGIWE8F5!b^PQ^Y zfmr^(r4&(|sV_KQm@L%FW|vewNi6R#D4I^6soEjBsSh=Hz{i%@2cUG7oTmRZw_hZ&8~RkRAY$-jv`=`MwdvYSv4b+WmuuDjbA{ ze9NfRD~I&JI5jYxBuSDaNs^>Y|33hv=2oI#hVZluG2HcmBAH;KWY7~!@M_1At^-^h z6bX8`z;LlL!4HYGw-&1)5vXnSM1C8pCVSyrE>IM|a?UDc^rfMw3hd z(mT)!1hHX^1gqGomO0h2%fiqkNs=TjF A+5i9m literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00003.png b/tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..6d07ac672478d3c750496d20b03dc4659d7f5db2 GIT binary patch literal 469 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|^i%>EaktG3V`#=uL+dcp4J> zipviDn|>s&=EaOeg_bR>j(_*7yGR{cx>O3J=|frlT`^5n&Epd3YMUocxnvlT{Ns4I zq1)D87l{d{E;fqnn`d=t*QLD2bJqR0j`Xs;uTvJeZffu3_X}!%uQ+)A8cXi1UD3Cb zuf)~F>@(WOlDo^*_IHr}+vx4vtb$!1?^))jnLkauNAJqpOH!>D-Fz26+sk}q%bR2K z-kp!T?RD7lR`yHJ504T~TwZb8qEh@pMZgM4A1jGhbLaWr*;x5{WzNzic@JgpX|A(x z3ORat!3rBu$G@j4{*@e#JAIs^!rsH8l;gR1?@mkrjtSs=$yO-NJ z=C!|)leS+NA@qEiex99SeCYhS zx{A93-*_r+{n%X`lBjkqL3N&!b|K&TBVRz_iwrK?Fg}~bUQ~NKG#VuA>FVdQ&MBb@ E0QM5wx&QzG literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00004.png b/tests/snapshots/nanosp/test_sign_long_raw_msg/part1/00004.png new file mode 100644 index 0000000000000000000000000000000000000000..53ae65195fbea5b281a1bc1a80351dbf1cd79ff8 GIT binary patch literal 364 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|=-%ba4!+nDh2#AYZeBfa}G~ z%X2sUSKTFSd4J{-YHcY(QO5;J{<~e9q=7F?O4)!WO}6UUdH! zS+Hz=(4})vCM2-VD4nt3W%LdvkyzeG%km#`1t_mu*zR}#jNB{EKZnW}g5-=Bym-_% z`=7%C>zxJL|9msNSMXnbQRayy^)nr>EU7olTHqoc^vG(B%bo(Id*|kR{84!`z2x6n zZ`;PkbrPvd6U}A>Y0chs_tyHmLi6kw6c{>JvYiQ=+MTFTx8d*9^V|R0+_75oZt9or zLetinU!`YMvFyLCb8XxElhO0{v2rTkNR$jMW7~4}*8a52+MC^J%KMbxPN-JRb2RNP zEsp0ebAPS3=e2G53#Z$XZAI6Yd=Y#bpS7_dOvl2n-YDN3F!8|Zw}1F7^_|`|7^d-WZmAca`5Sx-r#o;?yf)8 zamTB%jcSo;Cxq7w@YDAG;F6%vdkN~UKMPCH+44GbgZ0O61|;n~NJs3(zH0)OyObgT z0C=#wjq|e8y=uL$7S9x$jZ$lEcdNB^nwK)>H6PNyiQd|Lm0PfUPFtnWXfpPxEGL>bcmBgvGOE8^+M17u26I_+AT#bzzP>rah~%<8qgG%2*J4WoW2uMlMt z9%lVFg?Z36N3j^!4wH0b{3O8WBJ4_G2v2AEUeKM8006+%PQAmq$BV*J0ebACz0uB~0+iy*OAtRT7 z96rVI*8>0m0002o%^$0xJh2#?r-}do N002ovPDHLkV1fi5-8TRL literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanosp/test_sign_short_raw_msg/00000.png b/tests/snapshots/nanosp/test_sign_short_raw_msg/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..76560b8c0f3bd5e50f8a56f6718ab7bb80ca024f GIT binary patch literal 420 zcmV;V0bBlwP)x`j)$#)l2xD5^B9vd+L007`}(Kn1u*nQ(gU3$CFT~(<~$DUkDezhFAAUQ3} zEKr}6Hrvhe=ha$+4lgrCZz=Szj${XZ9Q$FKKXKgpgqT`u@~eeA0k6)fAa3Q_A}8il z^uw7iLF&k@gUxaT;buTjUb6liK3fL^007{*`rK#IpIDufBN=yN2{vMCW3^Z{TSo7C zG?k$=t7gHh_U-E*e(N6KA#5tU`xhD?|wrTh)ltmPTuXJyZlmS>b3O#L0@`b_Abe*_$ z^7>S^x)d(Nq5;;TM)|dC*iki-H!smSDJSX=s%Z+HQ}A#i8iJitv5gVVa>;UH~$p67R+s* zDQq5oqD^?lPEEGkZbRo!F8?C$2`0UcPSx3Pbejiezr11qHgnf{Q@t~|k7H_5J$(R% z%v^K5(J_7S$qVJt12Age@ZZ<2#~j5DKvMtoH^oD3!WWaJdmFmvTzA<>FQ3sTXeOEL zPZOk?>`%rR+=*T2P8&&P3{sI^0000000000000000000W%|C8^YlGBj>%IU0002ov JPDHLkV1m0&*TMh* literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanosp/test_sign_short_raw_msg/00002.png b/tests/snapshots/nanosp/test_sign_short_raw_msg/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..53ae65195fbea5b281a1bc1a80351dbf1cd79ff8 GIT binary patch literal 364 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|=-%ba4!+nDh2#AYZeBfa}G~ z%X2sUSKTFSd4J{-YHcY(QO5;J{<~e9q=7F?O4)!WO}6UUdH! zS+Hz=(4})vCM2-VD4nt3W%LdvkyzeG%km#`1t_mu*zR}#jNB{EKZnW}g5-=Bym-_% z`=7%C>zxJL|9msNSMXnbQRayy^)nr>EU7olTHqoc^vG(B%bo(Id*|kR{84!`z2x6n zZ`;PkbrPvd6U}A>Y0chs_tyHmLi6kw6c{>JvYiQ=+MTFTx8d*9^V|R0+_75oZt9or zLetinU!`YMvFyLCb8XxElhO0{v2rTkNR$jMW7~4}*8a52+MC^J%KMbxPN-JRb2RNP zEsp0ebAPS3=e2G53#Z$XZAI6Yd=Y#bpS7_dOvl2n-YDN3F!8|Zw}1F7^_|`|7^d-WZmAca`5Sx-r#o;?yf)8 zamTB%jcSo;Cxq7w@YDAG;F6%vdkN~UKMPCH+44GbgZ0O61|;n~NJs3(zH0)OyObgT z0C=#wjq|e8y=uL$7S9x$jZ$lEcdNB^nwK)>H6PNyiQd|Lm0PfUPFtnWXfpPxEGL>bcmBgvGOE8^+M17u26I_+AT#bzzP>rah~%<8qgG%2*J4WoW2uMlMt z9%lVFg?Z36N3j^!4wH0b{3O8WBJ4_G2v2AEUeKM8006+%PQAmq$BV*J0ebACz0uB~0+iy*OAtRT7 z96rVI*8>0m0002o%^$0xJh2#?r-}do N002ovPDHLkV1fi5-8TRL literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanox/test_sign_long_raw_msg/part0/00000.png b/tests/snapshots/nanox/test_sign_long_raw_msg/part0/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..2d20155f3589238276c8e24b49401b23d82327ec GIT binary patch literal 580 zcmV-K0=xZ*P)`z`V0000000000001B&=bUps z9fgVS(*b-sffG>Ye)J-U$}WFjXL?HM zvPfKrT>&Yja8JA=SOS&{eYlS(HdTdDsp^TZB9jEMy%UkVgGfiU{3oj_WabHFPtxM`q$vP_nRG9A-D%l z^WDZx{_eQ^(IL>*QV4b+^E~c#COrG3xLyPR0DvbJ8*6E1@b{8mq>4dfpiH0Z zAG*eh7)`|5L|T&LMe^l@{N!O`;JsL3{H?*+wzh_)&~v@$vrA|qGW~fG7uoiT+<9FF zDGykVsRE3B?6)jwr?8~3j3_)iO#*~tkY_A*Sp~C$9V1;{b-pRA2tB0dy6c;6SAcxC zkvNNttcwFIG%4G;EI&(_y^O&B_;*~4+X9xL!`#aa4Fo(_0000000000K*KLZfh4pN SdPXk*0000P@)+k+@4A&=7?{fRSKF|MxIuN$a_GV1=zB000000000m!F%t$-<`#P z_wEE%vQ_%vISq)_ch2q2WQef_)Mgl?)faOO2(lj7t-hFRKrC@Ay6NhR$ZK~3Gs;=W zX!XV12ne!r+pWHB=HBuH005whH+GjgDX+rn*S38WrrN2Rxx$weQc4qhKm+7A`FA{J zcR}y}#Bb9}hsS$4=MIw5lV8*`0vcD#uSy(@0I9WQpExMBCH7C*Wb;X{g_o*lE_zbk z16Acc(K++<%=nrc`8j{c4%wa37@Fw>W#;Ar006+H{I7U2JLrki2tFEZ?(rtA+Q=-Q z@|g1NT!_WBRa(t-F*Q`>!)Q`$C8ht|*!byXkp4^*Dd!&<+|ewL)5zJGx%mB8uW+%Ln&!O$V!?brmm+X(S$vUI< zoB94AolJf{;7Lq=LZ+>@s<=N0000000LXm-^5SD-<|qUF00000NkvXXu0mjfQGncL literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanox/test_sign_long_raw_msg/part1/00000.png b/tests/snapshots/nanox/test_sign_long_raw_msg/part1/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..6644903b5bb3d33e0835de0ae523097ff5dba586 GIT binary patch literal 431 zcmV;g0Z{&lP);qG3P@ax@yi>g4&#a&e?#qK}*RSBvq0B%OpTygp* z-4#&9S~2u1y-z`jkD)<4;~)kA0DzQ~Pc#w^!s{OWVw`>8m%4PjVOJyELzUWe?8#Sk zZY{{&jt0Oki*6QZrg5mz4LSzh7~N86e>$=qShiBmxs>9bRN4QFp5Bc&bb8b7+Tqcn|DvK~>9Bjl1Otmg6Sg)^)j+Z)^+z0D$*ubDyGLvARa}i&>8$ za1g5wR+H84mC>VKt;$e#tKCAk+FqZ3Di=yCz+S0xrCW6}rV&CPg`JP{lXSEWx`k2Z zE&|mzVViVot8L@3dwujRsLgKfSJPn2vTewi{-4QrY)7hF&|?Vyf54>nWB>pF0002o Z`~l`#Y3Hh$(Z3`?F97L(|k`Y0tpdg+~u}`@jiY0a_9?IwKxL#~Qg9H@D)R=)#Ar1eMIH51|x+bFU$kz^VA9)$#7 z#r^B@pM=F{#dJ?31!<$i?D6ESfH>)&02(QKwVJL=k0PQ1zj(Q7jeE7onEy=cTGDU& zVr`aQ$hagzW32F1Xd9wQL64HW2RtV_D}bw@FL|~zm!VyH6HQ&=?MC^?oz}8BQgq%^ zhEmVP>hn-upo(>>+wBMMv9BMF8sv)pZ3v;R=-*78gI7{n=#@A@u5)lHJiPuJF|gv) z`ZWFNce3INklG3YHkYV#XzWUz(LoE9i{b_GbSGool}^YB9<;S*73-HhTt z316*tg~S}B^F!o0(2Z?c5GZr>_^!&*aVCYj*OX9As36L6yA?*f3O+@XA z^G63}PC#0)6mOn1X}V&s*g1!BW4IIOh0H~lt&xjDd2G?TUBX?Ba{>TbR2o^pN{z+)z@*Mnng-S7Dn7 zeMKNHGYO)1f->P~nY2ShNks%y!~tXo*v)nlltSChKT#4lMS7b&MD<)GqXlhw#6?Ub ztc3h&%G0coaMDls8i9{<2iiwV_NWj%%ZnL*iwPRsVQXsSim9Qihg4Nx3mTI~*Vb6Z zT+uS0oN)MZ@NixGaqeK(I~mG#GVQt>_{K$lq7*7a?F^2Wq4ryjr;GG^Y79*#-?0000v(T5Y zWs;Dlsu0?R7B%P;!V5g6{v%>Z$W60kZ;?V4A3>kNs%^{2nP3ZVV^|lV#?G*%F4{ z8OAN=W~Gx%Sj`nEPPt6WJUowQxB+fWHMn2TeLgMGIWE8F5!b^PQ^Y zfmr^(r4&(|sV_KQm@L%FW|vewNi6R#D4I^6soEjBsSh=Hz{i%@2cUG7oTmRZw_hZ&8~RkRAY$-jv`=`MwdvYSv4b+WmuuDjbA{ ze9NfRD~I&JI5jYxBuSDaNs^>Y|33hv=2oI#hVZluG2HcmBAH;KWY7~!@M_1At^-^h z6bX8`z;LlL!4HYGw-&1)5vXnSM1C8pCVSyrE>IM|a?UDc^rfMw3hd z(mT)!1hHX^1gqGomO0h2%fiqkNs=TjF A+5i9m literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanox/test_sign_long_raw_msg/part1/00003.png b/tests/snapshots/nanox/test_sign_long_raw_msg/part1/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..6d07ac672478d3c750496d20b03dc4659d7f5db2 GIT binary patch literal 469 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|^i%>EaktG3V`#=uL+dcp4J> zipviDn|>s&=EaOeg_bR>j(_*7yGR{cx>O3J=|frlT`^5n&Epd3YMUocxnvlT{Ns4I zq1)D87l{d{E;fqnn`d=t*QLD2bJqR0j`Xs;uTvJeZffu3_X}!%uQ+)A8cXi1UD3Cb zuf)~F>@(WOlDo^*_IHr}+vx4vtb$!1?^))jnLkauNAJqpOH!>D-Fz26+sk}q%bR2K z-kp!T?RD7lR`yHJ504T~TwZb8qEh@pMZgM4A1jGhbLaWr*;x5{WzNzic@JgpX|A(x z3ORat!3rBu$G@j4{*@e#JAIs^!rsH8l;gR1?@mkrjtSs=$yO-NJ z=C!|)leS+NA@qEiex99SeCYhS zx{A93-*_r+{n%X`lBjkqL3N&!b|K&TBVRz_iwrK?Fg}~bUQ~NKG#VuA>FVdQ&MBb@ E0QM5wx&QzG literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanox/test_sign_long_raw_msg/part1/00004.png b/tests/snapshots/nanox/test_sign_long_raw_msg/part1/00004.png new file mode 100644 index 0000000000000000000000000000000000000000..53ae65195fbea5b281a1bc1a80351dbf1cd79ff8 GIT binary patch literal 364 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|=-%ba4!+nDh2#AYZeBfa}G~ z%X2sUSKTFSd4J{-YHcY(QO5;J{<~e9q=7F?O4)!WO}6UUdH! zS+Hz=(4})vCM2-VD4nt3W%LdvkyzeG%km#`1t_mu*zR}#jNB{EKZnW}g5-=Bym-_% z`=7%C>zxJL|9msNSMXnbQRayy^)nr>EU7olTHqoc^vG(B%bo(Id*|kR{84!`z2x6n zZ`;PkbrPvd6U}A>Y0chs_tyHmLi6kw6c{>JvYiQ=+MTFTx8d*9^V|R0+_75oZt9or zLetinU!`YMvFyLCb8XxElhO0{v2rTkNR$jMW7~4}*8a52+MC^J%KMbxPN-JRb2RNP zEsp0ebAPS3=e2G53#Z$XZAI6Yd=Y#bpS7_dOvl2n-YDN3F!8|Zw}1F7^_|`|7^d-WZmAca`5Sx-r#o;?yf)8 zamTB%jcSo;Cxq7w@YDAG;F6%vdkN~UKMPCH+44GbgZ0O61|;n~NJs3(zH0)OyObgT z0C=#wjq|e8y=uL$7S9x$jZ$lEcdNB^nwK)>H6PNyiQd|Lm0PfUPFtnWXfpPxEGL>bcmBgvGOE8^+M17u26I_+AT#bzzP>rah~%<8qgG%2*J4WoW2uMlMt z9%lVFg?Z36N3j^!4wH0b{3O8WBJ4_G2v2AEUeKM8006+%PQAmq$BV*J0ebACz0uB~0+iy*OAtRT7 z96rVI*8>0m0002o%^$0xJh2#?r-}do N002ovPDHLkV1fi5-8TRL literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanox/test_sign_short_raw_msg/00000.png b/tests/snapshots/nanox/test_sign_short_raw_msg/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..76560b8c0f3bd5e50f8a56f6718ab7bb80ca024f GIT binary patch literal 420 zcmV;V0bBlwP)x`j)$#)l2xD5^B9vd+L007`}(Kn1u*nQ(gU3$CFT~(<~$DUkDezhFAAUQ3} zEKr}6Hrvhe=ha$+4lgrCZz=Szj${XZ9Q$FKKXKgpgqT`u@~eeA0k6)fAa3Q_A}8il z^uw7iLF&k@gUxaT;buTjUb6liK3fL^007{*`rK#IpIDufBN=yN2{vMCW3^Z{TSo7C zG?k$=t7gHh_U-E*e(N6KA#5tU`xhD?|wrTh)ltmPTuXJyZlmS>b3O#L0@`b_Abe*_$ z^7>S^x)d(Nq5;;TM)|dC*iki-H!smSDJSX=s%Z+HQ}A#i8iJitv5gVVa>;UH~$p67R+s* zDQq5oqD^?lPEEGkZbRo!F8?C$2`0UcPSx3Pbejiezr11qHgnf{Q@t~|k7H_5J$(R% z%v^K5(J_7S$qVJt12Age@ZZ<2#~j5DKvMtoH^oD3!WWaJdmFmvTzA<>FQ3sTXeOEL zPZOk?>`%rR+=*T2P8&&P3{sI^0000000000000000000W%|C8^YlGBj>%IU0002ov JPDHLkV1m0&*TMh* literal 0 HcmV?d00001 diff --git a/tests/snapshots/nanox/test_sign_short_raw_msg/00002.png b/tests/snapshots/nanox/test_sign_short_raw_msg/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..53ae65195fbea5b281a1bc1a80351dbf1cd79ff8 GIT binary patch literal 364 zcmeAS@N?(olHy`uVBq!ia0vp^4M6O`!2~2@x4h6`U|=-%ba4!+nDh2#AYZeBfa}G~ z%X2sUSKTFSd4J{-YHcY(QO5;J{<~e9q=7F?O4)!WO}6UUdH! zS+Hz=(4})vCM2-VD4nt3W%LdvkyzeG%km#`1t_mu*zR}#jNB{EKZnW}g5-=Bym-_% z`=7%C>zxJL|9msNSMXnbQRayy^)nr>EU7olTHqoc^vG(B%bo(Id*|kR{84!`z2x6n zZ`;PkbrPvd6U}A>Y0chs_tyHmLi6kw6c{>JvYiQ=+MTFTx8d*9^V|R0+_75oZt9or zLetinU!`YMvFyLCb8XxElhO0{v2rTkNR$jMW7~4}*8a52+MC^J%KMbxPN-JRb2RNP zEsp0ebAPS3=e2G53#Z$XZAI6Yd=Y#bpS7_dOvl2n-YDN3F!8|Zw}1F7^_|`|7^d-WZmAca`5Sx-r#o;?yf)8 zamTB%jcSo;Cxq7w@YDAG;F6%vdkN~UKMPCH+44GbgZ0O61|;n~NJs3(zH0)OyObgT z0C=#wjq|e8y=uL$7S9x$jZ$lEcdNB^nwK)>H6PNyiQd|Lm0PfUPFtnWXfpPxEGL>bcmBgvGOE8^+M17u26I_+AT#bzzP>rah~%<8qgG%2*J4WoW2uMlMt z9%lVFg?Z36N3j^!4wH0b{3O8WBJ4_G2v2AEUeKM8006+%PQAmq$BV*J0ebACz0uB~0+iy*OAtRT7 z96rVI*8>0m0002o%^$0xJh2#?r-}do N002ovPDHLkV1fi5-8TRL literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part0/00000.png b/tests/snapshots/stax/test_sign_long_raw_msg/part0/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..7edbd372d82244ac4a0388710e72610f10214543 GIT binary patch literal 11897 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 ODJ^yVhvoNeBK`wcL%dZ0 literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part0/00001.png b/tests/snapshots/stax/test_sign_long_raw_msg/part0/00001.png new file mode 100644 index 0000000000000000000000000000000000000000..279acd54db7568993145eaa08b3ba55c1c567e5f GIT binary patch literal 5208 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 literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part1/00000.png b/tests/snapshots/stax/test_sign_long_raw_msg/part1/00000.png new file mode 100644 index 0000000000000000000000000000000000000000..8581a716185dc19678747d8a98becac295357c8c GIT binary patch literal 14377 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 literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part1/00001.png b/tests/snapshots/stax/test_sign_long_raw_msg/part1/00001.png new file mode 100644 index 0000000000000000000000000000000000000000..aa60a577dd7a2576c5aa25e5455c71123482b2b4 GIT binary patch literal 7712 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 aM-?p9tIK=81m65A*k5$IKsoR8<9`8h#`-t_ literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part1/00002.png b/tests/snapshots/stax/test_sign_long_raw_msg/part1/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..90a229489f60ee16550c3a80347091d2c02347cf GIT binary patch literal 21556 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 literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part1/00003.png b/tests/snapshots/stax/test_sign_long_raw_msg/part1/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..78bbaaf73f8284e38b5e4bb9ff97e8af5b0e774b GIT binary patch literal 8440 zcmeHtXIN8PyKO|Ih#(>YN>xEnLX{>}R8(LCA_}1jA|Mbth7y|8EhxA_x)8+;(t8XL zst70vhL%7G0Wm_PB&dNzh=H@*p6A~0-23O8bN9Z#&adQI@3ZEb>z(r*?-*mQ2iL5x z2<|_&9|QsknqR$i9R%9*7zE;a#>WL*(YNWW0fFRt%rBYVhR++-CGnMTpJTy8oiBQTF_<)fg4dOk7GQEq{R1Bv_2^Yn4aCAsf;Y}yEVD+dAH5e9=a|JE>t+_$~86~#Eq z_5E0oU|!Xc5w1}jJJIYVsPnT`U#S1Rp80vkpP+86L84h5=)mm_cUxu9#iP2A$^E?v zmk)>`xzuZ${t5*?`5E&3e)hX)Pn*4q1)+?C^u{Bgc${c_8#N#!~x-Jb0HabiuSn+ z2W{IZ-4#oi>RRvF`uI8mq!zsz|EFJ(SvzQhLEo(|b=vcpM(*QEnEP9k`j4*I{|x>Q zl)--^sqw}}dkdZ-5C|KiO-|hIq}@d>=l`QZg*qtrZ4V~Le*u|@Hl_UUYVOkj8~RMX zur7ZPCVkps`t^UT@!(NuwWG{7y{SLSr2p>`J+B&N7KNQN=z-ooBAKb-amfJsH_g6~HOv6aF*ox4g$sxAm5rs#ay zoAX-r`2Rmx`){o0|3chj4z{9ZwlUGF32I-d6K9{v;~1F5Y-;UlyJUMKx>G5Ae*P94N1`pU zciO`EV+>&YvZO#%#z5IC`%>y+R5t|tiWIOMGS3QlK8x71F{rw*7lwNOJ7pUBTOs+P za}y^{mb=dn89HQ@{U-S#$JAYTP2|-(MvP8zAtFgm4}mK`Y44b)l5YvWk-;%`zX3$g z$z(C9eszX8fqr#!5jJjOd86Xo-W_uw)KqNkA)!+uc%WZBlQMJCh54lH90Fpny%>6~ z#5$^!*VG+$W<;kbYLo%Y{Iz;`nlA20>hr>is5izELm`+4m@|?@IX>*+66=>>3>I9- zpO>oJvuUW7Nl7cFn%NfErk8z*o&T*71N*!j-pueO?DkVvG}0a6bOEv#vosd((&fNs zh+|~Sx4*a_i{>@`GWp^;N0ObV zkHFzF=R|6?tekf$JJ1M~KED~in%KcpfsI9{B+SNWF#l*(9HUzH6^TY@ec+Mo0bw5s zki{@M{Su-dj*ALKFsm5^_D#4~N-r?xpS~;I=^EnQgYbZ&4}Ehhe%u zu{Tb=DAB7zn7c0!Wq`m@8SSmPW367c*NdK&9MvV@=TDh`R81u6hqcST$NS}0EYo0U zw}!ye)waPlF9$=Q;(f6l;}E0EAqNeL!cJF+`WAJxxN`1p#NneGgr5l4@>(FA8C7~x zLaw2sqF~lp`&b{e?8_Ap{qi+Yv+@wqOBYOuyRUJ>RE>cm{tWS8uy6iWu- zaesUsWYFjLk%s-=yZP(B zPzn&_SStcm@gTqLFw`-5X1+r^LKbCqS6||ec%x`a-ig_D*6OB{>nE8Pz&{c#Pu`rS zS|Dgw^}3E?J`={N-UpiC*fj2!4wUqM`FF;&_i z;0~8%dbgJ|k5J;XPUt?%4V^m6%OBmn?aD5j4o?nWo1}Q zNonyFq601WNTNu6`1(5*2k&>U%Z+@}g^m(J|K^drHEy>ZQ{me|qFE>_;usUltuCrm zMii0{mw8=uAjbF>SZs*Ww4n^&gy!gW`f=CnbA~iH)!8ovA*oR>CzcmjPicfWHv5~w z9Foe|T2RNIhw2oMczdSjco7#voBU5=ng?#%>c?)aDbc%hvG-P%67QW=9HNADx#d@w zOx6&BQhHB79$`5WSR8HY=uAXdeu)6fW@9n5%192ty}(8bapf*eY4}?c9Ah!m_e>6T zE3T)(httJ&sv zZ|S|&8WB%`Y8TP12wtKQr0Q4p$g!x!o06U>KU(rhfqusquqRisi$ByM=yo?bIQ~s0Ba8zcVu>!t_*XVLoB@_Id^}2=t zPkF{O<$(;|EVA_Diq*!VZk6e9vS$vH zpV=m~x-+kw?WB5MjYEj-BVG;Q+wlJT8J>`X-@6eN%L~DGw{N@&f!6Phh7B(fxXiO_?Umt1e(Z>Z zR$vy4Ef@5heGQ%lt12sm8U)_w7-d<`?x(+WQl3~^Jdo9pXA6L=9ie`r0tl+O)m{^1#$-Ok%trWAUR ze?Cx`H3}VqJ1q!C;wutdU*jNPG5SCn@)rHHYt5r9%1yQ&jNhbxj&JtuZgW<_S;x+G z#S{k`W%~8@pJhr|mf>vB$)cP^DegkB8}i@@fPpny@}2+3b<_U~!T67K?{AlM|1-5; z0%0ezG(x|`*hmueWm*=;_^7wD0R{DXu8DB{O>+9j*2V#l1O|u0^?T4+Y{{iNO56h9 zWnA~;jfdZ`%^E>bM*5q<*C)W@eO$?c1=TaBZB(4O1s-d;RafIQOQ46q=dtkXH)97+ z-^p;_qdAADUTKNfadt`DclSHAt`_&6#~IQ)X(fM?z^jV{RKlqMKV-A9rYE;RLH#?z zaOCdVA+USdDK}-x$XWBogwxrTxnJKqDnNQa@!^LfNe2#t-JL%9d3E}{;uljtUWU}1 zQ)m2Qxxb}sEahr2PY8qEMY^Ba4^|3X_)9qSQe#Jez}&}QoAQgttyfWA4_mMOx+`Yf zA<*rpC-~SeQ$m(8Q0y@HLE!3Nx9+C@?3Uj*TtI3^cTAqQxu`CsDW#`Mw`CaOMux^& z967#HX(Nm#Q)<&m$M@0{LNQ_`|JiScI%EU;#K+CR%%`sj~@&`ndtU6Mujbxt`R zj;S9=l52b^?E>>ilDn&a++S#LF-nHpRG1r9QouWMp}i%#-38lRT;7;9%?rG5NSWBW z!PI-O7Vm*$E^*(?>G# zhjytMxBBy%tf=yfyl5DXN8qoxZjj(1A`iv&DM1RGcINeO0HJh-uRwZiY5N z3TP?WKw8%(J0xQqml#nKliv&xBi=|1q{gcRoR7&2LqfoQX@(`%n8jww(+?c_1rnfT zthOWwq3x}RGQCWI{cc8EO@y})r#-|n2J9Sy)bcG2It#svDu4xrCe%)?((M?ryD`Q9 zQO5gu$?zwB_~GEo@R{}k=oZXGE7KEglq>&$d~BtZKceK4?GyP2j*8yx9kn@>uaWI8 ziE`647=8c+e-fERcQy}2e(ThT;BUx!!UKCraT~osHVCtc%!TPYF=J=-Z@gTlBM3sH zZ>)9r5@+^At63g)E?@aFwTk~S%!-Z3)v3#4Mk%}Q9c#7x9OWizW}~9LVw|z}voVK- zwV9aMycI;*w|ctVort@$nd9Du;AM@|^4y6OI}Zth^#oZ}LLJhTUvAF+t;mF@oVVCM z!&T9W;f<25v7z$RFePUD_wD9yvI|;QcSM5<3Yk7@0qN-Es8Ui1A8RiqR2D^Da=PQ_ z9T8AeeAy*y#rf}w(h_>V}48;zc4C)tGWPx!dx!02zQu0{KNl^ z`@SqKSMv{UN~7UIbDY4i{EH@Zb*ubCosm_S>NN5OF3V$@=jZ1aLy7Ar;HZ;U41!mQ z)@I1V%?Gf9#R{&OT)RsxnKLD*5 zPY-=aWW|!W7@L$8bx&@LWVGWqL)|M?-Yt$akWIjgc7{Fq?Qrwjg7>jg?^T`v33cCsm$1}<*;|>mTm{>cg+&9Apa#M7yqXqW#>zNW`ICFHB z5W>1JKXAKgetpFFSz%=UUXOxqM31r2$%_SRTBqUy)XOxbqC4eB$$16huGn*vJ>F9_0L=0{y|2%8F>0lF=YXr_!;(vDuJ~+$wx? z#FQqwDamH{7E@s;*GUk4yy_4*<}v5mSNo&=5xV|g$aCiFBDbMYr43W7K!t2ZyBZ|G zPh_i|rBL_?CbV$cLr^C5^-5dlYYU+!R9|!#f1tdDMCh>e0v8*-3lA>`~j;**Tcn zuq*!f^GCK$GoRR(k?tx-O2FCXU$phqf`8_nM;&rNlTTN>OPJ0$|En`6Uk$p`<*@{G za+R`?XdD!1?xCNGHeVe*1?d&#*Iq4Yv1m+qkbRd>?33-jXF~g{cUL@J8x~lSFIY@$`Wd0OJd&JuDC&?+F4PTymBXILVV?smukr%3MLjU4M{;dZV z|2U2NuM%*P$JD4iFGQ)p2gXiJG*9;>ThW&jRoiXrY!3+@(^2^FU(y<0Dn1mFEzj{e zG}7Fm5dxpnTwh1L{fU2@%J02f zG|EX(or}1s_%#-L>t~N-u{o7C+#7>pgxnv}KSG$W_!<3JrM5;$t zQ$oX~##AbOJH-Pqx1c%zRlqR}asCkp{vr+Y-4IsD$SF74V>8{n`6b~)X5ot`9k$i;OUpiaG}_nPym#_8ij-@Nx?IIa7Ju%A9xUn4Olnt9IlZqE zhU7NACRt0*NOBOa^=Rc@g`tV8z@iFfh;x%(=7d(4TLWG3OLj$>}|=_A+tt@ zP;OIqLMi&V=al(S-x}sq)Z9WafR=QzoOL#gISVQj93QV{>;Thg;Bzx=OdS&i97&op zk#ln*v$VuoBGu|5Qv#*szzoqn0gGQ*5WCN|4cB#p7O!P4kj)keIF0wEA>vhEs)q1qWcNDkP%`PwvwZI1KrRS^ZY428nJJ+o392x>>{2= z-Gb@}B+C6H))YOMgY{6~0R}P|aEl+jo>`@=RV&k0qD!gu(>~%aJz}3JCu$p#5`nUq zBYNxp3H#tse=AD%& z?W)V|US8jFaZQJ6?-%ZEUGiaT_ijc@4~5W}SF`1++u8XR%w?jPa0Bj=X(bFl=%q1W8>1J z;)77mtjGX~ROW4rkKK5zi)1YrV{sAC5e7LnMr^rgaQEqqtu3H+l&HbYeTMp=15Wi! z^|fl?N#*Bic>t5_u+0KGnbNFS3`hg^WmI8hTu6{HLMs|)|3)aPB@ zRj-7khq@xrZNtuSPOkesmt??3Z(jGF0$$%w%}tjDRu+uvnFkEJdqp+)YNiG2 zX94u7E_|MSafWWxf;IiPLhK*$w%bm0qiGprN~U@gRUqdTz+|CO7H53vGG=UX>YfYt zSqFUIN4;*h23Vkh&?~39*|Vv0^P6^(24Uv;?Z3~fi#K#N>qU+MJi*Fm_N$HxYj0%a z&={R1a<|<%2_y44iZleBCaH%X#nz_Nb=`yOru@T(KL+bfmNrK+=|Z0~Tat4|zrBAI zAw|;&G#@$)S)Z5s+{U+8h~RZoD(gxZ40%I=ovvk-Z2c(B-Kq$l>$#cj|4rIgsYs+LpM$nO1n(ia^LRlFpTWBNlE=0U%z1IfOm!khmEq6^>{Hj!*W4 z`fbK7MMnAd6Jol?y6)^*f1|qa=U5d^GvWki!{x*7zn&QWbLao@jr{emIUPrz179?N N%+0JX)n9N={5R*mQaS(t literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_long_raw_msg/part1/00004.png b/tests/snapshots/stax/test_sign_long_raw_msg/part1/00004.png new file mode 100644 index 0000000000000000000000000000000000000000..c1a8fd4eb09009370b79a8e7d92355e84bad3426 GIT binary patch literal 5084 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 aM-?p9tIK=81m65A*k5$IKsoR8<9`8h#`-t_ literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_short_raw_msg/00001.png b/tests/snapshots/stax/test_sign_short_raw_msg/00001.png new file mode 100644 index 0000000000000000000000000000000000000000..5b0025500aafa38f7f4155cd9a3b3c408710a144 GIT binary patch literal 8186 zcmeI1c{JPk-p6&HZnV`_tIBjb=+xHMT7>DM(bh5@LM)*u#u79YL4?~`c!sLBT1t?a z+A2Y8O-LHF8A}laG&-*H8r(^H=VElsHV2Kfc-yJh63uOHfnOdw28t70<*XAy=3*Wy`Vp zfr(z)J^nLlZ^@CDN1XTmu>HB3{`Y&!e*NL9|J8G6OoJx$Y;WYmp8793xZ4t46KMXm zU!ErJ>Aj%Tr3C6?ysugcdP_X8N9{sh`}X&Tpx>X^zW=Lhcee$7W&HJlhr50~Q}?$E zJC7eq|5tvw%q-RT`k9_%s=fSBE0NchhD(ylWU}7J-xe*#%NMSFbxq@c=lB4Mi%Ts` zH+NyhX(s=_nEpR$%a)mN6qy^7)9O&{*4ywF4r@M6pyssSR%|__WYmpCa1r!6CV_ELkAhoeF8mQcXHokPC!AanR+F1L-#I?ilsCyG6ybRd5w>(hsJ}SOJr})WirB8nEO<21x=Vh z6{)iYNR|Z>W_CQw1B|fI$?FaE$s-J(UsE84fe&#RdWIel#5YOEf

>3_PCyVo4|* zQU@PD^`H}B4*Z)u6K`81uzf?bw$kJ2B>q9%U;Ssw?_Q7>wdA3yMOP#Qg0#_DSE%A` z8D?|0quO}x2DuXg?z3>?{N7jR5NxwOJ}isHC+Zp3IHd1RQb(VHn?rpnZd2f#CRuR( zf_lb-Q<5xK)&bPUXz)A}I+j8U&~kd3^EuAO-q8`q&wU)NZa>1_ht&zGc%@pk5M#pg%I(nj)iK<_83PK@d#Hk%dFdsM&a?1VtzR@jc< z0or<|BkWNO`0HZ}{p>PW`LoIZy;3v=SpDOgT0zW2`OyVkcYap+LntaXLhS|mp6nAM z_MCOx8($>2;cQm6V~9fKfXq(^+vr?=9II|W4oik|gd}qH8JJtdcV4L==3g2}v$h6f zAR=0JG~#}jRKw!itu$J`F3Us}9$o8X@1sCAF8iL4|KlBBJaA59`|DHi;= zKFauC1#7m*KhpO*bZYfF*oUiSb`BxBuXFX10R`R>S|!G?-g59}JOL)Ls2gJT%Et=1D)H8s28x_QY=lc7*gFn19AA$Ld zU{nhxZOe>@8H!h-2V2-rh_&`bi^osZCiYOWPEfSq(qu*9^4%WZq%qRBU=$`;RVwXu zh_mj>nf|%%;AtjQ`@(Uj`T(NG^U7xtK1&_{80oiC2&DWXEa1Ovu#7oL63YTmF_j`8 zI*M4HH$`7OA)RHnMIR5VhXR6{e5d7fhmCZ2+Y!9Hx*BhzQ&Lj05?SSMY&g&zjI#~N z>iEXw940ljzW|aq8*h7h{Q=l&kFH2iVpHgSw_?A6NmSqd>cNe2H2VH)yVzk2NF|Nx z{N<)xCm6=&{^FihmMmSf!n)eN^*6Sh`8gN|3c)hMtgz)RvL?@0(xkrqg*$TALdYD@ z`uY#riXxvQGREu+!o0WVc-<$Fcb~ z&NtOx#BAyWABLvYNXY(Yz6mVb_kT&2yY3f&x~Zvq5GPz(TC>D#s zdwybj(s<%|Nz!Jlypy$hx}PJo5|Sbc1KUz*t*sMpC&3tglc81)2t+N|&wZOQtg8Jx zaPMIV?C(yfH&evxt)`Q6NE(eci^?c|nxCI0c%4?0ZVq@b;bIM7hza@xNS;{y{1U3tbHs}raX+oi%6?OPb8kYut3ER zWKA~wP5TtJWw{~U{uy7z4-fU3iztnmG~v?+OUIitUYIpXXk{sf9|zvt zSVPWo;PjuUsA0#n&Au(&^o@g2Y01gAwqCjz?EWPsjl2|u4EO6dJB-Jlhat80jL-zW zMD}H^WX(wFYukf8>KXLOxb7=HN1af~n{#g*9UbQfrs58doN#3o?PZvU@UyIE97O>S zkz!s8b>t0CEcrg79=eK{)P-!x*9g*{Xe+-OFS?3Xw=TN-xdDbm{|pNCNr?5Dh`hEr zowCtlX2N#asujrZnA^Fs9<{tf)yq;!k^^!--0K7RY^cYK(&arR%3{8)j=C%-4Y(O* zOHnnp;2Rtgkh{)hRz%E6WC>Iu_vYK1LRVIqZ>C^wtSiky>2+#F4@IoBJm9UtW!CT` zIacmhwVdiXLI;-&KM2<~n-K=oNGunx%o-2ELDO20wK?Y7g@)pzT@{~1v@=`x$vQ_8 z%*3L?zx{d9dakXxmISBb`t2HZmi8C6_|_nBQB-b1ID<$8Y3w$6`%Td)Y2Dy_Y*vma zEBo!mtx)7a7C)tJ8u%^Lct!YLmCA#S$GHlVx(fot6Hi?z3V+l52+nBqT>oj_yX+lC zyjzauLF2GQ45M;A7UFGI6A%#KprenuVou#Qu)iWIQY?yWSg0-bZd114SkP>2lR$E_p*-NILU<^ z)itA|9^`|+m2S?tSF#r4$FMt3dWc^JE@uhkL*V(x4$t|8VYr4wIS^3bU?Ge&Y+=5~ne*++gew-Gl4x>GW&LPr?Kgrq(%m`xOo;)Mo^VVb9tJ z`mo^yH!P6HAP}FteE8;*bhVQ#hgSYI z(YIwUSKB<#WHRBLRA{tqabBowSC<4gY{5vNnq&qyj@rwi&H4|Kw_RC)rP0WG5qi1U zt?loL$%Pf)^)}$~M4~+Pu@#W!D%*5iSwl$GAJ?YWcaE40Be^uh7ztijfyYnGS`@gn zDn9~=e?$QIeZnwb5Y?9JkzL3LtIE)?*}Sw}ke95gn4h1oi1>#;*RXxH^}4}WE32b4 z=Vy*4ly{Xw0*acx#2PrqUif047H-Mm(Mdu@Fr4EBL5>>x?OV{Wb_~3&%_t|2kzBVx z$zlB#cxojL*a+2n6#@PUt$l^0l!7aXb=2JH7 zjGlJ7CV9KNyVDPHNH8LsD`@*iA%96T1DhXu8Oun<=2Yohl8k$YKE+Iaxc5wfpFi~i z^~{h97OgLkMiDL1oP@^FRm26=A?laqrH%SeS_k>i&(^R779f8J1ja_f@6cW=NEGlV&{yI`+((& za>@v*IGY3eQRSw7B{<#nZs08TF+@Xa6206HGs+W&Yj(-l%BHaxatm&y%6ITkBAK(6 z(99FFu1{uU+w$q$RIf-+B9+38kt#4`;dmzSE>Fmt(P&_FaYay1X{n&aAonI}^?AB( z2W~XCx2*g`MD-8`lruCaB$;C?k1oJlp~gR^8O|>4db4`zoXVOBf-R*}U9+`2L$x)4 zVvQ#zUiM7iIdZoA{$B&+#{rJ?7*E}_>>>}nTUx^d?>zbOMLbCX!<#T1)_5}(L&__a z>aC>63Z^fMNmLN)_3EoTlZ=x`90FJtRk&xTO%fvgy&w?nA%9ZhR3D>ZbxLM*nWmWR zX)ubCl?-02d?*_re`CeRYC>}?-a5UcsA-|{O%oz1wn!c&>wK~U(lx-p7q!0TSiN=W z;o1d&#bkfScU*BLNLV+daW*=S)!mpx`}3Rk7_=x^KfoZaIsCN7`?gNkpd1o=_~Xe+ z`PYkP$__p0O*{KBS7);l=2M-9dGBbLPp|br)?7;88TC!^-9gp6bhfOZU~CfcXG*SU zDm3%E#m6^p;zi05W^}8+Dd4`W-OXxejb<;u39vsHD=Uuh6gfQb+b#$~@X8cZscnv$ zP#TK0uR3@bCa#xz9y{RosW zO1eg${H#Z-Q`0 zfINV34G#d0-FJ&?_bhn4l2!aMRcMY!Pd07D=`{5p9j%;u8!2R}&hwm^Fw0Zv`z!w8O zxh1~7%!1_aWzK`i-51$gaT1GLLerkM);y*aUppeWp6VbN@(hXe1Z>8Q@>!&=)_o1f z1Zpu_CkNn)E3vYw?cAK{fc2*I33YeINlZqirT?5uscBwV!wr#@C0~rbK1B|8-bkby zDvMDDW1Z~8cYYy{?Ca3}gVImoK6%q;A#Rv$*RK8#V-MaK`m}S?Yp!m)v&O5W)jRFe zi$VWP1pg>4^HpMMYU*l`TFMgcA6~RnW5?e^(trI|^Z$K+kF&9Gl`NG0txGXKu;+9B zPn>m`ENLUzCl3kph9H+q07#wUV3rwdTP#YT_G%oS(u9)l+vxmQtpj1N#gM7Sq;&;G z-bJ(XfpY*d{puWGV0%|;k?%qe>}|Wsve?>Gh(mvG1n!7IljB)_dh9JIkqvlYC18${ zX{}LCaTh_=rwDld?5w_u3J0tYaEI|*>_H&FI$#nqkg&kIW6BphM})|XR3r=l$!S|E z^0`dF4u8?=0gW#VIX}CjGZsrp1m7mX?Udqz)9d?mxDRwg0C$mVP!=5OQ=;deV{DcB zl|3SZwsKVBeLZf?K1(uO151L=LQ?exwUzp{HMjgyQ`WYW@`83e3-69mf(`Qp( zq9Lm(C!m0l`}8}s#)~GfTGW5PVNkTlj?am^S0D3ieRcc7LPQmw|I^*!PDMdMV;3imMjRh_STtd7R7HAa=N50U6Un+=4U252yqz{Hb7MGBAmt;kc zjPuf5obE(hVS!O%a;l7bQxdsqw@wdER2gkr*L7}PZ%zl+=*Q~MHm9rz>dD784h$TjKi231p^YjcA4YlqgK|b0QixvHRtV_fyF6cQao}%8J#$LcO1}SyGiHqB| zfOG^@0BqJ`6B=>j`0c^2BZU<=t@q{B=JZz9S`V3IzCs5(a*8zPf2jw;c-HunSh{F! zcktTd#Tc?M@rz~=;<*RwjqxCsJ*%1LGAXMp0ZcNSq=9Akw&T6i|=n9~=syL!#D z^1wA&--p$wOtdD{I?v!IR-2?tZC)aaw*`&qjS3Sg<=^R5^Z`S*wok@w#9bV^_9!CN z*Op_!NNtNPH0W~W>(7oZU+e&wax%@h7id6kElcK^9zHC;KfU5N5BQJh)Sjsmoy+zZ z6iX2;Oa1H-WU-cCs?{w(UthXi0Uv}3SdA5rH@v@gG2A~q+f)ImW_MuH&H3)&%N_mI z>&`1x9H0kvR%iE!rK77uNBCZ`5ic63K)8XcI+}D1kqS`$;$lRLf63VV23%s(N(-3|YH#dR zpKZ0$kc^78+xlvyrx=K55u(I%X~9JDl(VTzRwsDhxpOqDV`^b+)jVTWVUF6{WqoE3 zIN)9P6pX=a8s+JAI2OK>09zU%Ay$QQrPr@7l)9r z`88KCD`RYlPWkXGrFl?Q*seYLE1&}N5ORtG__!S<5d>Sd9ksvbPND} zOO3c)Uleg>l8X$7P?&wUa{r=JGqO5fNw?8T6*?_&7#q+f*zxu!w9Z|hJesJpV02cH z9evdnA5;(YT-Vq0auV*Oc7johY0Vc}d{xgG$Yhfbqf`wHf_ zrEL5)u*?LYP*ZxX{eUDie-y4qzfb|SJvOb^{?QW0WSL|!!XB*Vb%f(Y?TMlzsr$oI z8zq`xvrnY(nS<3tvHGLv_W+*1d$O+!{`}v9lR?@5 literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_short_raw_msg/00002.png b/tests/snapshots/stax/test_sign_short_raw_msg/00002.png new file mode 100644 index 0000000000000000000000000000000000000000..78bbaaf73f8284e38b5e4bb9ff97e8af5b0e774b GIT binary patch literal 8440 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 N%+0JX)n9N={5R*mQaS(t literal 0 HcmV?d00001 diff --git a/tests/snapshots/stax/test_sign_short_raw_msg/00003.png b/tests/snapshots/stax/test_sign_short_raw_msg/00003.png new file mode 100644 index 0000000000000000000000000000000000000000..c1a8fd4eb09009370b79a8e7d92355e84bad3426 GIT binary patch literal 5084 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