From 5b3db7eca19eab2723f168563594b7eaacd4ef75 Mon Sep 17 00:00:00 2001 From: Martin Milata Date: Mon, 26 Sep 2022 23:07:29 +0200 Subject: [PATCH] refactor(core/rust/ui): homescreen layouts [no changelog] --- core/SConscript.firmware | 2 + core/SConscript.unix | 2 + core/assets/lock-new.png | Bin 0 -> 182 bytes core/assets/magic.png | Bin 0 -> 224 bytes core/embed/rust/librust_qstr.h | 7 + core/embed/rust/src/ui/component/base.rs | 2 + core/embed/rust/src/ui/event.rs | 6 + core/embed/rust/src/ui/geometry.rs | 4 + core/embed/rust/src/ui/layout/obj.rs | 15 + .../rust/src/ui/model_tt/component/frame.rs | 53 +- .../src/ui/model_tt/component/homescreen.rs | 266 ++ .../rust/src/ui/model_tt/component/loader.rs | 10 + .../rust/src/ui/model_tt/component/mod.rs | 2 + core/embed/rust/src/ui/model_tt/layout.rs | 108 +- core/embed/rust/src/ui/model_tt/res/lock.toif | Bin 0 -> 63 bytes .../embed/rust/src/ui/model_tt/res/magic.toif | Bin 0 -> 110 bytes core/embed/rust/src/ui/model_tt/theme.rs | 5 +- core/embed/rust/src/ui/util.rs | 32 + core/mocks/generated/trezorui2.pyi | 35 +- core/src/all_modules.py | 10 +- core/src/apps/base.py | 6 +- core/src/apps/homescreen/__init__.py | 82 +- core/src/apps/homescreen/busyscreen.py | 33 - core/src/apps/homescreen/homescreen.py | 142 -- core/src/apps/homescreen/lockscreen.py | 67 - .../management/recovery_device/homescreen.py | 2 +- core/src/boot.py | 4 +- core/src/trezor/ui/layouts/homescreen.py | 1 + .../src/trezor/ui/layouts/tt_v2/homescreen.py | 126 + core/tools/toif_convert.py | 1 + tests/click_tests/recovery.py | 2 +- tests/click_tests/test_autolock.py | 6 +- .../test_shamir_persistence.py | 4 +- tests/ui_tests/fixtures.json | 2154 ++++++++--------- 34 files changed, 1782 insertions(+), 1407 deletions(-) create mode 100644 core/assets/lock-new.png create mode 100644 core/assets/magic.png create mode 100644 core/embed/rust/src/ui/model_tt/component/homescreen.rs create mode 100644 core/embed/rust/src/ui/model_tt/res/lock.toif create mode 100644 core/embed/rust/src/ui/model_tt/res/magic.toif delete mode 100644 core/src/apps/homescreen/busyscreen.py delete mode 100644 core/src/apps/homescreen/homescreen.py delete mode 100644 core/src/apps/homescreen/lockscreen.py create mode 100644 core/src/trezor/ui/layouts/homescreen.py create mode 100644 core/src/trezor/ui/layouts/tt_v2/homescreen.py diff --git a/core/SConscript.firmware b/core/SConscript.firmware index 911f74365f..65be53fe24 100644 --- a/core/SConscript.firmware +++ b/core/SConscript.firmware @@ -576,12 +576,14 @@ if FROZEN: SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/components/common/*.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/__init__.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/common.py')) + SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/homescreen.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/reset.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/recovery.py')) if EVERYTHING: SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/fido.py')) if TREZOR_MODEL in ('T',): SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/__init__.py')) + SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/homescreen.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/reset.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/recovery.py')) if EVERYTHING: diff --git a/core/SConscript.unix b/core/SConscript.unix index b8ae28f737..9aaf8f8ab9 100644 --- a/core/SConscript.unix +++ b/core/SConscript.unix @@ -530,12 +530,14 @@ if FROZEN: SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/components/common/*.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/__init__.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/common.py')) + SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/homescreen.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/reset.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/recovery.py')) if EVERYTHING: SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/fido.py')) if TREZOR_MODEL in ('T',): SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/__init__.py')) + SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/homescreen.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/reset.py')) SOURCE_PY.extend(Glob(SOURCE_PY_DIR + 'trezor/ui/layouts/tt_v2/recovery.py')) if EVERYTHING: diff --git a/core/assets/lock-new.png b/core/assets/lock-new.png new file mode 100644 index 0000000000000000000000000000000000000000..6cb7246af62262ae4deb8f593f42ba80883d8fd5 GIT binary patch literal 182 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CH0VEjgt}QYEQY`6?zK#qG8~eHcB(eheOiAAE zE)4(M`_JqL^5Q*R978y+&powKuqi;q( zf&`PVF6HUl8jD`;t+``le4J@rW&UqP_YLO^QUfpBJ$$&}+fu`pWS2R+vIKW_&%bTI exJWPBKVPC;Zo;=Y>x_X`F?hQAxvXlDyqr z82-2SpV<%Ob$YruhDclv?O!O!WGLWzpNDOx(6*K-6NJ{alrYFTuwP)j&gjg#aYsaq zNtWp=!&3?Xhx7WC>@r_=#>Ojtu`co?W2M%W6VvJGx{ax7Z z<5z}5D?PJrDo8F_)LP9F;Lds?_v@s3`%7;o{kbE$*Xva6Ta}Z?VznM$SnPlLC+q6_ WfyX}mJboYOC { Button(ButtonEvent), #[cfg(feature = "touch")] Touch(TouchEvent), + USB(USBEvent), /// Previously requested timer was triggered. This invalidates the timer /// token (another timer has to be requested). Timer(TimerToken), diff --git a/core/embed/rust/src/ui/event.rs b/core/embed/rust/src/ui/event.rs index 0700335a86..3c273f9969 100644 --- a/core/embed/rust/src/ui/event.rs +++ b/core/embed/rust/src/ui/event.rs @@ -53,3 +53,9 @@ impl TouchEvent { Ok(result) } } + +#[derive(Copy, Clone, PartialEq, Eq)] +pub enum USBEvent { + /// USB host has connected/disconnected. + Connected(bool), +} diff --git a/core/embed/rust/src/ui/geometry.rs b/core/embed/rust/src/ui/geometry.rs index 09703cb76a..f1b0000e26 100644 --- a/core/embed/rust/src/ui/geometry.rs +++ b/core/embed/rust/src/ui/geometry.rs @@ -290,6 +290,10 @@ impl Rect { self.top_left().center(self.bottom_right()) } + pub const fn top_center(&self) -> Point { + self.top_left().center(self.top_right()) + } + pub const fn bottom_center(&self) -> Point { self.bottom_left().center(self.bottom_right()) } diff --git a/core/embed/rust/src/ui/layout/obj.rs b/core/embed/rust/src/ui/layout/obj.rs index 513adbb0a9..39b0e1abce 100644 --- a/core/embed/rust/src/ui/layout/obj.rs +++ b/core/embed/rust/src/ui/layout/obj.rs @@ -26,6 +26,7 @@ use crate::{ use crate::ui::event::ButtonEvent; #[cfg(feature = "touch")] use crate::ui::event::TouchEvent; +use crate::ui::event::USBEvent; /// Conversion trait implemented by components that know how to convert their /// message values into MicroPython `Obj`s. @@ -273,6 +274,7 @@ impl LayoutObj { Qstr::MP_QSTR_touch_event => obj_fn_var!(4, 4, ui_layout_touch_event).as_obj(), Qstr::MP_QSTR_button_event => obj_fn_var!(3, 3, ui_layout_button_event).as_obj(), Qstr::MP_QSTR_progress_event => obj_fn_var!(3, 3, ui_layout_progress_event).as_obj(), + Qstr::MP_QSTR_usb_event => obj_fn_var!(2, 2, ui_layout_usb_event).as_obj(), Qstr::MP_QSTR_timer => obj_fn_2!(ui_layout_timer).as_obj(), Qstr::MP_QSTR_paint => obj_fn_1!(ui_layout_paint).as_obj(), Qstr::MP_QSTR_request_complete_repaint => obj_fn_1!(ui_layout_request_complete_repaint).as_obj(), @@ -412,6 +414,19 @@ extern "C" fn ui_layout_progress_event(n_args: usize, args: *const Obj) -> Obj { unsafe { util::try_with_args_and_kwargs(n_args, args, &Map::EMPTY, block) } } +extern "C" fn ui_layout_usb_event(n_args: usize, args: *const Obj) -> Obj { + let block = |args: &[Obj], _kwargs: &Map| { + if args.len() != 2 { + return Err(Error::TypeError); + } + let this: Gc = args[0].try_into()?; + let event = USBEvent::Connected(args[1].try_into()?); + let msg = this.obj_event(Event::USB(event))?; + Ok(msg) + }; + unsafe { util::try_with_args_and_kwargs(n_args, args, &Map::EMPTY, block) } +} + extern "C" fn ui_layout_timer(this: Obj, token: Obj) -> Obj { let block = || { let this: Gc = this.try_into()?; diff --git a/core/embed/rust/src/ui/model_tt/component/frame.rs b/core/embed/rust/src/ui/model_tt/component/frame.rs index ad8889c02d..c44ad434af 100644 --- a/core/embed/rust/src/ui/model_tt/component/frame.rs +++ b/core/embed/rust/src/ui/model_tt/component/frame.rs @@ -1,8 +1,9 @@ use super::theme; use crate::ui::{ - component::{Child, Component, Event, EventCtx}, + component::{text::TextStyle, Child, Component, Event, EventCtx}, display::{self, Color, Font}, geometry::{Insets, Offset, Rect}, + util::icon_text_center, }; pub struct Frame { @@ -94,7 +95,6 @@ where pub struct NotificationFrame { area: Rect, - border: Insets, icon: &'static [u8], title: U, content: Child, @@ -105,18 +105,17 @@ where T: Component, U: AsRef, { - const HEIGHT: i16 = 42; + const HEIGHT: i16 = 32; const COLOR: Color = theme::YELLOW; - const FONT: Font = Font::BOLD; const TEXT_OFFSET: Offset = Offset::new(1, -2); const ICON_SPACE: i16 = 8; + const BORDER: i16 = 8; pub fn new(icon: &'static [u8], title: U, content: T) -> Self { Self { icon, title, area: Rect::zero(), - border: theme::borders_notification(), content: Child::new(content), } } @@ -124,6 +123,25 @@ where pub fn inner(&self) -> &T { self.content.inner() } + + pub fn paint_notification(area: Rect, icon: &'static [u8], title: &str, color: Color) { + let (area, _) = area + .inset(Insets::uniform(Self::BORDER)) + .split_top(Self::HEIGHT); + let style = TextStyle { + background_color: color, + ..theme::TEXT_BOLD + }; + display::rect_fill_rounded(area, color, theme::BG, 2); + icon_text_center( + area.center(), + icon, + Self::ICON_SPACE, + title, + style, + Self::TEXT_OFFSET, + ); + } } impl Component for NotificationFrame @@ -134,10 +152,8 @@ where type Msg = T::Msg; fn place(&mut self, bounds: Rect) -> Rect { - let (title_area, content_area) = bounds.split_top(Self::HEIGHT); - let content_area = content_area.inset(self.border); - - self.area = title_area; + let content_area = bounds.inset(theme::borders_notification()); + self.area = bounds; self.content.place(content_area); bounds } @@ -147,24 +163,7 @@ where } fn paint(&mut self) { - let toif_info = unwrap!(display::toif_info(self.icon), "Invalid TOIF data"); - let icon_width = toif_info.0.y; - let text_width = Self::FONT.text_width(self.title.as_ref()); - let text_height = Self::FONT.text_height(); - let text_center = - self.area.center() + Offset::new((icon_width + Self::ICON_SPACE) / 2, text_height / 2); - let icon_center = self.area.center() - Offset::x((text_width + Self::ICON_SPACE) / 2); - - display::rect_fill_rounded(self.area, Self::COLOR, theme::BG, 2); - display::text_center( - text_center + Self::TEXT_OFFSET, - self.title.as_ref(), - Self::FONT, - theme::BG, - Self::COLOR, - ); - display::icon(icon_center, self.icon, theme::BG, Self::COLOR); - + Self::paint_notification(self.area, self.icon, self.title.as_ref(), Self::COLOR); self.content.paint(); } diff --git a/core/embed/rust/src/ui/model_tt/component/homescreen.rs b/core/embed/rust/src/ui/model_tt/component/homescreen.rs new file mode 100644 index 0000000000..01fe72087e --- /dev/null +++ b/core/embed/rust/src/ui/model_tt/component/homescreen.rs @@ -0,0 +1,266 @@ +use crate::{ + time::{Duration, Instant}, + ui::{ + component::{Component, Empty, Event, EventCtx, Pad, TimerToken}, + display::{self, Color, Font}, + event::{TouchEvent, USBEvent}, + geometry::{Offset, Point, Rect}, + model_tt::constant, + util::icon_text_center, + }, +}; + +use super::{theme, Loader, LoaderMsg, NotificationFrame}; + +const AREA: Rect = constant::screen(); +const TOP_CENTER: Point = AREA.top_center(); +const LABEL_Y: i16 = 216; +const LOCKED_Y: i16 = 101; +const TAP_Y: i16 = 134; +const HOLD_Y: i16 = 35; +const LOADER_OFFSET: Offset = Offset::y(-10); +const LOADER_DELAY: Duration = Duration::from_millis(500); +const LOADER_DURATION: Duration = Duration::from_millis(2000); + +pub struct Homescreen { + label: T, + notification: Option<(T, u8)>, + hold_to_lock: bool, + usb_connected: bool, + loader: Loader, + pad: Pad, + delay: Option, +} + +pub enum HomescreenMsg { + Dismissed, +} + +impl Homescreen +where + T: AsRef, +{ + pub fn new(label: T, notification: Option<(T, u8)>, hold_to_lock: bool) -> Self { + Self { + label, + notification, + hold_to_lock, + usb_connected: true, + loader: Loader::new().with_durations(LOADER_DURATION, LOADER_DURATION / 3), + pad: Pad::with_background(theme::BG), + delay: None, + } + } + + fn level_to_style(level: u8) -> (Color, &'static [u8]) { + match level { + 2 => (theme::VIOLET, theme::ICON_MAGIC), + 1 => (theme::YELLOW, theme::ICON_WARN), + _ => (theme::RED, theme::ICON_WARN), + } + } + + fn paint_notification(&self) { + if !self.usb_connected { + let (color, icon) = Self::level_to_style(0); + NotificationFrame::::paint_notification( + AREA, + icon, + "NO USB CONNECTION", + color, + ); + } else if let Some((notification, level)) = &self.notification { + let (color, icon) = Self::level_to_style(*level); + NotificationFrame::::paint_notification( + AREA, + icon, + notification.as_ref(), + color, + ); + } + } + + fn paint_loader(&mut self) { + display::text_center( + TOP_CENTER + Offset::y(HOLD_Y), + "HOLD TO LOCK", + Font::BOLD, + theme::FG, + theme::BG, + ); + self.loader.paint() + } + + fn event_usb(&mut self, ctx: &mut EventCtx, event: Event) { + if let Event::USB(USBEvent::Connected(is_connected)) = event { + if self.usb_connected != is_connected { + self.usb_connected = is_connected; + ctx.request_paint(); + } + } + } + + fn event_hold(&mut self, ctx: &mut EventCtx, event: Event) -> bool { + match event { + Event::Touch(TouchEvent::TouchStart(_)) => { + if self.loader.is_animating() { + self.loader.start_growing(ctx, Instant::now()); + } else { + self.delay = Some(ctx.request_timer(LOADER_DELAY)); + } + } + Event::Touch(TouchEvent::TouchEnd(_)) => { + self.delay = None; + let now = Instant::now(); + if self.loader.is_completely_grown(now) { + return true; + } + if self.loader.is_animating() { + self.loader.start_shrinking(ctx, now); + } + } + Event::Timer(token) if Some(token) == self.delay => { + self.delay = None; + self.pad.clear(); + self.loader.start_growing(ctx, Instant::now()); + } + _ => {} + } + + match self.loader.event(ctx, event) { + Some(LoaderMsg::GrownCompletely) => { + // Wait for TouchEnd before returning. + } + Some(LoaderMsg::ShrunkCompletely) => { + self.loader.reset(); + self.pad.clear(); + ctx.request_paint() + } + None => {} + } + + false + } +} + +impl Component for Homescreen +where + T: AsRef, +{ + type Msg = HomescreenMsg; + + fn place(&mut self, bounds: Rect) -> Rect { + self.pad.place(AREA); + self.loader.place(AREA.translate(LOADER_OFFSET)); + bounds + } + + fn event(&mut self, ctx: &mut EventCtx, event: Event) -> Option { + Self::event_usb(self, ctx, event); + if self.hold_to_lock { + Self::event_hold(self, ctx, event).then_some(HomescreenMsg::Dismissed) + } else { + None + } + } + + fn paint(&mut self) { + self.pad.paint(); + if self.loader.is_animating() || self.loader.is_completely_grown(Instant::now()) { + self.paint_loader(); + } else { + self.paint_notification(); + paint_label(self.label.as_ref(), false); + } + } + + fn bounds(&self, sink: &mut dyn FnMut(Rect)) { + self.loader.bounds(sink); + sink(self.pad.area); + } +} + +#[cfg(feature = "ui_debug")] +impl> crate::trace::Trace for Homescreen { + fn trace(&self, d: &mut dyn crate::trace::Tracer) { + d.open("Homescreen"); + d.field("label", &self.label.as_ref()); + d.close(); + } +} + +pub struct Lockscreen { + label: T, + bootscreen: bool, +} + +impl Lockscreen { + pub fn new(label: T, bootscreen: bool) -> Self { + Lockscreen { label, bootscreen } + } +} + +impl Component for Lockscreen +where + T: AsRef, +{ + type Msg = HomescreenMsg; + + fn place(&mut self, bounds: Rect) -> Rect { + bounds + } + + fn event(&mut self, _ctx: &mut EventCtx, event: Event) -> Option { + if let Event::Touch(TouchEvent::TouchEnd(_)) = event { + return Some(HomescreenMsg::Dismissed); + } + None + } + + fn paint(&mut self) { + let (locked, tap) = if self.bootscreen { + ("NOT CONNECTED", "Tap to connect") + } else { + ("LOCKED", "Tap to unlock") + }; + icon_text_center( + TOP_CENTER + Offset::y(LOCKED_Y), + theme::ICON_LOCK, + 2, + locked, + theme::TEXT_BOLD, + Offset::zero(), + ); + display::text_center( + TOP_CENTER + Offset::y(TAP_Y), + tap, + Font::NORMAL, + theme::OFF_WHITE, + theme::BG, + ); + paint_label(self.label.as_ref(), true); + } +} + +#[cfg(feature = "ui_debug")] +impl crate::trace::Trace for Lockscreen { + fn trace(&self, d: &mut dyn crate::trace::Tracer) { + d.open("Lockscreen"); + d.close(); + } +} + +fn paint_label(label: &str, lockscreen: bool) { + let label_color = if lockscreen { + theme::GREY_MEDIUM + } else { + theme::FG + }; + display::text_center( + TOP_CENTER + Offset::y(LABEL_Y), + label, + Font::BOLD, + label_color, + theme::BG, + ); +} diff --git a/core/embed/rust/src/ui/model_tt/component/loader.rs b/core/embed/rust/src/ui/model_tt/component/loader.rs index 4c42bfc56a..6b638fa868 100644 --- a/core/embed/rust/src/ui/model_tt/component/loader.rs +++ b/core/embed/rust/src/ui/model_tt/component/loader.rs @@ -44,6 +44,16 @@ impl Loader { } } + pub fn with_durations( + mut self, + growing_duration: Duration, + shrinking_duration: Duration, + ) -> Self { + self.growing_duration = growing_duration; + self.shrinking_duration = shrinking_duration; + self + } + pub fn start_growing(&mut self, ctx: &mut EventCtx, now: Instant) { let mut anim = Animation::new( display::LOADER_MIN, diff --git a/core/embed/rust/src/ui/model_tt/component/mod.rs b/core/embed/rust/src/ui/model_tt/component/mod.rs index ea50bce2a0..da2796a797 100644 --- a/core/embed/rust/src/ui/model_tt/component/mod.rs +++ b/core/embed/rust/src/ui/model_tt/component/mod.rs @@ -4,6 +4,7 @@ mod fido; mod fido_icons; mod frame; mod hold_to_confirm; +mod homescreen; mod keyboard; mod loader; mod number_input; @@ -20,6 +21,7 @@ pub use dialog::{Dialog, DialogMsg, IconDialog}; pub use fido::{FidoConfirm, FidoMsg}; pub use frame::{Frame, NotificationFrame}; pub use hold_to_confirm::{HoldToConfirm, HoldToConfirmMsg}; +pub use homescreen::{Homescreen, HomescreenMsg, Lockscreen}; pub use keyboard::{ bip39::Bip39Input, mnemonic::{MnemonicInput, MnemonicKeyboard, MnemonicKeyboardMsg}, diff --git a/core/embed/rust/src/ui/model_tt/layout.rs b/core/embed/rust/src/ui/model_tt/layout.rs index 3107993668..03a939103e 100644 --- a/core/embed/rust/src/ui/model_tt/layout.rs +++ b/core/embed/rust/src/ui/model_tt/layout.rs @@ -43,10 +43,10 @@ use super::{ component::{ Bip39Input, Button, ButtonMsg, ButtonStyleSheet, CancelConfirmMsg, CancelInfoConfirmMsg, Dialog, DialogMsg, FidoConfirm, FidoMsg, Frame, HoldToConfirm, HoldToConfirmMsg, - IconDialog, MnemonicInput, MnemonicKeyboard, MnemonicKeyboardMsg, NotificationFrame, - NumberInputDialog, NumberInputDialogMsg, PassphraseKeyboard, PassphraseKeyboardMsg, - PinKeyboard, PinKeyboardMsg, Progress, SelectWordCount, SelectWordCountMsg, SelectWordMsg, - Slip39Input, SwipeHoldPage, SwipePage, + Homescreen, HomescreenMsg, IconDialog, Lockscreen, MnemonicInput, MnemonicKeyboard, + MnemonicKeyboardMsg, NotificationFrame, NumberInputDialog, NumberInputDialogMsg, + PassphraseKeyboard, PassphraseKeyboardMsg, PinKeyboard, PinKeyboardMsg, Progress, + SelectWordCount, SelectWordCountMsg, SelectWordMsg, Slip39Input, SwipeHoldPage, SwipePage, }, theme, }; @@ -295,6 +295,28 @@ where } } +impl ComponentMsgObj for Homescreen +where + T: AsRef, +{ + fn msg_try_into_obj(&self, msg: Self::Msg) -> Result { + match msg { + HomescreenMsg::Dismissed => Ok(CANCELLED.as_obj()), + } + } +} + +impl ComponentMsgObj for Lockscreen +where + T: AsRef, +{ + fn msg_try_into_obj(&self, msg: Self::Msg) -> Result { + match msg { + HomescreenMsg::Dismissed => Ok(CANCELLED.as_obj()), + } + } +} + extern "C" fn new_confirm_action(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj { let block = move |_args: &[Obj], kwargs: &Map| { let title: StrBuffer = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?; @@ -1164,6 +1186,52 @@ extern "C" fn new_show_progress(n_args: usize, args: *const Obj, kwargs: *mut Ma unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) } } +extern "C" fn new_show_homescreen(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj { + let block = move |_args: &[Obj], kwargs: &Map| { + let label: StrBuffer = kwargs.get(Qstr::MP_QSTR_label)?.try_into()?; + let notification: Option = + kwargs.get(Qstr::MP_QSTR_notification)?.try_into_option()?; + let notification_level: u8 = kwargs.get_or(Qstr::MP_QSTR_notification_level, 0)?; + let hold: bool = kwargs.get(Qstr::MP_QSTR_hold)?.try_into()?; + + let notification = notification.map(|w| (w, notification_level)); + let obj = LayoutObj::new(Homescreen::new(label, notification, hold))?; + Ok(obj.into()) + }; + unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) } +} + +extern "C" fn new_show_lockscreen(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj { + let block = move |_args: &[Obj], kwargs: &Map| { + let label: StrBuffer = kwargs.get(Qstr::MP_QSTR_label)?.try_into()?; + let bootscreen: bool = kwargs.get(Qstr::MP_QSTR_bootscreen)?.try_into()?; + + let obj = LayoutObj::new(Lockscreen::new(label, bootscreen))?; + Ok(obj.into()) + }; + unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) } +} + +extern "C" fn new_show_busyscreen(n_args: usize, args: *const Obj, kwargs: *mut Map) -> Obj { + let block = move |_args: &[Obj], kwargs: &Map| { + let title: StrBuffer = kwargs.get(Qstr::MP_QSTR_title)?.try_into()?; + let description: StrBuffer = kwargs.get(Qstr::MP_QSTR_description)?.try_into()?; + let time_ms: u32 = kwargs.get(Qstr::MP_QSTR_time_ms)?.try_into()?; + + let obj = LayoutObj::new(Frame::new( + title, + Dialog::new( + Paragraphs::new(Paragraph::new(&theme::TEXT_NORMAL, description).centered()), + Timeout::new(time_ms).map(|msg| { + (matches!(msg, TimeoutMsg::TimedOut)).then(|| CancelConfirmMsg::Cancelled) + }), + ), + ))?; + Ok(obj.into()) + }; + unsafe { util::try_with_args_and_kwargs(n_args, args, kwargs, block) } +} + #[no_mangle] pub static mp_module_trezorui2: Module = obj_module! { Qstr::MP_QSTR___name__ => Qstr::MP_QSTR_trezorui2.to_obj(), @@ -1454,7 +1522,7 @@ pub static mp_module_trezorui2: Module = obj_module! { /// def select_word_count( /// *, /// dry_run: bool, - /// ) -> int | trezorui2.CANCELLED: + /// ) -> int | CANCELLED: /// """Select mnemonic word count from (12, 18, 20, 24, 33).""" Qstr::MP_QSTR_select_word_count => obj_fn_kw!(0, new_select_word_count).as_obj(), @@ -1482,6 +1550,36 @@ pub static mp_module_trezorui2: Module = obj_module! { /// description is determined at construction time. If you want multiline descriptions /// make sure the initial desciption has at least that amount of lines.""" Qstr::MP_QSTR_show_progress => obj_fn_kw!(0, new_show_progress).as_obj(), + + /// def show_homescreen( + /// *, + /// label: str, + /// hold: bool, + /// notification: str | None, + /// notification_level: int = 0, + /// skip_first_paint: bool, + /// ) -> CANCELLED: + /// """Idle homescreen.""" + Qstr::MP_QSTR_show_homescreen => obj_fn_kw!(0, new_show_homescreen).as_obj(), + + /// def show_lockscreen( + /// *, + /// label: str, + /// bootscreen: bool, + /// skip_first_paint: bool, + /// ) -> CANCELLED: + /// """Homescreen for locked device.""" + Qstr::MP_QSTR_show_lockscreen => obj_fn_kw!(0, new_show_lockscreen).as_obj(), + + /// def show_busyscreen( + /// *, + /// title: str, + /// description: str, + /// time_ms: int, + /// skip_first_paint: bool, + /// ) -> CANCELLED: + /// """Homescreen used for indicating coinjoin in progress.""" + Qstr::MP_QSTR_show_busyscreen => obj_fn_kw!(0, new_show_busyscreen).as_obj(), }; #[cfg(test)] diff --git a/core/embed/rust/src/ui/model_tt/res/lock.toif b/core/embed/rust/src/ui/model_tt/res/lock.toif new file mode 100644 index 0000000000000000000000000000000000000000..7fb2b3a94d1b70881f962b922a79f39820595ead GIT binary patch literal 63 zcmV-F0KorLPf14%01f~%0001EU`RA$U|?wY|6h`U;k#z@d*8TuI*zCp=` V{T&^@B)|Lz0)PBuKpGIR0RYA_7smhq literal 0 HcmV?d00001 diff --git a/core/embed/rust/src/ui/model_tt/res/magic.toif b/core/embed/rust/src/ui/model_tt/res/magic.toif new file mode 100644 index 0000000000000000000000000000000000000000..a99c78aacdc6e4bcb4a53a595a70b62dd4f483c4 GIT binary patch literal 110 zcmV-!0FnPxPf14*01yCT0001EU;qL!1_k`0?7ayg;+))ePBO>RsstH!>9L* z49|QR7=Hd|XV|RCQ26(ME|UY(mj6Joo|)l481OJ$15x|g7#NoP``^a`GVSMoHn6E* Q{xgB;3;Q9q6vTl@0LINPKL7v# literal 0 HcmV?d00001 diff --git a/core/embed/rust/src/ui/model_tt/theme.rs b/core/embed/rust/src/ui/model_tt/theme.rs index 2d27e51edd..7460456300 100644 --- a/core/embed/rust/src/ui/model_tt/theme.rs +++ b/core/embed/rust/src/ui/model_tt/theme.rs @@ -40,6 +40,7 @@ pub const OFF_WHITE: Color = Color::rgb(0xDE, 0xDE, 0xDE); // very light grey pub const GREY_LIGHT: Color = Color::rgb(0xA8, 0xA8, 0xA8); // greyish pub const GREY_MEDIUM: Color = Color::rgb(0x64, 0x64, 0x64); pub const GREY_DARK: Color = Color::rgb(0x33, 0x33, 0x33); // greyer +pub const VIOLET: Color = Color::rgb(0x9E, 0x27, 0xD6); // Commonly used corner radius (i.e. for buttons). pub const RADIUS: u8 = 2; @@ -58,8 +59,10 @@ pub const ICON_BACK: &[u8] = include_res!("model_tt/res/back.toif"); pub const ICON_CLICK: &[u8] = include_res!("model_tt/res/click.toif"); pub const ICON_NEXT: &[u8] = include_res!("model_tt/res/next.toif"); pub const ICON_WARN: &[u8] = include_res!("model_tt/res/warn-icon.toif"); +pub const ICON_MAGIC: &[u8] = include_res!("model_tt/res/magic.toif"); pub const ICON_LIST_CURRENT: &[u8] = include_res!("model_tt/res/current.toif"); pub const ICON_LIST_CHECK: &[u8] = include_res!("model_tt/res/check.toif"); +pub const ICON_LOCK: &[u8] = include_res!("model_tt/res/lock.toif"); // Large, three-color icons. pub const WARN_COLOR: Color = YELLOW; @@ -440,5 +443,5 @@ pub const fn borders_scroll() -> Insets { } pub const fn borders_notification() -> Insets { - Insets::new(6, 10, 14, 10) + Insets::new(48, 10, 14, 10) } diff --git a/core/embed/rust/src/ui/util.rs b/core/embed/rust/src/ui/util.rs index e6b64821d7..d04b85618b 100644 --- a/core/embed/rust/src/ui/util.rs +++ b/core/embed/rust/src/ui/util.rs @@ -1,3 +1,9 @@ +use crate::ui::{ + component::text::TextStyle, + display, + geometry::{Offset, Point}, +}; + pub trait ResultExt { fn assert_if_debugging_ui(self, message: &str); } @@ -55,6 +61,32 @@ pub fn animation_disabled() -> bool { #[cfg(not(feature = "ui_debug"))] pub fn set_animation_disabled(_disabled: bool) {} +/// Display an icon and a text centered relative to given `Point`. +pub fn icon_text_center( + baseline: Point, + icon: &'static [u8], + space: i16, + text: &str, + style: TextStyle, + text_offset: Offset, +) { + let toif_info = unwrap!(display::toif_info(icon), "Invalid TOIF data"); + let icon_width = toif_info.0.y; + let text_width = style.text_font.text_width(text); + let text_height = style.text_font.text_height(); + let text_center = baseline + Offset::new((icon_width + space) / 2, text_height / 2); + let icon_center = baseline - Offset::x((text_width + space) / 2); + + display::text_center( + text_center + text_offset, + text, + style.text_font, + style.text_color, + style.background_color, + ); + display::icon(icon_center, icon, style.text_color, style.background_color); +} + #[cfg(test)] mod tests { use super::*; diff --git a/core/mocks/generated/trezorui2.pyi b/core/mocks/generated/trezorui2.pyi index 6b043d903c..e9cc3c3aed 100644 --- a/core/mocks/generated/trezorui2.pyi +++ b/core/mocks/generated/trezorui2.pyi @@ -371,7 +371,7 @@ def confirm_recovery( def select_word_count( *, dry_run: bool, -) -> int | trezorui2.CANCELLED: +) -> int | CANCELLED: """Select mnemonic word count from (12, 18, 20, 24, 33).""" @@ -401,3 +401,36 @@ def show_progress( """Show progress loader. Please note that the number of lines reserved on screen for description is determined at construction time. If you want multiline descriptions make sure the initial desciption has at least that amount of lines.""" + + +# rust/src/ui/model_tt/layout.rs +def show_homescreen( + *, + label: str, + hold: bool, + notification: str | None, + notification_level: int = 0, + skip_first_paint: bool, +) -> CANCELLED: + """Idle homescreen.""" + + +# rust/src/ui/model_tt/layout.rs +def show_lockscreen( + *, + label: str, + bootscreen: bool, + skip_first_paint: bool, +) -> CANCELLED: + """Homescreen for locked device.""" + + +# rust/src/ui/model_tt/layout.rs +def show_busyscreen( + *, + title: str, + description: str, + time_ms: int, + skip_first_paint: bool, +) -> CANCELLED: + """Homescreen used for indicating coinjoin in progress.""" diff --git a/core/src/all_modules.py b/core/src/all_modules.py index a53315d586..ab5ebc1901 100644 --- a/core/src/all_modules.py +++ b/core/src/all_modules.py @@ -153,6 +153,8 @@ trezor.ui.layouts.common import trezor.ui.layouts.common trezor.ui.layouts.fido import trezor.ui.layouts.fido +trezor.ui.layouts.homescreen +import trezor.ui.layouts.homescreen trezor.ui.layouts.recovery import trezor.ui.layouts.recovery trezor.ui.layouts.reset @@ -163,6 +165,8 @@ trezor.ui.layouts.tt_v2 import trezor.ui.layouts.tt_v2 trezor.ui.layouts.tt_v2.fido import trezor.ui.layouts.tt_v2.fido +trezor.ui.layouts.tt_v2.homescreen +import trezor.ui.layouts.tt_v2.homescreen trezor.ui.layouts.tt_v2.recovery import trezor.ui.layouts.tt_v2.recovery trezor.ui.layouts.tt_v2.reset @@ -293,12 +297,6 @@ apps.debug.load_device import apps.debug.load_device apps.homescreen import apps.homescreen -apps.homescreen.busyscreen -import apps.homescreen.busyscreen -apps.homescreen.homescreen -import apps.homescreen.homescreen -apps.homescreen.lockscreen -import apps.homescreen.lockscreen apps.management.apply_flags import apps.management.apply_flags apps.management.apply_settings diff --git a/core/src/apps/base.py b/core/src/apps/base.py index e46b063518..3f7b03a369 100644 --- a/core/src/apps/base.py +++ b/core/src/apps/base.py @@ -291,12 +291,12 @@ def set_homescreen() -> None: set_default = workflow.set_default # local_cache_attribute if storage_cache.is_set(storage_cache.APP_COMMON_BUSY_DEADLINE_MS): - from apps.homescreen.busyscreen import busyscreen + from apps.homescreen import busyscreen set_default(busyscreen) elif not config.is_unlocked(): - from apps.homescreen.lockscreen import lockscreen + from apps.homescreen import lockscreen set_default(lockscreen) @@ -306,7 +306,7 @@ def set_homescreen() -> None: set_default(recovery_homescreen) else: - from apps.homescreen.homescreen import homescreen + from apps.homescreen import homescreen set_default(homescreen) diff --git a/core/src/apps/homescreen/__init__.py b/core/src/apps/homescreen/__init__.py index 64bcbcbc02..2c6276bc7b 100644 --- a/core/src/apps/homescreen/__init__.py +++ b/core/src/apps/homescreen/__init__.py @@ -1,47 +1,57 @@ -from typing import Any - +import storage import storage.cache import storage.device -from trezor import ui +from trezor import config, wire +from trezor.ui.layouts.homescreen import Busyscreen, Homescreen, Lockscreen + +from apps.base import busy_expiry_ms, lock_device -class HomescreenBase(ui.Layout): - RENDER_INDICATOR: object | None = None +async def busyscreen() -> None: + await Busyscreen(busy_expiry_ms()) - def __init__(self) -> None: - super().__init__() - self.label = storage.device.get_label() or "My Trezor" - self.repaint = storage.cache.homescreen_shown is not self.RENDER_INDICATOR - def get_image(self) -> bytes: - from trezor import res +async def homescreen() -> None: + if storage.device.is_initialized(): + label = storage.device.get_label() + else: + label = "Go to trezor.io/start" - return storage.device.get_homescreen() or res.load( - "apps/homescreen/res/bg.toif" - ) + notification = None + notification_is_error = False + if storage.device.is_initialized() and storage.device.no_backup(): + notification = "SEEDLESS" + notification_is_error = True + elif storage.device.is_initialized() and storage.device.unfinished_backup(): + notification = "BACKUP FAILED!" + notification_is_error = True + elif storage.device.is_initialized() and storage.device.needs_backup(): + notification = "NEEDS BACKUP!" + elif storage.device.is_initialized() and not config.has_pin(): + notification = "PIN NOT SET!" + elif storage.device.get_experimental_features(): + notification = "EXPERIMENTAL MODE!" - async def __iter__(self) -> Any: - # We need to catch the ui.Cancelled exception that kills us, because that means - # that we will need to draw on screen again after restart. - try: - return await super().__iter__() - except ui.Cancelled: - storage.cache.homescreen_shown = None - raise + await Homescreen( + label=label, + notification=notification, + notification_is_error=notification_is_error, + hold_to_lock=config.has_pin(), + ) + lock_device() - def on_render(self) -> None: - if not self.repaint: - return - self.do_render() - self.set_repaint(False) - def do_render(self) -> None: - raise NotImplementedError +async def lockscreen() -> None: + from apps.common.request_pin import can_lock_device + from apps.base import unlock_device - def set_repaint(self, value: bool) -> None: - self.repaint = value - storage.cache.homescreen_shown = None if value else self.RENDER_INDICATOR - - def _before_render(self) -> None: - if storage.cache.homescreen_shown is not self.RENDER_INDICATOR: - super()._before_render() + # Only show the lockscreen UI if the device can in fact be locked. + if can_lock_device(): + await Lockscreen(label=storage.device.get_label()) + # Otherwise proceed directly to unlock() call. If the device is already unlocked, + # it should be a no-op storage-wise, but it resets the internal configuration + # to an unlocked state. + try: + await unlock_device() + except wire.PinCancelled: + pass diff --git a/core/src/apps/homescreen/busyscreen.py b/core/src/apps/homescreen/busyscreen.py deleted file mode 100644 index 59c27e3304..0000000000 --- a/core/src/apps/homescreen/busyscreen.py +++ /dev/null @@ -1,33 +0,0 @@ -from typing import TYPE_CHECKING - -import storage.cache as storage_cache - -from . import HomescreenBase - -if TYPE_CHECKING: - from trezor import loop - - -async def busyscreen() -> None: - await Busyscreen() - - -class Busyscreen(HomescreenBase): - RENDER_INDICATOR = storage_cache.BUSYSCREEN_ON - - def create_tasks(self) -> tuple[loop.AwaitableTask, ...]: - return self.handle_rendering(), self.handle_input(), self.handle_expiry() - - def handle_expiry(self) -> loop.Task: # type: ignore [awaitable-is-generator] - from apps.base import busy_expiry_ms, set_homescreen - from trezor import ui, loop - - yield loop.sleep(busy_expiry_ms()) - storage_cache.delete(storage_cache.APP_COMMON_BUSY_DEADLINE_MS) - set_homescreen() - raise ui.Result(None) - - def do_render(self) -> None: - from trezor.ui.layouts import show_coinjoin - - show_coinjoin() diff --git a/core/src/apps/homescreen/homescreen.py b/core/src/apps/homescreen/homescreen.py deleted file mode 100644 index 31d0679f69..0000000000 --- a/core/src/apps/homescreen/homescreen.py +++ /dev/null @@ -1,142 +0,0 @@ -import utime -from micropython import const -from typing import TYPE_CHECKING, Tuple - -import storage.cache -from trezor import config, ui - -from . import HomescreenBase - -if TYPE_CHECKING: - from trezor import loop - - -_LOADER_DELAY_MS = const(500) -_LOADER_TOTAL_MS = const(2500) - - -async def homescreen() -> None: - from apps.base import lock_device - - await Homescreen() - lock_device() - - -class Homescreen(HomescreenBase): - RENDER_INDICATOR = storage.cache.HOMESCREEN_ON - - def __init__(self) -> None: - from trezor.ui.loader import Loader, LoaderNeutral - import storage.device as storage_device - - super().__init__() - if not storage_device.is_initialized(): - self.label = "Go to trezor.io/start" - - self.loader = Loader( - LoaderNeutral, - _LOADER_TOTAL_MS - _LOADER_DELAY_MS, - -10, - 3, - ) - self.touch_ms: int | None = None - - def create_tasks(self) -> Tuple[loop.AwaitableTask, ...]: - return super().create_tasks() + (self.usb_checker_task(),) - - async def usb_checker_task(self) -> None: - from trezor import loop, io - - usbcheck = loop.wait(io.USB_CHECK) - while True: - await usbcheck - self.set_repaint(True) - - def do_render(self) -> None: - from trezor import utils - from trezor import ui # local_cache_global - import storage.device as storage_device - - header_error = ui.header_error # local_cache_attribute - header_warning = ui.header_warning # local_cache_attribute - display = ui.display # local_cache_attribute - model = utils.MODEL # local_cache_attribute - - # warning bar on top - if storage_device.is_initialized() and storage_device.no_backup(): - header_error("SEEDLESS") - elif storage_device.is_initialized() and storage_device.unfinished_backup(): - header_error("BACKUP FAILED!") - elif storage_device.is_initialized() and storage_device.needs_backup(): - header_warning("NEEDS BACKUP!") - elif storage_device.is_initialized() and not config.has_pin(): - header_warning("PIN NOT SET!") - elif storage_device.get_experimental_features(): - header_warning("EXPERIMENTAL MODE!") - else: - display.bar(0, 0, ui.WIDTH, ui.get_header_height(), ui.BG) - - # homescreen with shifted avatar and text on bottom - # Differs for each model - - if not utils.usb_data_connected(): - header_error("NO USB CONNECTION") - - # TODO: support homescreen avatar change for R and 1 - if model in ("T",): - display.avatar(48, 48 - 10, self.get_image(), ui.WHITE, ui.BLACK) - elif model in ("R",): - icon = "trezor/res/homescreen_model_r.toif" # 92x92 px - display.icon(18, 18, ui.res.load(icon), ui.style.FG, ui.style.BG) - elif model in ("1",): - icon = "trezor/res/homescreen_model_1.toif" # 64x36 px - display.icon(33, 14, ui.res.load(icon), ui.style.FG, ui.style.BG) - - label_heights = {"1": 60, "R": 120, "T": 220} - display.text_center( - ui.WIDTH // 2, - label_heights[model], - self.label, - ui.BOLD, - ui.FG, - ui.BG, - ) - - ui.refresh() - - def on_touch_start(self, _x: int, _y: int) -> None: - if self.loader.start_ms is not None: - self.loader.start() - elif config.has_pin(): - self.touch_ms = utime.ticks_ms() - - def on_touch_end(self, _x: int, _y: int) -> None: - if self.loader.start_ms is not None: - ui.display.clear() - self.set_repaint(True) - self.loader.stop() - self.touch_ms = None - - # raise here instead of self.loader.on_finish so as not to send TOUCH_END to the lockscreen - if self.loader.elapsed_ms() >= self.loader.target_ms: - raise ui.Result(None) - - def dispatch(self, event: int, x: int, y: int) -> None: - if ( - self.touch_ms is not None - and self.touch_ms + _LOADER_DELAY_MS < utime.ticks_ms() - ): - self.touch_ms = None - - # _loader_start - ui.display.clear() - ui.display.text_center( - ui.WIDTH // 2, 35, "Hold to lock", ui.BOLD, ui.FG, ui.BG - ) - self.loader.start() - # END _loader_start - - if event is ui.RENDER and self.loader.start_ms is not None: - self.loader.dispatch(event, x, y) - else: - super().dispatch(event, x, y) diff --git a/core/src/apps/homescreen/lockscreen.py b/core/src/apps/homescreen/lockscreen.py deleted file mode 100644 index 1fb84310ce..0000000000 --- a/core/src/apps/homescreen/lockscreen.py +++ /dev/null @@ -1,67 +0,0 @@ -import storage.cache -from trezor import loop, ui - -from . import HomescreenBase - - -async def lockscreen() -> None: - from trezor import wire - - from apps.common.request_pin import can_lock_device - from apps.base import unlock_device - - # Only show the lockscreen UI if the device can in fact be locked. - if can_lock_device(): - await Lockscreen() - # Otherwise proceed directly to unlock() call. If the device is already unlocked, - # it should be a no-op storage-wise, but it resets the internal configuration - # to an unlocked state. - try: - await unlock_device() - except wire.PinCancelled: - pass - - -class Lockscreen(HomescreenBase): - BACKLIGHT_LEVEL = ui.BACKLIGHT_LOW - RENDER_SLEEP = loop.SLEEP_FOREVER - RENDER_INDICATOR = storage.cache.LOCKSCREEN_ON - - def __init__(self, bootscreen: bool = False) -> None: - if bootscreen: - self.BACKLIGHT_LEVEL = ui.BACKLIGHT_NORMAL - self.lock_label = "Not connected" - self.tap_label = "Tap to connect" - else: - self.lock_label = "Locked" - self.tap_label = "Tap to unlock" - - super().__init__() - - def do_render(self) -> None: - from trezor import res - from trezor import ui # local_cache_global - - display = ui.display # local_cache_attribute - title_grey = ui.TITLE_GREY # local_cache_attribute - bg = ui.BG # local_cache_attribute - - # homescreen with label text on top - display.text_center(ui.WIDTH // 2, 35, self.label, ui.BOLD, title_grey, bg) - display.avatar(48, 48, self.get_image(), ui.WHITE, ui.BLACK) - - # lock bar - display.bar_radius(40, 100, 160, 40, title_grey, bg, 4) - display.bar_radius(42, 102, 156, 36, bg, title_grey, 4) - display.text_center( - ui.WIDTH // 2, 128, self.lock_label, ui.BOLD, title_grey, bg - ) - - # "tap to unlock" - display.text_center( - ui.WIDTH // 2 + 10, 220, self.tap_label, ui.BOLD, title_grey, bg - ) - display.icon(45, 202, res.load(ui.ICON_CLICK), title_grey, bg) - - def on_touch_end(self, _x: int, _y: int) -> None: - raise ui.Result(None) diff --git a/core/src/apps/management/recovery_device/homescreen.py b/core/src/apps/management/recovery_device/homescreen.py index 01a5f92879..50c67bc4a0 100644 --- a/core/src/apps/management/recovery_device/homescreen.py +++ b/core/src/apps/management/recovery_device/homescreen.py @@ -15,7 +15,7 @@ if TYPE_CHECKING: async def recovery_homescreen() -> None: from trezor import workflow - from apps.homescreen.homescreen import homescreen + from apps.homescreen import homescreen if not storage_recovery.is_in_progress(): workflow.set_default(homescreen) diff --git a/core/src/boot.py b/core/src/boot.py index 8de0768fbb..a8f382b959 100644 --- a/core/src/boot.py +++ b/core/src/boot.py @@ -2,13 +2,13 @@ import storage import storage.device from trezor import config, log, loop, ui, utils, wire from trezor.pin import show_pin_timeout +from trezor.ui.layouts.homescreen import Lockscreen from apps.common.request_pin import can_lock_device, verify_user_pin -from apps.homescreen.lockscreen import Lockscreen async def bootscreen() -> None: - lockscreen = Lockscreen(bootscreen=True) + lockscreen = Lockscreen(label=storage.device.get_label(), bootscreen=True) ui.display.orientation(storage.device.get_rotation()) while True: try: diff --git a/core/src/trezor/ui/layouts/homescreen.py b/core/src/trezor/ui/layouts/homescreen.py new file mode 100644 index 0000000000..0ca2c462da --- /dev/null +++ b/core/src/trezor/ui/layouts/homescreen.py @@ -0,0 +1 @@ +from .tt_v2.homescreen import * # noqa: F401,F403 diff --git a/core/src/trezor/ui/layouts/tt_v2/homescreen.py b/core/src/trezor/ui/layouts/tt_v2/homescreen.py new file mode 100644 index 0000000000..afb6a9affe --- /dev/null +++ b/core/src/trezor/ui/layouts/tt_v2/homescreen.py @@ -0,0 +1,126 @@ +from typing import TYPE_CHECKING + +import storage.cache as storage_cache +from trezor import ui + +import trezorui2 + +from . import _RustLayout + +if TYPE_CHECKING: + from trezor import io + from typing import Any, Tuple + + +class HomescreenBase(_RustLayout): + RENDER_INDICATOR: object | None = None + + def __init__(self, layout: Any) -> None: + super().__init__(layout=layout) + self.is_connected = True + + async def __iter__(self) -> Any: + # We need to catch the ui.Cancelled exception that kills us, because that means + # that we will need to draw on screen again after restart. + try: + return await super().__iter__() + except ui.Cancelled: + storage_cache.homescreen_shown = None + raise + + # In __debug__ mode, ignore {confirm,swipe,input}_signal. + def create_tasks(self) -> tuple[loop.AwaitableTask, ...]: + return self.handle_timers(), self.handle_input_and_rendering() + + +class Homescreen(HomescreenBase): + RENDER_INDICATOR = storage_cache.HOMESCREEN_ON + + def __init__( + self, + label: str | None, + notification: str | None, + notification_is_error: bool, + hold_to_lock: bool, + ) -> None: + level = 1 + if notification is not None: + notification = notification.rstrip("!") + if "EXPERIMENTAL" in notification: + level = 2 + elif notification_is_error: + level = 0 + + super().__init__( + layout=trezorui2.show_homescreen( + label=label or "My Trezor", + notification=notification, + notification_level=level, + hold=hold_to_lock, + ), + ) + + async def usb_checker_task(self) -> None: + from trezor import io, loop + + usbcheck = loop.wait(io.USB_CHECK) + while True: + is_connected = await usbcheck + if is_connected != self.is_connected: + self.is_connected = is_connected + self.layout.usb_event(is_connected) + self.layout.paint() + storage_cache.homescreen_shown = None + + def create_tasks(self) -> Tuple[loop.AwaitableTask, ...]: + return super().create_tasks() + (self.usb_checker_task(),) + + +class Lockscreen(HomescreenBase): + RENDER_INDICATOR = storage_cache.LOCKSCREEN_ON + BACKLIGHT_LEVEL = ui.BACKLIGHT_LOW + + def __init__( + self, + label: str | None, + bootscreen: bool = False, + ) -> None: + self.bootscreen = bootscreen + if bootscreen: + self.BACKLIGHT_LEVEL = ui.BACKLIGHT_NORMAL + + super().__init__( + layout=trezorui2.show_lockscreen( + label=label or "My Trezor", + bootscreen=bootscreen, + ), + ) + + async def __iter__(self) -> Any: + result = await super().__iter__() + if self.bootscreen: + self.request_complete_repaint() + return result + + +class Busyscreen(HomescreenBase): + RENDER_INDICATOR = storage_cache.BUSYSCREEN_ON + + def __init__(self, delay_ms: int) -> None: + super().__init__( + layout=trezorui2.show_busyscreen( + title="PLEASE WAIT", + description="CoinJoin in progress.\n\nDo not disconnect your\nTrezor.", + time_ms=delay_ms, + ) + ) + + async def __iter__(self) -> Any: + from apps.base import set_homescreen + + # Handle timeout. + result = await super().__iter__() + assert result == trezorui2.CANCELLED + storage_cache.delete(storage_cache.APP_COMMON_BUSY_DEADLINE_MS) + set_homescreen() + return result diff --git a/core/tools/toif_convert.py b/core/tools/toif_convert.py index 36472d4142..2df587145d 100755 --- a/core/tools/toif_convert.py +++ b/core/tools/toif_convert.py @@ -17,6 +17,7 @@ def toif_convert(infile, outfile): toif_convert.py somefile.jpg outfile.toif toif_convert.py infile.toif outfile.png + \b # ensure gray-scale output TOIF mogrify -colorspace gray icon.png toif_convert.py icon.png icon.toif diff --git a/tests/click_tests/recovery.py b/tests/click_tests/recovery.py index 5502e34633..3bffc58052 100644 --- a/tests/click_tests/recovery.py +++ b/tests/click_tests/recovery.py @@ -85,4 +85,4 @@ def enter_shares(debug: "DebugLink", shares: list[str]) -> None: def finalize(debug: "DebugLink") -> None: layout = debug.click(buttons.OK, wait=True) - assert layout.text == "Homescreen" + assert layout.text.startswith("< Homescreen ") diff --git a/tests/click_tests/test_autolock.py b/tests/click_tests/test_autolock.py index cdb7e18aa4..4a9ce14129 100644 --- a/tests/click_tests/test_autolock.py +++ b/tests/click_tests/test_autolock.py @@ -57,7 +57,7 @@ def set_autolock_delay(device_handler: "BackgroundDeviceHandler", delay_ms: int) debug.click(buttons.OK) layout = debug.wait_layout() - assert layout.text == "Homescreen" + assert layout.text.startswith("< Homescreen") assert device_handler.result() == "Settings applied" @@ -136,7 +136,7 @@ def test_dryrun_locks_at_number_of_words(device_handler: "BackgroundDeviceHandle # wait for autolock to trigger time.sleep(10.1) layout = debug.wait_layout() - assert layout.text == "Lockscreen" + assert layout.text.startswith("< Lockscreen") with pytest.raises(exceptions.Cancelled): device_handler.result() @@ -171,7 +171,7 @@ def test_dryrun_locks_at_word_entry(device_handler: "BackgroundDeviceHandler"): assert layout.text == "< MnemonicKeyboard >" time.sleep(10.1) layout = debug.wait_layout() - assert layout.text == "Lockscreen" + assert layout.text.startswith("< Lockscreen") with pytest.raises(exceptions.Cancelled): device_handler.result() diff --git a/tests/persistence_tests/test_shamir_persistence.py b/tests/persistence_tests/test_shamir_persistence.py index 5e837f04be..24df90e365 100644 --- a/tests/persistence_tests/test_shamir_persistence.py +++ b/tests/persistence_tests/test_shamir_persistence.py @@ -69,7 +69,7 @@ def test_abort(emulator: Emulator): assert layout.get_title() == "ABORT RECOVERY" layout = debug.click(buttons.OK, wait=True) - assert layout.text == "Homescreen" + assert layout.text.startswith("< Homescreen") features = device_handler.features() assert features.recovery_mode is False @@ -212,7 +212,7 @@ def test_recovery_multiple_resets(emulator: Emulator): enter_shares_with_restarts(debug) debug = device_handler.debuglink() layout = debug.read_layout() - assert layout.text == "Homescreen" + assert layout.text.startswith("< Homescreen") features = device_handler.features() assert features.initialized is True diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json index 6fa95fc665..a3569f4afb 100644 --- a/tests/ui_tests/fixtures.json +++ b/tests/ui_tests/fixtures.json @@ -618,1081 +618,1081 @@ "T1_zcash-test_sign_tx.py::test_spend_v4_input": "436b7a43b7fc7fe0615340c6aa73d46a18e5a0d804469702941cea9c8fd9e390", "T1_zcash-test_sign_tx.py::test_spend_v5_input": "6d29a8023d4b8b9fa4d170afbbaeb7cf1895906ab74f75c9fcb12a601154b9d5", "T1_zcash-test_sign_tx.py::test_version_group_id_missing": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"TT_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-0-bnb1hgm0p7khfk85zpz-68e2cb5a": "e2e9e5b8698f4be3557725046942b37bf012ec409a1e98434946eec58db4b2bf", -"TT_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-1-bnb1egswqkszzfc2uq7-1adfb691": "c854684b9ebd3a284952d2d87bb8fb35d798a21dc243489e29c39894d3a7d956", -"TT_binance-test_get_public_key.py::test_binance_get_public_key": "4616d6e80011c92fb50c0126cc6da4d979cdafa945447cfc7860e216c883d609", -"TT_binance-test_sign_tx.py::test_binance_sign_message[message0-expected_response0]": "8ca1c246358e7220f765f13581e7936d9437684fa9af5ea06b1154fe2d08d2c6", -"TT_binance-test_sign_tx.py::test_binance_sign_message[message1-expected_response1]": "5ebccd0784190a392c40ff5b96e58ca46aa588e66af02f9a4dfd0584dd467494", -"TT_binance-test_sign_tx.py::test_binance_sign_message[message2-expected_response2]": "7748d33a502dcf121e2f9016fa2d3a08be9adddf291b140f5c24689efb88bc28", -"TT_bitcoin-test_authorize_coinjoin.py::test_cancel_authorization": "1028683f41271a604331fc31a539817c327e7b1d9e218502c43a1a737697f5b8", -"TT_bitcoin-test_authorize_coinjoin.py::test_get_address": "f8109795f7fa910f1c1c87a57e9ac4514da546285bdc378441a2778d2bfb3c02", -"TT_bitcoin-test_authorize_coinjoin.py::test_get_public_key": "6096153081f06b4c24654068b5035298902ad5b42f687b2871518c561c93aebc", -"TT_bitcoin-test_authorize_coinjoin.py::test_multisession_authorization": "f61fd1bb79b4a6062387bf49ef913fcd2d10d7f0fd0ddc359a0e94033761be07", -"TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx": "69bdf4b30712bb14d91dc60d91cf2194347998d6cc6b652129d51bd332d34a71", -"TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx_large": "67b705e375c08695225511a47f9f1c1360d9ab1e0ba9442329e4b2c996e9e151", -"TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx_spend": "732fc13e6b96d5694df01a34906725ad97a70ffc5086ab34d3e0c94d8ee0ba0d", -"TT_bitcoin-test_authorize_coinjoin.py::test_wrong_account_type": "1028683f41271a604331fc31a539817c327e7b1d9e218502c43a1a737697f5b8", -"TT_bitcoin-test_authorize_coinjoin.py::test_wrong_coordinator": "1028683f41271a604331fc31a539817c327e7b1d9e218502c43a1a737697f5b8", -"TT_bitcoin-test_bcash.py::test_attack_change_input": "7980a2463ab728029c315ce294eae9493aa35827a456531ace6200473906c09e", -"TT_bitcoin-test_bcash.py::test_send_bch_change": "7980a2463ab728029c315ce294eae9493aa35827a456531ace6200473906c09e", -"TT_bitcoin-test_bcash.py::test_send_bch_external_presigned": "9209205f11fc9c1be29ebd08643292ac741d1feb8bb35235802c7dd1203f5b14", -"TT_bitcoin-test_bcash.py::test_send_bch_multisig_change": "20c9f75ea1b4a45905efd579f5100b38fc63a9f043ab19c5fd5e00cb46fc855f", -"TT_bitcoin-test_bcash.py::test_send_bch_multisig_wrongchange": "82c3ac6971ac86b6989bca3529b03457f8a3617c6b1dfc24f2fefac2e45a0f2e", -"TT_bitcoin-test_bcash.py::test_send_bch_nochange": "1dac1c9a0166a2968acaec3dd445e8722962b17a95f45ce79abc73027a60f3bc", -"TT_bitcoin-test_bcash.py::test_send_bch_oldaddr": "4b30716dd3df71fb00b99f8609f63284f326a417a19d928683f3bd793db89eb6", -"TT_bitcoin-test_bgold.py::test_attack_change_input": "95feb022feb0f43b9c643c2a57b148f7eb9245917892623c9331345843118b21", -"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_change": "95feb022feb0f43b9c643c2a57b148f7eb9245917892623c9331345843118b21", -"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_nochange": "e249a80269a904d3e9cac52567af2272f6b80e328aa1f4d83cdfc417a865c3ab", -"TT_bitcoin-test_bgold.py::test_send_btg_external_presigned": "81a17e2eaa947563c474b52db26bca930103899026fa0bcfbf954f14996d9b61", -"TT_bitcoin-test_bgold.py::test_send_btg_multisig_change": "4a608a00a476e11eec9dd1eb95cfd05ba60d64cc2ba03ce35ad48f1558bf3532", -"TT_bitcoin-test_bgold.py::test_send_mixed_inputs": "a915db2e708349c5ef0eed36af655abf33dd9476a191f4422f5b2aaf4b32846c", -"TT_bitcoin-test_bgold.py::test_send_multisig_1": "ef7550d39f3bbaf270e1f4e898eaee7e28e7e4b635585ee1b930a2066f759ef9", -"TT_bitcoin-test_bgold.py::test_send_p2sh": "bd6e55daf9f7c8e93943d4644aaab53d0f15ceb3ff507cc694a46cc9ecb7bf62", -"TT_bitcoin-test_bgold.py::test_send_p2sh_witness_change": "74b903cc1de861dace23a18c0a84cc6e11483ed0b87822704d9af81308c342c2", -"TT_bitcoin-test_dash.py::test_send_dash": "ec545f79425f4c3f91fb980925955d2b913dabb68399508e16a759886b901fac", -"TT_bitcoin-test_dash.py::test_send_dash_dip2_input": "b97b0255ed0c283d7f515b4beac212c65cf38f096113cf649ed16e5ba2c25fb5", -"TT_bitcoin-test_decred.py::test_decred_multisig_change": "cf29818d9f791e5e78a603f0fe92f380b8eea98e729c653ed1a8997034b9732b", -"TT_bitcoin-test_decred.py::test_purchase_ticket_decred": "d975d7554d155bf2c7f0f7cce98df7bc389901bb8fbb37ce7f50e94846d94c14", -"TT_bitcoin-test_decred.py::test_send_decred": "87e19a9ea2319bf4528c4dd0c6d20c2f3376271513a6f1bb2cc6dbfc7ef348aa", -"TT_bitcoin-test_decred.py::test_send_decred_change": "a67dcb8252f99a8cab654282260ab65330dc5a5d051110d44bd69ba9d5f2738f", -"TT_bitcoin-test_decred.py::test_spend_from_stake_generation_and_revocation_decred": "9e815554c9dd5b60519f0215b65b914b34a979631366d8bf056ef556e0c99149", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDADDRESS-pkh([5-7a80e3db": "ad04cac909e9625ff43c87a71879620f024cd389e0454654d5f56a267369bca4", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDP2SHWITNESS-sh-03d56ac2": "e2e1c5825a8931c4b9cf2ae592c7e4bedb194914ee2e4433a6d19c8f82e06acf", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDTAPROOT-tr([5c-22751b2f": "061e1fd9cb4b861a3e51a593208c9587b073cc977e31dd2705dbee388bdcf9de", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDWITNESS-wpkh([-edfbc435": "d3394d0e46d9aba2811a8a8fea275dcbe0254754e8b7d2cb8edc825998363b4c", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDADDRESS-pkh([5-5ab06094": "8a6d12781781ebefbc031abd63eba8918b2f7ab183a01c07a132103f605e4807", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDP2SHWITNESS-sh-5dd6ae4b": "2b0c8f58bb7c62525d3bfaea1e78f13c98b4ad57a8be7b00880d95f4d8c5c3a7", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDTAPROOT-tr([5c-f4f20781": "88f6839d3c490ed4408e1cb4e71ec5f99afe50d0343b552d623c725ed7059c53", -"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDWITNESS-wpkh([-98a75f0a": "c676fe04617702f372026a4fabe0fa9fd50021c0c9ec184977e2fb201f1bb9e2", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDADDRESS-pkh([5-f63bf93f": "e54e2640b99959014baa589cd8e1726edffc2ad22de29b1abadbdc75db56c8cc", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDP2SHWITNESS-sh-fd42e1d9": "e2c56eaa4c79889c7d71b5510737654b047559ea56a67a101602b39cfc5928d3", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDTAPROOT-tr([5c-a794e72a": "13fa07dbb64d13b37570ede94a641670709f497eaca3e2bd9a35ed13585fb6a7", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDWITNESS-wpkh([-e70d0168": "027347d96980aa4b681054361c6aedf8903802e71f7383733b9e7352b1c3513f", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDADDRESS-pkh([5-2d5b32fe": "2552f937ff128ef67510be8e8234ed7bd883f88995a0cc55bc7874401cedf040", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDP2SHWITNESS-sh-e8c5303c": "96b14ce63d45712604c22c5f668b33903486bc0d50a6bc09e45871a2c742b42d", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDTAPROOT-tr([5c-ddc924d3": "7200647c4e7cc4166f162c46f0a05f7c509b0ec34748320804f5d1880067c670", -"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDWITNESS-wpkh([-996ae319": "b39da1de17911b1c83ec0a3b313a9d3548b7322e2164a5bef9958dfc387755e2", -"TT_bitcoin-test_firo.py::test_spend_lelantus": "4c3691304e0adeb5661d4b6aa5148e33cbc495f76a5b1c4ab8c8ae7d48460579", -"TT_bitcoin-test_fujicoin.py::test_send_p2tr": "099dc2fc987f9dd9f2c428545636eff4276c97a127051d7a552cdea6557fe213", -"TT_bitcoin-test_getaddress.py::test_address_mac": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_altcoin_address_mac": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_bch": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_bch_multisig": "b0b14a464274baae593a7bdaad52c972d66818623edd40545f8af5229286d687", -"TT_bitcoin-test_getaddress.py::test_btc": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_crw": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_elements": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_grs": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_invalid_path": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_ltc": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_multisig": "775da58ea1dd7fbc69d646829bba219b6941ca456954f2dbc53ae501418ba008", -"TT_bitcoin-test_getaddress.py::test_multisig_missing[False]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_multisig_missing[True]": "4616765b5066ef989e12e8fe14618c2340e203f13691a2e9ad56428342b11e4d", -"TT_bitcoin-test_getaddress.py::test_public_ckd": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_tbtc": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_tgrs": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress.py::test_unknown_path": "56e8cf348e0410f4f88c5bd2925e0a1523d4b34d19997857d0c004825da2d8a5", -"TT_bitcoin-test_getaddress_segwit.py::test_multisig_missing[False]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit.py::test_multisig_missing[True]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit.py::test_show_multisig_3": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit.py::test_show_segwit": "bfff8a228fc61dd516cb781bfc14737f7158dd7ef51d898aa5c0c683763025f2", -"TT_bitcoin-test_getaddress_segwit.py::test_show_segwit_altcoin": "1566142663052f8e9472cb60c213315deeb470d3a500b1a2f0a492387bf61288", -"TT_bitcoin-test_getaddress_segwit_native.py::test_bip86[m-86h-0h-0h-0-0-bc1p5cyxnuxmeuwuvkwfem-dc12f29f": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_bip86[m-86h-0h-0h-0-1-bc1p4qhjn9zdvkux4e44uh-1f521bf2": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_bip86[m-86h-0h-0h-1-0-bc1p3qkhfews2uk44qtvau-d8b57624": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_multisig_missing[False]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_multisig_missing[True]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_multisig_3": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-0-0-InputScr-6bc4ffc3": "d8658c1a6b942fa188ae9c8b892a84d34496b42a045f33e59381d767e23d4553", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-0-0-InputScr-8943c1dc": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-1-0-InputScr-016718c1": "3d2bf6b04b1e1dda1470d9eeba0ca9f0be3da31b4aa78f7ed30d1fe64b23b542", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-1-0-InputScr-7656a4db": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-0-0-InputScr-3d3cc8eb": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-0-0-InputScr-8571d5e0": "d6fc2531a9650b7861e525dfa2143164c0e067d9ec568a485773602cadf65784", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-1-0-InputScr-ab700de2": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-1-0-InputScr-da3803e0": "827f45eac35ef79aa1d829e5050a947c7571a181111086c77a06ae0f653847ef", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Elements-m-84h-1h-0h-0-0-InputSc-490228be": "840cf5e2bf5622dfb99cbf65ec9df735c27ce56b63f397c538186d4c77484ea5", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Elements-m-84h-1h-0h-0-0-InputSc-ed587e90": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--40b95144": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--45b4ff5d": "e24dab05d43f9809bfc5b49fb80e2a042be0bb69a9f062db88ae42ea1522d889", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--8f7c658b": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--93c9c3ff": "47f8390cd2b1d1abc7bc241bd1efa6d96140eba395a1ad8dbdb88ee9fca9b2ba", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-86h-1h-0h--5feb8c64": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-86h-1h-0h--8d4476a1": "7831f223332401208a9cdd43328744c4711e384dc79a9969b5d0f5c6c24652f0", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-0-0-Inp-0200a67b": "9dd78bdaae84045ea6c6ffc2706dca4b8dd4648449ab2277c788a65e8f8c5ed9", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-0-0-Inp-e6c1098a": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-1-0-Inp-9688a507": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-1-0-Inp-f825f217": "1b2e170183613c2e1af97a7c01a4b291c7c4632940631879d5f91150e59847ab", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-86h-17h-0h-0-0-Inp-38cd93cf": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-86h-17h-0h-0-0-Inp-ebecce6e": "6d7dbdb912d007df4c7485cea16ef970f1d93fb83f90cf9104ff37cacf88263a", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-0-0-InputScr-313b9443": "baa0b32a9b54b97b87308c4311f209318e8b1fe00e81067c4f124a4d9db2320f", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-0-0-InputScr-ce15ec92": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-1-0-InputScr-040186c0": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-1-0-InputScr-b10918be": "908ec9db91b33cf15bdc5092dd832611aafd25f19bb64d2e69f3cd16a70a0ee4", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-0-0-InputScr-55ae0ae6": "75f95307b80e927084442b79ad5289e1b97df881d42156594a7ce7eaafc0c5aa", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-0-0-InputScr-821a199d": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-1-0-InputScr-9d2fa8bc": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-1-0-InputScr-d5b7f8fc": "65c77f722a6254749ad745926679a940888e1a827ab450dc201f8b7dd959c2f5", -"TT_bitcoin-test_getaddress_show.py::test_show[m-44h-0h-12h-0-0-InputScriptType.SPENDADDRESS-1F-1e4f2f74": "f26353256ca30eb2999e808550af8c227fd22c287ef4dad40ff2d2dcad399d44", -"TT_bitcoin-test_getaddress_show.py::test_show[m-49h-0h-12h-0-0-InputScriptType.SPENDP2SHWITNES-a986211d": "7b8015c2e9f0111f57a63fc06c0dfc9352335a0c6889adffca310da10a72d42d", -"TT_bitcoin-test_getaddress_show.py::test_show[m-84h-0h-12h-0-0-InputScriptType.SPENDWITNESS-bc-a5f08dfb": "aa478b62783b5f6fbdfdee2989ae627d17dcb38162e36e35c824be0d40a3bba7", -"TT_bitcoin-test_getaddress_show.py::test_show[m-86h-0h-12h-0-0-InputScriptType.SPENDTAPROOT-bc-f94d8b44": "933f478127a23d0d486258efad53b2243b03c0bdf27a2e851e6ca10cebc8db20", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_15": "18a5fbf653c39d95a186df071cc13fe77fcd0ad5470502fa1ddfba6fd093e7f3", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_3": "a0d1e2f4008da3a1a059d149c4a53a087a782a2044921785277c52f7a951c98c", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDMULTISIG-0-3-4efd9cf3": "8f98018dd187d0c7c1c40a39c028f27d11708e863b75ad154575ca52a64dc9e6", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDMULTISIG-0-3-98a7e339": "8f98018dd187d0c7c1c40a39c028f27d11708e863b75ad154575ca52a64dc9e6", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDP2SHWITNESS--2cf5f03c": "fd4e5839208ca1e0c1c7e86fbb244a149917b2092fbc78a30ab4954a9fe4dd17", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDP2SHWITNESS--5ea18367": "6d5c070d8eb9c407085d7060cffae1fdacd19ed6c8fd6d32f2e0cec549aac64a", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDWITNESS-2-bc-e70b56ea": "abc1f7a3211e875a7d77cd8fc2993b8babee92b52445d111b87dac1abe71e069", -"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDWITNESS-2-bc-f3c4650f": "01303f6e4d0bdfd643a4b00dbf5b5aa7737cee98821d29a827914e3966ec8fd0", -"TT_bitcoin-test_getaddress_show.py::test_show_unrecognized_path": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getownershipproof.py::test_attack_ownership_id": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getownershipproof.py::test_confirm_ownership_proof": "0f64de87278eb016e573ece582e7dea2e1af187436f7f6bfd36a3993b0f37553", -"TT_bitcoin-test_getownershipproof.py::test_confirm_ownership_proof_with_data": "6848c05ef24f0101b0dcda0c376fc4d00c122c1c5523a75e4ba6a6fc41b7dc18", -"TT_bitcoin-test_getownershipproof.py::test_fake_ownership_id": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getownershipproof.py::test_p2tr_ownership_id": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getownershipproof.py::test_p2tr_ownership_proof": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getownershipproof.py::test_p2wpkh_ownership_id": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getownershipproof.py::test_p2wpkh_ownership_proof": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path0-xpub6BiVtCpG9fQPx-40a56ca3": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path1-xpub6BiVtCpG9fQQR-1abafc98": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path2-xpub6FVDRC1jiWNTu-47a67414": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path3-xpub6GhTNegKCjTqj-990e0830": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path6-xpub68Zyu13qjcQvJ-8285bd20": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path10-Ltub2dcb6Nghj3k-53e5db37": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path7-Ltub2Y8PyEMWQVgi-d0bb059c": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path8-Ltub2Y8PyEMWQVgi-98ae2c41": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path9-Ltub2dTvwC4v7GNe-8d6d95fb": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Testnet-70617039-path4-tpubDDKn3FtHc74Ca-f3b70aff": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_get_public_node[Testnet-70617039-path5-tpubDGwNSs8z8jZU2-8b5efa13": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bcash-path5]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bitcoin-path0]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bitcoin-path2]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bitcoin-path3]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_invalid_path[Litecoin-path4]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_invalid_path[Testnet-path1]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_script_type[InputScriptType.SPENDADDRESS-xpub6BiVtCp7ozs-9813cc48": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_script_type[InputScriptType.SPENDP2SHWITNESS-ypub6WYmBsV-0710fbb3": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_script_type[InputScriptType.SPENDWITNESS-zpub6qP2VY9x7Mx-84eaa56c": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_script_type[None-xpub6BiVtCp7ozsRo7kaoYNrCNAVJwPYTQHjoXF-c37a47fd": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey.py::test_slip25_path": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_coin_and_curve": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_ed25519_public": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[ed25519-path4-002e28dc0346d6d30d4e-e6c7a440": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[nist256p1-path2-0324c6860c25cdf7a8-d75f4900": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[nist256p1-path3-03b93f7e6c777143ad-2d6b178b": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path0-02f65ce170451f66f4-9c982c22": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path1-0212f4629f4f224db0-0209bb73": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_grs.py::test_legacy": "b5b9f8a667574dff58979232d09ffb8b5415ac0ea8f409cc82e2d66a71c30214", -"TT_bitcoin-test_grs.py::test_legacy_change": "6e7bcb6b0630276f68797635ce15de9b7ad1f957161afadec3ffc0c119dfc340", -"TT_bitcoin-test_grs.py::test_send_p2tr": "ed72128980e6080540fafb26bfd7fa609197cc36f77787c29af373644ad07c66", -"TT_bitcoin-test_grs.py::test_send_segwit_native": "30eaf07ccd18048407ede917ac8bc8d38fe83fb71d2d2eaa6525f94d14443435", -"TT_bitcoin-test_grs.py::test_send_segwit_native_change": "1ec3b056eae982447761352b8ab1eb244e383f7a699ea5ebef44798f28dd11de", -"TT_bitcoin-test_grs.py::test_send_segwit_p2sh": "cf553e4581a0a1c390a2692bc7ed4c51d1172f224c59d9ecf9147698255f078d", -"TT_bitcoin-test_grs.py::test_send_segwit_p2sh_change": "5dddcc80eb7ae83b49bd3ae2d750d4189c10fb51ef7f6ca95370068bb20f57dd", -"TT_bitcoin-test_komodo.py::test_one_one_fee_sapling": "014f0f75f6a4df52b688969493a9ebce9b35f7738a172140c0aca3423f3614cf", -"TT_bitcoin-test_komodo.py::test_one_one_rewards_claim": "f7ba41c95cfcefde3c1fb3bb9eb78c7213e83f26a971ca8e07e953bfa8ee0936", -"TT_bitcoin-test_multisig.py::test_15_of_15": "2cd7b7cd2ea35c71f92aad63f73f0d329619959ce48011d4695541bd279a2ca0", -"TT_bitcoin-test_multisig.py::test_2_of_3": "28e166aab3f9430beb03160e0290377d8af354038270a88429a9c55bc901b38b", -"TT_bitcoin-test_multisig.py::test_attack_change_input": "084fd5b1b5552f09fa1f40e879f965865a7cc9e15096e6f01ace9d63022bde94", -"TT_bitcoin-test_multisig.py::test_missing_pubkey": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_multisig_change.py::test_external_external": "216e3afcea97ed796940561b9f72a54ccf48e1ccd92e1bf2db17769d18b11ae3", -"TT_bitcoin-test_multisig_change.py::test_external_internal": "ee81a8e82ca452122164be408aabaedaa9019a3ad6b7c81316f47964d2d6463b", -"TT_bitcoin-test_multisig_change.py::test_internal_external": "8e4902b244e4546df8232b4b35d9773b77c67c58528dc8bee82555c9a65fde58", -"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_first": "284079188f8c2f9b999a917f134482c43ed7c9cf5e1b7e65b76c89d27f36fb23", -"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_second": "f8457090055432ab79c6742aa5cd50c6f5829e6731b9e22c315326b320cf5402", -"TT_bitcoin-test_multisig_change.py::test_multisig_external_external": "876728881b9ef98ed49902a866a2831fd2cddce446a854af49b3f0cbadafdff7", -"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_change": "c60bb83069d074acb350c4673f022264396cfad964f75062ef68e75383fc1065", -"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_inputs": "d8d896ed42c166c15a6d9b4cbf21a9d587d80e0ccb9b01188d00d29c0a8c1b23", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-6-255-script_types3]": "c1e2a55bc70cc9464c3a3790b747421a7e3cfe7d55dd1e9ab7cdcd66ab158b3a", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-script_types2]": "12a9859706807d8720a1e94b16786f135ab7e3a7c138d62990170d2e0a160156", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-3h-100h-4-255-script_types1]": "ca667675c8396d5a36307e1f4d680b26b0f2da550011bce409efb993dd292904", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-4-255-script_types0]": "d838e38405586bba70457f1f84057a267f62c31dc5cc110de6b55be787fd005b", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-49-0-63-0-255-script_types4]": "d824669ddee9c2eb24a6a3525ac60b15bf78c316dfa29d5992c6727da823b381", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths0-address_index0]": "10d950f9d3002159e4bc3e076981bc882b6374b5d9475ff736a84523d4f5ab32", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths1-address_index1]": "c106ac4326a7bfe19f0df9bc49dee1130ec63787a556404c97406d719dc5ee05", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths2-address_index2]": "a61561585dcae1f4dc6535f8400b327145cc4a69b97a08bbf908d726ccc4520f", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths3-address_index3]": "ea5138b574b59b66b45dcde9bdd61a87cae73c9ee4c811f4089ed2661eaed3a5", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths4-address_index4]": "9c63afbe4dd7dad17b7ff320922b593f08196e9ca0d931849bdb877568f3f23b", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths5-address_index5]": "28fbd1cf9ceeb35b5988d280032193f9ca78effc5174c19e3270925dbf3c000f", -"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths6-address_index6]": "697ed69dbf2a72f61f5952bcd54f766cc928e929e3bd204ec8ed967d976b3131", -"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-1195487518-6-255-script_types3]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-1195487518-script_types2]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-3h-100h-4-255-script_types1]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-4-255-script_types0]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-49-0-63-0-255-script_types4]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-1195487518-6-255-script_types3]": "44e660e6ef343f3eb196c400f6f33d9d38954660bfe12bd487e35e5051319199", -"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-1195487518-script_types2]": "de0c2a661d00c000702cf7f9f1a663856eae9602f231812bb9d49080064414ae", -"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-3h-100h-4-255-script_types1]": "de021393501e9d29934348006c179917c38a5d0dad6d4c2a1cb03956e7029787", -"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-4-255-script_types0]": "bd78a5e34417a0221452294291e719338082d970039ae4b5b3248ba4d42d46e6", -"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-49-0-63-0-255-script_types4]": "597c555edf3c5b28325340a58673530dbc05d9c17fa86ecacf6266dab963cb9f", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-6-255-script_types3]": "7cf365e113b76dceada661f350bf5e1d952bd72d261d2699aae0f8c25141b118", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-script_types2]": "37b38e77a66917bfb3be306133b78d7c2b14ce02b1d146f65b896afdce4cba55", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-3h-100h-4-255-script_types1]": "a1df1e45f0e5b92bc29882b06f8aee72b6492e446f4a248f7bf5513dc781eff3", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-4-255-script_types0]": "a1df1e45f0e5b92bc29882b06f8aee72b6492e446f4a248f7bf5513dc781eff3", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-49-0-63-0-255-script_types4]": "3f1c254ae1f2405c290711133ed0b8e0b7f27ed1221adb7730d2f9244b876bc3", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths0-address_index0]": "9632d4e4b601583d48868a3d39de5da6073ed4f0ab6a2114c62207a8d96014b5", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths1-address_index1]": "9632d4e4b601583d48868a3d39de5da6073ed4f0ab6a2114c62207a8d96014b5", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths2-address_index2]": "1a22db5993cca25750a9e2aad6095065a9de814b80cd5ac5cab432e760f63074", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths3-address_index3]": "6298a7b5c03418f357120d41fa2c205f18b590306cc22881bc9cb51258bf8a44", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths4-address_index4]": "9632d4e4b601583d48868a3d39de5da6073ed4f0ab6a2114c62207a8d96014b5", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths5-address_index5]": "9632d4e4b601583d48868a3d39de5da6073ed4f0ab6a2114c62207a8d96014b5", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths6-address_index6]": "9632d4e4b601583d48868a3d39de5da6073ed4f0ab6a2114c62207a8d96014b5", -"TT_bitcoin-test_op_return.py::test_nonzero_opreturn": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_op_return.py::test_opreturn": "6cbed37de7b75fd13d2f03db834eaa202870377ef55543e58cf81812d079e008", -"TT_bitcoin-test_op_return.py::test_opreturn_address": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_peercoin.py::test_timestamp_included": "e6f891822c02ed8c5b1b7fb125c59e77dc78ace85af60c4c2356b7b3214e9ad5", -"TT_bitcoin-test_peercoin.py::test_timestamp_missing": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_peercoin.py::test_timestamp_missing_prevtx": "f0500537d3790dc30a17e2e1b29f47e19b0d47f5d03286fc9c81a3c985231061", -"TT_bitcoin-test_signmessage.py::test_signmessage[NFC message]": "9bdeda55973832ef9133428fbe32043fafd03e803bb885f86e74fb9547ad3860", -"TT_bitcoin-test_signmessage.py::test_signmessage[NFKD message]": "9bdeda55973832ef9133428fbe32043fafd03e803bb885f86e74fb9547ad3860", -"TT_bitcoin-test_signmessage.py::test_signmessage[bcash]": "7c3afa23553401b65cc71e8c2499c1701fe46a58011d9193cbcb68c5b6ddec58", -"TT_bitcoin-test_signmessage.py::test_signmessage[decred-empty]": "d079b4b5f10b82cd0abc36ee5c60e56697b2dd6a6b752b246ec6f14563a39111", -"TT_bitcoin-test_signmessage.py::test_signmessage[decred]": "afa13029405626a07dae77142ee83d91426e8df48ff4c460155d07d9b6357858", -"TT_bitcoin-test_signmessage.py::test_signmessage[grs-p2pkh]": "fb20dfd145a31a24f2b2d6329423598a8fa4d8e3b6cec4ef5fdcc22b743621e4", -"TT_bitcoin-test_signmessage.py::test_signmessage[grs-segwit-native]": "7c124bc273f1011fdf1e14b1285f904b049933cf6e1d4a0735812faaac4a54a5", -"TT_bitcoin-test_signmessage.py::test_signmessage[grs-segwit-p2sh]": "8bc37e8b472de9a0309617f4cbfaf0ad5228739f273061b1b162ce1f59fd2add", -"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh long message]": "2b1c1790c1cb51c4d055995cab2509c792eb0bf758e1f4ec4bfadf8696243013", -"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh0]": "c0311fdae8f0fa934f2367e5640cfcde92badd6019ffff966865207fca9ae7fe", -"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh1]": "c0311fdae8f0fa934f2367e5640cfcde92badd6019ffff966865207fca9ae7fe", -"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh2]": "2a7c124ceab47b1ca1120347d94049a755680b11afacb2e84b297832dc2f3b46", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native long message]": "41191056541a11bd55d1325099e9f7187464718c704f148cae36fa405dc6483d", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native0]": "2f382f843f1506f21a3fa79126548cd55180eda7ca55606da9e819a56f6d5653", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native1]": "2f382f843f1506f21a3fa79126548cd55180eda7ca55606da9e819a56f6d5653", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native2]": "ef8e2a506ddcfab4aa5fbeb79c0b7630e29ac61f9688bd50f5d33f659b0d2414", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh long message]": "6a54ec566d99cfaa2bd619c3a6293bd035e7bc008f0708ca451129fae37caac7", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh0]": "ee002ce0851daf9d71a43bbea055b33779ad38403c716417c1b3ca1a13ac5e18", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh1]": "ee002ce0851daf9d71a43bbea055b33779ad38403c716417c1b3ca1a13ac5e18", -"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh2]": "5c7758b049bb4a2870a5f0486e0a7bbf07e590ef7a18214076025ceb1da648c0", -"TT_bitcoin-test_signmessage.py::test_signmessage[t1 firmware path]": "a3fc21f9ea0d80d0b9b098f9db9a9c4b3169827e8291b28f2eae734598395c9c", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[long_words]": "ffdada0b56c548001cd31f3c7dcdc0d1f095b648cb085fdc6341b9f9843ad4d1", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[newlines]": "791ff7121d6f0e92754706ffc51319f6980ff615acde6ede7f12aa891771475a", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[no_spaces]": "6b1c656ec45a7725247c5c875373af0eb889a50f21979e95f6d8b7dbebad72e9", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[normal_text]": "a5414f0e2387d8040c6943cb25b985b6b224770ec61fd74cf150200183245b83", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[single_line_over]": "593bddd6f02a589f412a76e3299b2a5ac795e7282a1149b2a09bf7163793fda6", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[utf_nospace]": "c6d93171f0dd8f95c71694ad0daf7d50e3837f62f2feb9e14ee64309540837d4", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[utf_text]": "a9d278ebc3a4f32dc68b052d1c71577d96bdd2ea493048c9a410d3001526197d", -"TT_bitcoin-test_signmessage.py::test_signmessage_pagination_trailing_newline": "8a787ffa2a016d3ea236fb2bd7b1b79ecb0e0605181b166278278ecb72bd5a00", -"TT_bitcoin-test_signmessage.py::test_signmessage_path_warning": "2d9c06553c2def12610122e054417e67b705920a84af450d4b9d52d87c4c4b4a", -"TT_bitcoin-test_signtx.py::test_attack_change_input_address": "80801b169549aca809b50afbf0befee27aa4bb886987ec27307f73d5eee62aa8", -"TT_bitcoin-test_signtx.py::test_attack_change_outputs": "93257afd10e2ef69125b8554c0a614776eab49f152f9ac58f79880c78cd6cfee", -"TT_bitcoin-test_signtx.py::test_attack_modify_change_address": "404a5ad37fb5c6707ccf5df6001da27c40a6f8de3a80b6d246581695210a50e6", -"TT_bitcoin-test_signtx.py::test_change_on_main_chain_allowed": "404a5ad37fb5c6707ccf5df6001da27c40a6f8de3a80b6d246581695210a50e6", -"TT_bitcoin-test_signtx.py::test_fee_high_hardfail": "7b44f6d50c881a61e4e502f4d33985045b844728c0208a2b405ea5e614a7e541", -"TT_bitcoin-test_signtx.py::test_fee_high_warning": "f0a89b3f01df4f4f335cfbcb0e68323404795402f20f4c4ebfc47e694f2fd924", -"TT_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.EXTERNAL]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.SPENDADDRESS]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOADDRESS]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOSCRIPTHASH]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx.py::test_lock_time[1-4294967295]": "54ed9595910b91adc8d803eb2feee2dff069981c57387cee9d0374f3a11d1a97", -"TT_bitcoin-test_signtx.py::test_lock_time[499999999-4294967294]": "0d5c5795d158929c75d96a5ed31d422fcd28cc918cdcadc9b55b67090cc537c6", -"TT_bitcoin-test_signtx.py::test_lock_time[500000000-4294967294]": "bb2a73bc25bf3a68567c39369b8c86837abf4a7ee8f39e68e0b24f3955394925", -"TT_bitcoin-test_signtx.py::test_lock_time_blockheight": "0d5c5795d158929c75d96a5ed31d422fcd28cc918cdcadc9b55b67090cc537c6", -"TT_bitcoin-test_signtx.py::test_lock_time_datetime[1985-11-05 00:53:20]": "bb2a73bc25bf3a68567c39369b8c86837abf4a7ee8f39e68e0b24f3955394925", -"TT_bitcoin-test_signtx.py::test_lock_time_datetime[2048-08-16 22:14:00]": "e1076dba8c18d412951eaf3e1a2427eb5e245b1777481b370b8d32ab753e9e3d", -"TT_bitcoin-test_signtx.py::test_lots_of_change": "34eea516eaa3627db9a7dd3b455036871d2f6e05c5ebeb2c824a367c2e94c920", -"TT_bitcoin-test_signtx.py::test_lots_of_inputs": "5febcace7b557ec98f4daa5fcef321b6f42081e94449b86e3fb07407ffce2a21", -"TT_bitcoin-test_signtx.py::test_lots_of_outputs": "79c1191e24e39a7e1d9737e2ab5ae72dd88ac3e86e60542f65415e6a768c1f1f", -"TT_bitcoin-test_signtx.py::test_not_enough_funds": "35b4880b24546a94ad4426dbd3efb1a252053f5ac846d5f98bb01532a5d5e75f", -"TT_bitcoin-test_signtx.py::test_not_enough_vouts": "abec897bebd2d12549a827c3bb8866493c5518cd522ff1f895d1a7d93da6396d", -"TT_bitcoin-test_signtx.py::test_one_one_fee": "f92cc77c80caef6f912c31f9c9964355c0e01e71f8edc37a718ee2ecd41eb67b", -"TT_bitcoin-test_signtx.py::test_one_three_fee": "6a4cf784919ea698c35090514518c6c5c8591d140d71404090f51a1facab3963", -"TT_bitcoin-test_signtx.py::test_one_two_fee": "1305403d2a90a688dae15d625e7bf07556bc1932165053eee2d8bc1db029ffec", -"TT_bitcoin-test_signtx.py::test_p2sh": "848ee393439ac3029726ff2090845432da933bdbbbe6987d5cbdc54fb2bfe79b", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[branch_id-13]": "3cb052304829ff476f5ac18631b61937bfea325945097e6de074ddc03fc60a4f", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[expiry-9]": "3cb052304829ff476f5ac18631b61937bfea325945097e6de074ddc03fc60a4f", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[extra_data-hello world]": "3cb052304829ff476f5ac18631b61937bfea325945097e6de074ddc03fc60a4f", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[timestamp-42]": "3cb052304829ff476f5ac18631b61937bfea325945097e6de074ddc03fc60a4f", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[version_group_id-69]": "3cb052304829ff476f5ac18631b61937bfea325945097e6de074ddc03fc60a4f", -"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[branch_id-13]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[expiry-9]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[timestamp-42]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[version_group_id-69]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_signtx.py::test_spend_coinbase": "4095d3eaa147b2b747029afe1202ea663662f49a40f7b45cacec8c6a2d15c58a", -"TT_bitcoin-test_signtx.py::test_testnet_big_amount": "1452fba00e755f9cea2d944d98cf10f4d7221edb8fa1fc3e8ddc35d6e0b0af9f", -"TT_bitcoin-test_signtx.py::test_testnet_fee_high_warning": "c3cc8d24e6e8cb4369c748e676a4e9ae347db40898cceeae3edb28b995565dd1", -"TT_bitcoin-test_signtx.py::test_testnet_one_two_fee": "404a5ad37fb5c6707ccf5df6001da27c40a6f8de3a80b6d246581695210a50e6", -"TT_bitcoin-test_signtx.py::test_two_changes": "1105e5514ecb91f3959b5b6756565e0d10bd2de79385ea1432596bb8405eb25f", -"TT_bitcoin-test_signtx.py::test_two_two": "4eb0e37a95d70372acc30ab1a5942c87a09a99eab2023e436ae2328a2fc2a8d1", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.BITCOIN]": "f92cc77c80caef6f912c31f9c9964355c0e01e71f8edc37a718ee2ecd41eb67b", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.MICROBITCOIN]": "602820fac9f739915f5869da9dbf068faec0020ab7938c832053093f522104dd", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.MILLIBITCOIN]": "fa9d38ea032fbfb31576401d8aa31836fa72c80e8b7c7518cdbf2c9087ab575d", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.SATOSHI]": "351be8202fae247ab858a73b99325ece08c71e4d218c25341ecf87058ae5ee42", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[None]": "f92cc77c80caef6f912c31f9c9964355c0e01e71f8edc37a718ee2ecd41eb67b", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.BITCOIN]": "4f613685e6395dfa48251433bf1e06aa8a9136795b61b251124af8370e9f463f", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.MICROBITCOIN]": "7e4a5b526630d3be7696811731c8bc89c3033655c5eb34adfce02a0956bd2e25", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.MILLIBITCOIN]": "87fb743201e9eaa32afe19881924f39b605e0ac6b22cbcbb1ab5f64d85c1d991", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.SATOSHI]": "ce19c2b2b5f916fd6ed3f3afda4fc19495759ccc87565139109e2fd68ddf5777", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[None]": "4f613685e6395dfa48251433bf1e06aa8a9136795b61b251124af8370e9f463f", -"TT_bitcoin-test_signtx_external.py::test_p2pkh_presigned": "f3948129851e422c81324a6b561f65521569a8d5472c7f0a8b71f89a3f95b637", -"TT_bitcoin-test_signtx_external.py::test_p2pkh_with_proof": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_signtx_external.py::test_p2tr_external_presigned": "efa21c3aff20a8df5ab7b10e9c72f8ff0420cb182474ed1ce718c7453300b649", -"TT_bitcoin-test_signtx_external.py::test_p2tr_external_unverified": "f58f0d698280d68cbcb43c58da7b12716b93870ba6541a9a85c28d7c2d7ea128", -"TT_bitcoin-test_signtx_external.py::test_p2tr_with_proof": "7591f182c6d7c328f7102c259217a5efa86f7620d6508364c452936a8a2a1085", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_external_unverified": "282d7fc64a231849a88f9e3263e0314c89b6fa0cac56fd9d8b39286cdc633a44", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_in_p2sh_presigned": "e5503316994d84d315e38ab6f0e59539e1f718fa798d99ed059d985f8acea5cd", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_in_p2sh_with_proof": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_presigned": "0eef0ba4609714f1f0652cd7c255f916b590d05ea4e2bc1d7e3956aad2eb3805", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_with_false_proof": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_with_proof": "60995350f280967265cc7ab5e64359b4a8711abe8d0b0d65d85425d8d936f266", -"TT_bitcoin-test_signtx_external.py::test_p2wsh_external_presigned": "036c6d579e13479977f9b962a3288e95c4d84f6ec04ae9c9cfb20948745ee305", -"TT_bitcoin-test_signtx_invalid_path.py::test_attack_path_segwit": "72ae88d5d84dd01f61a894bee7eb326a88cd7b3476222b7a1949ac2d22059f11", -"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail_asap": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_pass_forkid": "fad46308049ae114b11bd4b1c6087826a1694b426b1e43738a244d284d046acf", -"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_prompt": "a335802d73981392e43798f6eee1b3ded171b2e76218155cb6576598b46ee410", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_inputs": "b49d8233e83cc2ff467d7c14552512656077e2124c01b84d5529d607b1c8590c", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_non_segwit_inputs": "0dd5468870d51b9deaa8ad8465b80346fc4ccdb547b18f15f5ba264863f81a14", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_inputs": "b49d8233e83cc2ff467d7c14552512656077e2124c01b84d5529d607b1c8590c", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_segwit_inputs": "b4d5b98c0e30346f2762e2838421fb61aa90e66b627850b6e29337b6c70078f8", -"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_amount": "52891ec8e5a13b9040ee77eaa58b12df0ae3ffd39ef8479dcc4ff6f8ba745177", -"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "1b03f15d7f8aab8b1bb44c36e0cbdcded1c3dcf8d8c351ca74ecae6ca612fa3b", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "894b781403f06eb29ec841acbc3ceaacd124a0e59affed4f966355c074c42e20", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "3e44ed37116ff261556b562f408b79155d753ec139079f9ba95dfb2204b00ca9", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "2becf9f33bfee50406cceaad9ac495258371808c9b92643448422e94a1e67999", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0]": "222378380213f7e508280b9c22487fc5df89266ffd47e2f5046f410fbcc3eb19", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out12]": "dc487f19b06e90ab38a98636acc80b9a7e9fdc0a9a3df1f81b8b5a79ddc3b6a4", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out1]": "7b99a9cf625738ec8a641f4b32d87d99b6dd3283375a17c9de958f32533ca1cf", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out2]": "2d77b81c3c6ad74d052927a5118ffbe5bf3d7df093ceeb01b376d2ca59641593", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request_details": "f73ea80b4bf010108982d75f66aab4c629f4bdf1065081c994aaf8b38f227e22", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[hello world]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[x]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[]": "75ac4f60f9562e8560f991b42351394bad1e1ebadd84ff43a15c49789c02268a", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[hello world]": "75ac4f60f9562e8560f991b42351394bad1e1ebadd84ff43a15c49789c02268a", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[x]": "75ac4f60f9562e8560f991b42351394bad1e1ebadd84ff43a15c49789c02268a", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "75ac4f60f9562e8560f991b42351394bad1e1ebadd84ff43a15c49789c02268a", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[]": "f99a1fb14a22ef93dea3e1a363cea84136b17e0f23407aa476e283ccd589857e", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[hello world]": "f99a1fb14a22ef93dea3e1a363cea84136b17e0f23407aa476e283ccd589857e", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[x]": "f99a1fb14a22ef93dea3e1a363cea84136b17e0f23407aa476e283ccd589857e", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "f99a1fb14a22ef93dea3e1a363cea84136b17e0f23407aa476e283ccd589857e", -"TT_bitcoin-test_signtx_replacement.py::test_attack_fake_ext_input_amount": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_replacement.py::test_attack_fake_int_input_amount": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_replacement.py::test_attack_false_internal": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_replacement.py::test_attack_steal_change": "07b72cc4e350d281af7b4e1a31c0e78912352a65a524e5b07d93c9f309a6d1ee", -"TT_bitcoin-test_signtx_replacement.py::test_p2pkh_fee_bump": "3596a0bc5976bff8389754c1e3b4db8087a1bac2f909e87c1d6b8b99232781bf", -"TT_bitcoin-test_signtx_replacement.py::test_p2tr_fee_bump": "891ee99732b67b1c6526e3b1b94c319964d275d2c14819c403f2253aef737554", -"TT_bitcoin-test_signtx_replacement.py::test_p2tr_invalid_signature": "891ee99732b67b1c6526e3b1b94c319964d275d2c14819c403f2253aef737554", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_finalize": "dae2491da9803fb0c4b2164365a6e46398ef6d5680234c79d8dd6e2fca47ee97", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_in_p2sh_fee_bump_from_external": "3f688148644ce6a0b1be08d79608e7f3d828188e5bd153dc26d688407ee99d02", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_in_p2sh_remove_change": "75cc79d2b0f544de9f3142af18be70fc38ebbeb2b53c72974dc8af37c729494a", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_invalid_signature": "dae2491da9803fb0c4b2164365a6e46398ef6d5680234c79d8dd6e2fca47ee97", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_op_return_fee_bump": "57a784a11901f02af600a73d13a3c418548ce468ce2d04e2f69ac2d730a50121", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909659-90000-02483045022100aa1b91-c9b963ae": "101e3901839d5a3ab2dad47e8ebab223e6915f740a46d0158f2d77607c175f35", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909718-90000-024730440220753f5304-ecb983d1": "101e3901839d5a3ab2dad47e8ebab223e6915f740a46d0158f2d77607c175f35", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909800-89859-0248304502210097a42b-7a89e474": "101e3901839d5a3ab2dad47e8ebab223e6915f740a46d0158f2d77607c175f35", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909859-89800-02483045022100af3a87-80428fad": "1c1630d353e5ae0bc445fa78df1d26d025bd1a4e885daaf2a69ea70d1ff7d6e0", -"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909859-89859-02483045022100eb74ab-881c7bef": "101e3901839d5a3ab2dad47e8ebab223e6915f740a46d0158f2d77607c175f35", -"TT_bitcoin-test_signtx_replacement.py::test_tx_meld": "05d413ad098a04a174a2c2c037081d272afcfe6913e195d99b0571f1694941bb", -"TT_bitcoin-test_signtx_segwit.py::test_attack_change_input_address": "5008d4b989303801f453e1c71d27e68c415faf7cf9f29a1b24afad9e4c20879b", -"TT_bitcoin-test_signtx_segwit.py::test_attack_mixed_inputs": "ffb93033bedd1de8a0902dae28aae0d355866b405c340836d98e1a3637e2c301", -"TT_bitcoin-test_signtx_segwit.py::test_send_multisig_1": "fe9b70f92b43c79fd6380afdcd8f480bb4f3a3effd0085adff69570da361f715", -"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh": "209b8ed3be0d348bce8982ecaff99dc329cd140eade6d9680151a41ffab0a4b0", -"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh_change": "dfa52cc2fb954d8af352875ec38632ef9a2bc5977a987a4007d2ad0984f42a5a", -"TT_bitcoin-test_signtx_segwit.py::test_testnet_segwit_big_amount": "92d732c58b0e02954659271d3e415f47d2bc1ea779155bec08bd42a5c66e0bd6", -"TT_bitcoin-test_signtx_segwit_native.py::test_multisig_mismatch_inputs_single": "a4344c9e54ae09c04a91d12cdcd92987e51a038a24e5f629b1548f4b7cc6215a", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_both": "6451fe87e8bea37756665c4cf2602dffbc09f04f308d10207a89b457fee415fb", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_1": "ecf98a768b2e870ee5a301967a826cfde3694b97067ae6895e452f5a02643347", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_2": "cb9eca350da2b5401d8991037e3c8410304819e027c54bf4593d2379cbfc21a5", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_3_change": "18113744a828ac629966c66873e56f5407eca0954c57c9d67d00a3bf09bc20ad", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_4_change": "1718d6392a183a70ff72eab6580fae0106730eda0a54bcbcfd81ec52d7b4dc9b", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_native": "4f613685e6395dfa48251433bf1e06aa8a9136795b61b251124af8370e9f463f", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_native_change": "b2434c41db394a9e5eaee76f9a069c3c180b73afecf26099991481666a65a00c", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh": "b90903c32875744339c975cdebf7dba7ac7bcb520344eeca432cc4f4112378ec", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh_change": "7d6d602fc71d3c719f6ec9179de2e34427aed28e19306763e3fa503e9660c69b", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_to_taproot": "507cc6d913964cba9d456ca9d882b78e4205ce034104c835dbbe8880ce5b1c1b", -"TT_bitcoin-test_signtx_taproot.py::test_attack_script_type": "df25002ef2425c28e7dfd8e73a6ef63fe5fef5224cbb10fd81620d4a1dd1cfeb", -"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1pam775nxmvam4pfpqlm5q06k0y84e3-a257be51": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plllllllllllllllllllllllllllll-aaa668e3": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plycg5qvjtrp3qjf5f7zl382j9x6nr-5447628e": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1zlycg5qvjtrp3qjf5f7zl382j9x6nr-880d4a6b": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_bitcoin-test_signtx_taproot.py::test_send_mixed": "8a4944b88131aa68fbe9e941262986f00f424f2d3fc211c0ce8ef304a02d7f4b", -"TT_bitcoin-test_signtx_taproot.py::test_send_p2tr": "6cad0158adcaaea4b101bf8cfbd8caa0850f45f5fd49a7bbcbfb0be88db6e6a9", -"TT_bitcoin-test_signtx_taproot.py::test_send_two_with_change": "f3ab86c6543c6b7ff439c990c1f911b615ae9dfaa735a0f0ad16e3d3c7abc03b", -"TT_bitcoin-test_verifymessage.py::test_message_grs": "bb651a932064074e087ec89e3ffa6647e39e573ed4e717be109254fb2c00c8cd", -"TT_bitcoin-test_verifymessage.py::test_message_long": "4f4d766b7c620cace16ce624059e38cfc60ac5a82f1d7e92f37420543779e959", -"TT_bitcoin-test_verifymessage.py::test_message_testnet": "ed33548d6ae4241fe1b89624319a2454a2fb755d4f3eca1b4960a2445a103232", -"TT_bitcoin-test_verifymessage.py::test_message_verify": "9a6ed19acea22bf4c8d435c06f6414566222ee9dead7ded9b4870a1184ad1cf6", -"TT_bitcoin-test_verifymessage.py::test_message_verify_bcash": "9d24915046401402bde30e347b770e23aec3c49cd6d358625d8d09bbf33ec527", -"TT_bitcoin-test_verifymessage.py::test_verify_bitcoind": "19f8b40229f0c53e1172610bd50f232130cfc788a4884e98eeddef396d887959", -"TT_bitcoin-test_verifymessage.py::test_verify_utf": "aceb10fa31fcc165d15ce358d307f1c0bd92525d3f2c0f7233c1f369f6308818", -"TT_bitcoin-test_verifymessage_segwit.py::test_message_long": "ac14b335e9e4aa1b557eb48818dab96797b4464a4228f07133b2679b69238736", -"TT_bitcoin-test_verifymessage_segwit.py::test_message_testnet": "15fb716d6860edf168a21090c30e315dd360a3d8643334e833563c4e4b7ee762", -"TT_bitcoin-test_verifymessage_segwit.py::test_message_verify": "478d6d13084723254e4c6797490820323c39a2b6f68a67c29a50bba4fa7afed7", -"TT_bitcoin-test_verifymessage_segwit.py::test_verify_utf": "9cc80b94978aab0f88965897a3dfa846c18dcfc34c9f21031ef0df15d7a9a724", -"TT_bitcoin-test_verifymessage_segwit_native.py::test_message_long": "fd42f8dec9682782a13bd50cb94278b5e641d01b1c478ef636596579cb456e7f", -"TT_bitcoin-test_verifymessage_segwit_native.py::test_message_testnet": "de831f0ca069c6867d7309f7df71357e74ecc6013f9e63c19606828ec38f3be6", -"TT_bitcoin-test_verifymessage_segwit_native.py::test_message_verify": "3a563246a21ca8a39696485cd2254eb6365a0abb82e9d10a714be8b9ef211597", -"TT_bitcoin-test_verifymessage_segwit_native.py::test_verify_utf": "988cd0c1a2cc0dc9f7a6bdccee854f2b4edf564cface30b1888f41419587a6a4", -"TT_bitcoin-test_zcash.py::test_external_presigned": "9543d3b056465cc73546bc52a80a6dfc0f0d7e3eee567177262167d7811f541b", -"TT_bitcoin-test_zcash.py::test_one_one_fee_sapling": "58424aa2d28404d9aa9eaa55f890485849f9e489a771cb8a00ac56d08638dc76", -"TT_bitcoin-test_zcash.py::test_spend_old_versions": "084dc0646755a75f80fb9e0f682b0b56aaf8f3d92157864ce6aff9777622bc14", -"TT_bitcoin-test_zcash.py::test_v3_not_supported": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_bitcoin-test_zcash.py::test_version_group_id_missing": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[icarus-derivation]": "bdc08b11746ed0ab970019e169f171148a6122a1c9658c8d42e0fd8cbfabaa5e", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[icarus-trezor-derivation]": "20a65f98f98ea14039c1e58368af0a58e07894da7678e5319c8c526f0c0a0115", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[ledger-derivation]": "0f44e8ea22a1d7fc957b7a3b2adc08dd3dd7a240721209509fd021c6fe327cb9", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters0-result0]": "5f4ef9cc5d84903c968492a01252610cdfe0c5001c555c27a1a650d07d16dd05", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters1-result1]": "a9cfa5d796400d5696f37e63e5d73149ea91b548602266bdc04b7c2438892b05", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters10-result10]": "26fbf5615a9ebf4f985b386e4755f6c732af95947c5c7db9f527ea82de890c33", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters11-result11]": "845e1d8cb9ef1e2029b8886bfb6452216a2ba85586cfe654a8bbc7c9c23ecd30", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters12-result12]": "c6dff6e1d2a4f4ed1aafd770e0c9dd6b7e8e3ab3df86ee6859307c56424c66eb", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters13-result13]": "2fec1d04df002986c0cbbaffb970fc65876a498204186d915eadd4886fd3ed62", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters14-result14]": "5b1dbc1a85b0054674c2780aa1777a35a34dc61e93bde7a7d84bb5a1361e179c", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters15-result15]": "7fba99efcf452998cf359cb161e18f4f0ea54076bc528371e01ec04c7ff197f2", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters16-result16]": "2f422135e705fd726f8b82506cb5bf087374c51c3912d7998e18b45931bfe7e8", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters17-result17]": "0ead3391cce49ae8323f4d5e072f12ed344435cc0f67231f8b676122eaaa6726", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters18-result18]": "2d66d01927221856e9c0802a4eeb1c40fd94157006b137e4ed7fc7e0d1e20c10", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters19-result19]": "4cd087edf7a673485a6d97a069c86ef067aa2cc2b6900d221901a12b1a418954", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters2-result2]": "5980eefc875faafd613381fbabd5f7db0abac23e9c42076a599480ef6fe1317a", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters20-result20]": "c3df0772f36def05635e6f5609588e0fcedd58acbc4ea9040361d860ac14905c", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters21-result21]": "ea83e6efef02e41377abc687b6363637679f334b7f2c4deca517be57848f6001", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters22-result22]": "6269df3c87080ab8f9f22d233138b7188a6d2b7f1285388031fc47b7f4ee127c", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters23-result23]": "f18cfc61377923f0d70ff6631323573fd9d8bd0e0a3406c0e1af9e49aa25ad7d", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters24-result24]": "5b45dcceb0972c1321efbfe55d843c57bf8bad21066e88a48246c1166182f01f", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters25-result25]": "7e1016befdfed33447d643702289b30ed1ac26dabe692f0670ba5df0b604faa1", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters26-result26]": "2964566a4bf1cfb15505abb30dde5a2390322dcbf6afe4df158b75ff2ee2c3c8", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters27-result27]": "462d2ee21d6d78f82eb34b1724dd0bb16e21d11aae6553c7545198b5cf447047", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters28-result28]": "dda20dcaf4014a5b26acac13c9114cca50836df6ef1c7c009a253ca22e48299c", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters29-result29]": "60797ae0c30db6c029b88652f3a8eb4e364fc55c441bb8d4813c497596675745", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters3-result3]": "114b6d143060c6ba8bc1468b3e3e46d24b7b90642f2fb39573d5ff2305a8c25c", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters30-result30]": "6cd8d25c54fbc0746cc3214db3ec79e50da40e7096ccf7ae1bce6360efe521ba", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters31-result31]": "0fc4bfa7b881192acc0a05e5967d92f41fdcabca330a97089b0af88d543540a9", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters32-result32]": "5afeed15d7bf8bdb7e6f30008f4c5758dfb851ae59a513b662ae9f5b807af085", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters33-result33]": "c33aa05e40224c9c6f7c3aad7001b3a826fe5c55919808708c58e506e41fe309", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters34-result34]": "b29ef19ae00917912a2005bc42fbcde600fbc5d44f80a1d3cf1750f21a50b239", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters35-result35]": "c3374f132613b75cb7fbbf4eca08cdf351af6f8d39725bbb4ce6e654ed678ac1", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters36-result36]": "70dc31765f88bbea82425490989abe610539a679e7119393e2fa9099398fd335", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters4-result4]": "e1501c5f37596774b9d5824b5769d9c2524275d02ba37d0fc5205cf346847e01", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters5-result5]": "f8520c1f0a7fde978fe7209c06b354c74487ee3a3bbe4e27ae960ba70495d430", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters6-result6]": "59a30e2e5ff1a779b48a8545283336348356f8e3a700c8aa101d8b9eaa2396d9", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters7-result7]": "2967df26a1d3422522b384f3a4bea993ad8b88032b0de5eb1928b785e0e5a30e", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters8-result8]": "5f3adc5e98c37a601b13f3c7dd97651a88fc214b97f2d0ec91b7f5fb7bf1c11f", -"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters9-result9]": "1c4b6faa7ea231a085db303c479f8e85febe478796aca1456f8baa8d1811312c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[icarus-derivation]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[icarus-trezor-derivation]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[ledger-derivation]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters0-result0]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters1-result1]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters10-result10]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters11-result11]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters12-result12]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters13-result13]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters14-result14]": "db4a8f21cfd2bdaef28debb199e2296092b33ba26798b2ed52e708a51b62a569", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters15-result15]": "db4a8f21cfd2bdaef28debb199e2296092b33ba26798b2ed52e708a51b62a569", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters16-result16]": "db4a8f21cfd2bdaef28debb199e2296092b33ba26798b2ed52e708a51b62a569", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters2-result2]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters3-result3]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters4-result4]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters5-result5]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters6-result6]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters7-result7]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters8-result8]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters9-result9]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_cardano-test_derivations.py::test_bad_session": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_cardano-test_derivations.py::test_derivation_irrelevant_on_slip39[CardanoDerivationType.ICA-3b0af713": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_cardano-test_derivations.py::test_derivation_irrelevant_on_slip39[CardanoDerivationType.ICARUS]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_cardano-test_derivations.py::test_derivation_irrelevant_on_slip39[CardanoDerivationType.LEDGER]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_cardano-test_derivations.py::test_ledger_available_always": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[all_script]": "a52c22368ee7156164e78b14874d5d9ed013d2093bfdc5ac69b51fbadb57b191", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[all_script_cont-aae1e6c3": "2093d9c62b5e037c45b19a1c7a656e8f2e4d2d056f0c116107905f51ca9dd0ca", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[all_script_cont-e4ca0ea5": "6ad168aee0818c17b6ade059976314e6aebae4cf4aa332d51486bf9acb698d53", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[any_script]": "2be8e96c4bbd8e7531070b5c63acf04dee71ce00076b0a851e26827d64e8bf69", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[any_script_with-f2466a2e": "6c59b3a5c8420e3cfe0f0557b321af480dd657d9085f3bfdc012ba095ae5a483", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[invalid_before_script]": "c383a34fde84b054e9886e6289ca92d298b8cf6b749a105d6803a42577a86c2a", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[invalid_hereaft-d01d7292": "b74a971ef78190d2fff6b936c41b6fd2e8eb94ae9f8010f596372fcd1aecbe92", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[n_of_k_script]": "b35896a98a98e83565975daf713ae2d54cb7dbd2e321649b6f795f5675c035a3", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[n_of_k_script_c-d93f5fb0": "fcc3543d0aec9b6aa445dac7025526c488ea38a47532bdc0e79ae4828122f654", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[nested_script]": "7e3bb5918c781636f4d9073b0ec443e16ec28fd7f98f03eb5be0946865745e8a", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[nested_script_w-789238e6": "2fd8d071689edab5e611bbb28f3ea562b9f20231e78f96fbe46d5fb5c65b5dd1", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[pub_key_script]": "0741357649375673dfd5cf56b4e0e0c75d230c775b4793a9b0db2c1b32fffbb9", -"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[pub_key_script_-1579fe2a": "c37aa27b95f8117e8878fea7b0c12a9a0e13698d52b627a5eec82d16f41c17ed", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[byron_to_shelley_transfer]": "0d51ef1fe746a2c5905d732ef03d52bce93e20396d0c179ad5bb98e53096b326", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_with_change0]": "1224c16621df898cd11a6cce817e9fcca8ad782e0f78710bcce0b8d9cf99051e", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_with_change1]": "4d5c91f8b4b27fcda4483c4801de7206afdaed013aee9c0dc13740f2bcba7a77", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_with_multiple_inputs]": "aa4f9eed5e70fff58c6018db8dbdaa319bfa256f2d088f1300849d9f8471c85f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_without_change0]": "aa4f9eed5e70fff58c6018db8dbdaa319bfa256f2d088f1300849d9f8471c85f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_without_change1]": "f3232b40261cedfac96647ac9a7d351c6c13c4b7acec60024a540b27c6e0e741", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mary_era_transaction_with_different_policies_-1dbb1bfb": "cd261ba77b06ca798741f135776ea6e0fecb5f4b7293ce5b8c6b3000f6abb456", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mary_era_transaction_with_multiasset_output]": "811db103bba50941df416dfa7cdb85e3cc7abb6402660d91c8022337681f6155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mary_era_transaction_with_no_ttl-validity_start]": "6860b80bbb15e170015d41fef8a6e52b7cca56804cd806a71884b812b8c8402e", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_a_required_signer]": "e53cb22fcc618da83bd5651b6e759eb56b5995a7eb403ed5472ac0a33018ffce", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_most_elements_fille-29691455": "b5652b4ffa708f5fc40c9ab7f011d5f06417cb514abf333c05370e935a38e7f3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_output_datum_hash]": "cb36994cc7e412e9373d02b9cd5022c8cac08cc982f9951e615d80403ddde346", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_script_data_hash]": "cfce404c71472761a33246197347098c9e2f40c4d96678d93597cffca3da85ac", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_deregistratio-1ab28f77": "c69b2de7e1749355bdba8e64805ea98933635b06e21f97f7240cf761c49f708a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_deregistration]": "c69b2de7e1749355bdba8e64805ea98933635b06e21f97f7240cf761c49f708a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_registration_-a144c34c": "b95645462e4e8f56b563a052bc912d7f76511b57dd5aeddefff251e3213f28c3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_registration_-bf5f9707": "ecce012a8ec32a276a9d3c128ab15028e05046f7e7dc5087163d4693c5652385", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_token_minting]": "50e8951d5d9aca5e47c4de94ca37cc386227908287d87ccfaa3182357cea5d49", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_a_required_signer]": "ee4b66299e94b23dad944d8bb633faf1f7f01cbc7776b4ca84666a8f2179481c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_both_output_formats]": "5552844c1bba97fcf068c5092ec6665080f4d67fbd06002a9fad7f029b903005", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_inline_datum,_refer-d1082570": "01b598832c2382557313026756eb558e0c2abef243b5827c767e39e36b5e40d7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_long_inline_datum,_-1f681aaa": "d337d33b8f070e1fbd9fa10c64a9ffeb22a7688bf7efd0b978966d3d0bc46140", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_multiple_correctly_-6545455a": "57610b532a7e4dc4525128394190c88eb7e6e6b960a3fcad94be62b9412f9186", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_network_id_included-d9df16f9": "aa4f9eed5e70fff58c6018db8dbdaa319bfa256f2d088f1300849d9f8471c85f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_output_datum_hash]": "01b598832c2382557313026756eb558e0c2abef243b5827c767e39e36b5e40d7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_output_datum_hash_a-84ad587a": "d337d33b8f070e1fbd9fa10c64a9ffeb22a7688bf7efd0b978966d3d0bc46140", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_script_address_but_-b0da7209": "34974c63739ad872aa3c36fa075b375a467d28e1690fbbf30c65a015a93258e7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_script_data_hash]": "ee4b66299e94b23dad944d8bb633faf1f7f01cbc7776b4ca84666a8f2179481c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_token_minting]": "81ab716d79d0155f6bfdb310175cb81e9bccdbd5206de15b53c76f884e1ca495", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_an_ordinary_input]": "6dddc9b2fb489feb47f6d728378bff1643cb6b6eacb3c93c2bdb995037103f76", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_base_address_device-o-a33e6741": "5d888a9403651b0ae608f877896f502ba4aa52b0d4576a58836c4d8f0d9ffef3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_base_address_device-o-a6481374": "096057cf80b8354ccff5fc152be7b79d3d354343138bd9180fe2e9fd6ce4e3e4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_base_key_script_addre-d3366a63": "8808d5114d5f533c3ce1de3aeffa88abd864dc7189a2067857db8054de725f37", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_device-owned_collater-8f38b4d7": "c738a360a2ece51a1e267f6dc723e51e0fe4922f9702019835380bb50d43ac22", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_external_collateral_return]": "7957c7b620bec186017604adb328c104fd22a780fec3a8a844ffc9bc1f38fbc3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_output_datum_hash]": "871fe7a57c54ffd44e74aa4195e6ed2566d092a9f2c02aa0de53e3ef6f5864bd", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_reference_input]": "c99ac282f16f760d7eff831632c17786dae787c28bc8feaf30d9a7e356d31f04", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_credentials_giv-6a67c1eb": "e2b271616f109f038977dce303743752733793eeceb6128bd00363a9f53833bb", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_credentials_giv-72ef969e": "739fd46934db0caa9ddbbe3a4ec9d5a60a0b10c4655d0c230ce3ed3f0eeb0f2c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_deregistration]": "050343e95ffc962d6378ff05fe3b3ef3868db16b741d3d6bf242c421bb3f865c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_deregistration_-78f5c748": "f79d0ad6249a819d02279a9d45d4098b19258ddf56fc1f9ba16a683fc4d50d82", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_registration_an-4da9385a": "1dbb541e857f9248ef8f7d60c56eb20dc533173089dc4c7ce0c0eca4541a2b84", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_registration_ce-46b0a250": "77ba119f9579509ca68e9d396cbef5b728e28385a603f34d8802ecb36183348b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_token_minting]": "51b25b17a16b5fdeca7598b1af1d674baf8931c1f706220f1aae25ea3f728d07", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_total_collateral]": "cc328394ba6d1f277429ad98e1850c0ffd1f575e77b536f65da75d0e672ce126", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_total_collateral_and_-3f0b305a": "64cb27553fb808a5eefb8555e1c4e4d41d0c042b1f6ad59d4afe373fb4fa29ad", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_total_collateral_and_-c92d773b": "da5b602e247c26fa1da56b9f8d27314b2f1a047bb0b230b68a33a73a5021aa54", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_without_script_data_hash_a-9590827f": "8e014e315ee81c916343b27b81931461aa0cadb08c86a5b003d8644bf6b03a1e", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_certificate]": "468c7e77aa51f5075526795c8051012548a601f594f923622a89270fa604c1bf", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_certificate_wi-336f4a44": "468c7e77aa51f5075526795c8051012548a601f594f923622a89270fa604c1bf", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_certificate_wi-d3427614": "5642c7a7605897c74fc69d26b2ca21d4c966edb2e2689ce4a545fb4693a6375d", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_with_zero_margin]": "251c52a758ed436690c2bbae5be59cd595f6f73e881dff272268f551beb45988", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_plutus_transaction]": "ca0c3df4c1857a5151a07e8b2450865bf834a9e0072991b9598f2af818281ae3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_plutus_transaction_with_additional_wit-36ba8ce8": "752219f0ae37b0c94c56ec10365b86559485cc75d84e0d8ea6217431da179ec3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_plutus_transaction_with_required_signers]": "416fdeff975e39807081c82b15c4df578c79fc143e2cc6149b078bdbfbea31c0", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_address_change_o-0c37e6dc": "3f4dda4543a1b835e445efd3123b77881d9c570cfffdb123a57b972b2bcac9bd", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_address_change_o-7f1d12f6": "ee600a4f85f25f2f0db2b93cda8f80e6c8ecd997248687f4b96e83e5858b8802", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_address_change_output]": "ee4b66299e94b23dad944d8bb633faf1f7f01cbc7776b4ca84666a8f2179481c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_script_address_a-56fc16f7": "876aaa929ba082139ad02497220ac9193e2bf0a0619dec803116a6f77bfa3474", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_enterprise_address_ch-15518a4c": "7d292d03a5ec8ba8b3751c8ebe27a40c4649e509621fbc8fca72fe0b7c1c3d32", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_pointer_address_change_output]": "57e68f794f0c0d0a31aad3ec62d2be72e1b767ed9c08d6e3cc02cfaff2fb9876", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[stake_pool_registration_certificate_with_no_p-0bbad967": "c6a01842ab3b384ffeeffad39dbeb03a252d5766f2834c7810a2c9ea172590a7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[stake_pool_registration_on_testnet]": "345265907d0d246543c1cb3cb3e5f76826d4e4801db7e248f028ecf1792aca21", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[testnet_transaction0]": "6e8805dfd99efb159061fe2bbee89d102b9bad292a5ac84756ab844dd5f8cc91", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[testnet_transaction1]": "5c5331ff5ecc9001b96d9d43ecb80120018c7f7a7993f01bca4511451fa84ecb", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_auxiliary_data_hash]": "ee4b66299e94b23dad944d8bb633faf1f7f01cbc7776b4ca84666a8f2179481c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_base_address_change_output_p-3c7243e1": "72f3fa9a6498cf6ccab31afb218dc84050bd1aa24a562e4045cd19a637e39973", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_base_address_change_output_s-20438873": "41e0fff80231acaf86c0e11a5149fda4eb08d2cdd38bbf9e26d9cc9c688c56d3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_cip15_governance_registration]": "9b56d109ebc2eca2d049692a9c45cdb0ceb1d43dc54f84134079f2a4c3953a98", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_cip36_governance_registratio-35e04232": "f2b80c70a6dbe4614940f0afabc77f95941474df252239ae23d45f41a459da31", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_cip36_governance_registratio-f00c1b65": "4171ae144c0f8cdf9ee8661cf54c963682cb801d41eb63d1960116723d6fe683", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_everything_set_except_pool_r-1e1ef130": "a93a1511ef0f0e6f826e7bf73f3adeb6d8caf2dcb4eceea28feb4e29ca70716f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_deregistration]": "49d80162783ee61e5bbc7fac44a01197a433f46a2ff1f702b3e8be6a2d4f858f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_deregistration_and_withdrawal]": "49d80162783ee61e5bbc7fac44a01197a433f46a2ff1f702b3e8be6a2d4f858f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_deregistration_with_ac-9ca046f0": "f0cf27b72ea50836e94764074367de2c6427e50d9004bb19cc81363895aa7a87", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_registration_and_stake-3fdfc583": "3f53eeb86730f3461442842c082e403bc88d1fe916f55d20a480b80c618b1f68", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_registration_certifica-e7bd462a": "d486c7214a3b9269db0f204fdf6572e337e8872b4701243b8b08f1e012c7230c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_registration_certificate]": "62fd7b52e0ff61353d005e3cfe6f1609f86ceb87d1ed600302de989546a0e87f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_ttl_equal_to_0]": "4ec0b5f501482f742aae69cf190ea0f0ebf24601a74e68fdd9a2fd02bf9e81f8", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_validity_interval_start_equal_to_0]": "7cffe9d4352d53d81f54d3f1355ad3db670be3f9f03eb88ec53522e3a9545386", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[1854_change_output_path_in_ordinary_tr-805f9bd0": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[1854_input_path_in_ordinary_transaction]": "aa4f9eed5e70fff58c6018db8dbdaa319bfa256f2d088f1300849d9f8471c85f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[additional_witness_requests_in_ordinar-9c4f94c0": "aa4f9eed5e70fff58c6018db8dbdaa319bfa256f2d088f1300849d9f8471c85f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[all_tx_inputs_must_be_external_(without_path)]": "ead7bd56b906d2ed7172b19f61be6fc75d4d28adc31f024d0e277bf7b2657178", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[asset_names_in_mint_token_group_in_wrong_order]": "63b06367ba0d4c71c1a9aa0e0d9b8d091041b2149c597dcb6e6a8893e192cb88", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[asset_names_in_multiasset_token_group_-7c1351bc": "5269748983fd41d70114f88f2dbaa3e302a010d84e7b432f05586f67c4e84843", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[auxiliary_data_hash_has_incorrect_length]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[both_datum_hash_and_inline_datum_present]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[byron_to_shelley_transfer_input_accoun-863fee7d": "0d51ef1fe746a2c5905d732ef03d52bce93e20396d0c179ad5bb98e53096b326", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[byron_to_shelley_transfer_output_accou-5a99fb35": "6860b80bbb15e170015d41fef8a6e52b7cca56804cd806a71884b812b8c8402e", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_both_path_and_key_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_both_path_and_script_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_invalid_pool_size]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_key_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_multisig_path]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_non_staking_path]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_script_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_and_stake_deregistration-e17db500": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_and_withdrawal_account_mismatch]": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_path_larger_than_100]": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_staking_path_larger_than_100]": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_with_script_in_payment_part]": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_input_is_present]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_input_prev_hash_has_incorre-99d2dc0e": "47fc737f5b35bc245c6f6edfd4f4ddd1177c6564590554b250c62d6b95382226", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_return_is_present]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_return_with_datum_hash]": "0ed7eb08ce8f70d25f86d9ada26e6c18eb11b42faeb1ca744d6f6626e480fad6", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_return_with_script_address]": "0ed7eb08ce8f70d25f86d9ada26e6c18eb11b42faeb1ca744d6f6626e480fad6", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[contains_a_different_certificate]": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[contains_multiple_pool_registration_ce-3000d4f0": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[contains_withdrawal]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[fee_is_too_high]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[inline_datum_present_in_output_with_le-43c025ef": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_and_change_output_account_mismatch]": "8cefd505b4543138d7ab774a0934e3471ef6a338caec5957ffc74664613a9911", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_and_stake_deregistration_certifi-b3383de2": "ef79fb6a5b446baa1abf2a1881be5ca50f75e91041c0e86b9b38143fa98386dc", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_and_withdrawal_account_mismatch]": "ee4b66299e94b23dad944d8bb633faf1f7f01cbc7776b4ca84666a8f2179481c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_prev_hash_has_incorrect_length]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[invalid_pool_id]": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[mainnet_protocol_magic_with_testnet_network_id]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[mainnet_transaction_with_testnet_output]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[margin_higher_than_1]": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[missing_owner_with_path]": "b58aa2e0d82791dbd54296a2f4675b0b6767a260365025672cb32c3122f884c9", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_1852_multisi-b7679330": "da844bd901837ce64a377080b6746f4366071a738ae4cadfb8f1c5da569fd91d", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_a_collateral_input]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_collateral_return]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_long_token_m-9fb3cfe5": "a197605bcdc35040bea9a70e86421562611fcd9535436c43554cf117debf225e", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_output_conta-e3b36436": "58beffb093ceec399dcef3ba163cc0336a7bf5ed7c041dee4e04678b4df8b558", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_reference_input]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_repeated_withdrawal]": "af770c0c58be97298a77325fd64e1684eae2463565fdef199ed0b8e4569f8361", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_delega-19d1722c": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_delega-394991f1": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_deregi-351ce869": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_deregi-43da91d4": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_regist-456f1292": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_regist-84b1254e": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_total_collateral]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_withdrawal_c-9f7e1700": "af770c0c58be97298a77325fd64e1684eae2463565fdef199ed0b8e4569f8361", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_withdrawal_c-e98b1f5c": "af770c0c58be97298a77325fd64e1684eae2463565fdef199ed0b8e4569f8361", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_wthdrawal_ad-3291ee9e": "af770c0c58be97298a77325fd64e1684eae2463565fdef199ed0b8e4569f8361", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_without_minting_b-da5ba399": "da844bd901837ce64a377080b6746f4366071a738ae4cadfb8f1c5da569fd91d", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[ordinary_transaction_with_long_token_m-350c65f4": "43d4f4ee260c9ab0c68784afbf01c132be874acdbba2baf86a2b6b010b2b8427", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[ordinary_transaction_with_token_mintin-bc56f145": "47daf7e07af98666addf26f3c45f4cf279efb0942df26bba1005e7e91c76a066", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[ordinary_transaction_without_token_min-a128d577": "a4b6858b02efba3ea86e285005a4e911aae726623fbc09e30a02a60b4859c3ed", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_has_invalid_crc]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_a_valid_cbor_but_inv-ea3da215": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_invalid_cbor]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_too_long]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_too_short]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_datum_hash_has_incorrect_length]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_has_both_address_and_address_pa-2efc280f": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_total_is_too_high]": "3923f51972964b7cd5923c6603eea3b9960d59afcda14fa737accaef6d2c2571", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_with_reward_address]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[plutus_transaction_with_output_contain-74465253": "0a0ed967848d7e59ad0d8716125448a3875744b81f89e4bf3efc38b93b3f3dbf", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[policyids_in_mint_in_wrong_order]": "7ffbf98999d2008606af11a6ea5bc04350d6c716c80fb4a79774f79e2a6a218b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[policyids_in_multiasset_output_in_wrong_order]": "96eb42bbfbb2fb68b7fac4e468254c4c30f2dd7395d06b09d26d02e6e2ea14d9", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[pool_reward_address_belongs_to_differe-e79b6855": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[pool_reward_address_is_a_base_address]": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[reference_input_is_present]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_asset_name_in_mint_token_group]": "f4239a00f708dda4bae756d971cb50c0152e4abb992c7957a83bb6282c32f0e7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_asset_name_in_multiasset_token_group]": "9940d1aa0e7483136588dc5cc634bb0dc66eed0dea6bbd7569d3d975bd0425c3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_policyid_in_mint]": "1874ddaa7146fa35b1b10a056e7730a4a80625162079f3f05f406a8b1009c212", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_policyid_in_multiasset_output]": "8410e4154f56bb0964320cbc2fdd49e91be2ac0ddb6344bb551c0c83330a0871", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[required_signer_with_both_key_path_and-7d9a3c59": "0ed7eb08ce8f70d25f86d9ada26e6c18eb11b42faeb1ca744d6f6626e480fad6", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-02b129f8": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-11c8b442": "468c7e77aa51f5075526795c8051012548a601f594f923622a89270fa604c1bf", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-2d1899d5": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-3f8170f6": "468c7e77aa51f5075526795c8051012548a601f594f923622a89270fa604c1bf", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-60961d51": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-790fc948": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-883e81d5": "5ac2865d67ee0c413678188fd9294f29dafb83cb88377b6efe2153a1a78163b1", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-9ae6620c": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-d0eba163": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-e7a533e7": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-e908b1a8": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-f9976ae8": "6982531771c4d2494974e8f37a720a50fd51d1e94438d0c6cd08bb25265118e3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[script_data_hash_has_incorrect_length]": "0b057226d28b6cd151462ac74bea3fc2c1d54be2eb45db93949015bcd5719ce3", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[shelley_mainnet_transaction_with_testn-af110e3e": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[shelley_testnet_transaction_with_mainn-ba78ab8f": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[stake_deregistration_account_larger_than_100]": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[stake_deregistration_certificate_and_w-003a1023": "eb6b198a90b7144d92e1e718d59a57a279c14f8e705e0f686fdc33d8be4731e9", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[testnet_protocol_magic_with_mainnet_network_id]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[testnet_transaction_with_mainnet_output]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[total_collateral_is_present]": "6f59841dc5e3597d0940a7b4be0813b25555652180043634c9018272c5a22a3a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[transaction_with_both_auxiliary_data_b-d83df998": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[transaction_with_both_voting_public_ke-0ded7777": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[transaction_with_governance_registrati-efb78b43": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[two_owners_with_path]": "aa6d9385d60ad2ab9d73895a89c16046d3ac4c9e04ec1c4c7845754290d2ca11", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[unsupported_address_type]": "b5c8dfc7cc49f38e522dccad951a245534d1dde7a6e36beb0ce63c3333f214f4", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[with_multisig_transaction_signing_mode]": "5e259f1a2369281756cb598dd8ce45759003617e5b97271e971c21249c38d155", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[with_ordinary_transaction_signing_mode]": "13461846f8c98734093bfabbb6e16a41d3f441767dd0a1cbbbccdb814c4d1f5b", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[with_plutus_transaction_signing_mode]": "b91934b1d79d8acb91077ecd1ac862d8e47d3f6cf67e71c194edb5e77d3412e7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_amount_is_too_large]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_contains_both_path_and_key_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_contains_both_path_and_script_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_key_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_multisig_path]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_non_staking_path]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_script_hash]": "5c66ec7042d875d70f4b5063b3a61550687515f9214eaffc4719a9e9f9b7651f", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[mainnet_transaction_without_change]": "9b3c135bf9d0fa914156800ecf21c37d87bd3cd44769885635b348a6a1207e7c", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[multisig_transaction_with_a_requ-c2fba589": "0975ee263cbd8a57cb154ee6a1c5e0afd9eaa9736f41a1378c232018e5da4363", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[ordinary_transaction_with_a_requ-9728607e": "c15947cbfd4b9b9c422f94ddf0dee71ce01c7f6a6c908124419a19b0cee2c336", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[ordinary_transaction_with_long_i-708443f3": "77ee89006d113652413d8d51a9f4e6b84f8d9e28da53a9a778d0a2ea64f19392", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[ordinary_transaction_with_output-9ba7352d": "043e8ace7841d83e8a55ff5924072f01b55712f431c8ed6067a3d2380d4afb72", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[plutus_transaction_with_reference_input]": "edb3b7493cd0f946fbbae0bdb3f705cc2424214c1d02efb083e3f60308db7386", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[plutus_transaction_with_total_co-e846c221": "e6e3ac8ec60edf0a15498f28afa57bd109367944a01dbc3a3321fb16f73d0ae7", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[transaction_with_cip36_governanc-36bf9253": "e3a850158f6437b2b4f681cbaab90043218eac3034f4c0dab0c4ac624350584a", -"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[transaction_with_stake_deregistr-6e84da2f": "1ab8c7d8e6e688146700da85796e5cd92208f8ea3f5558fc88924bd814b9c181", -"TT_eos-test_get_public_key.py::test_eos_get_public_key": "3d1ba8c6d2132b7e7f61511a3b49c18dd1b5563578ae57e7ab476e23c49b20dd", -"TT_eos-test_signtx.py::test_eos_signtx_buyram": "ed4c2fce8b8f9c65c4095239927fda115e3bb5a268e32a1c61c7f59d46072406", -"TT_eos-test_signtx.py::test_eos_signtx_buyrambytes": "115173e4c4c5e820980d8bcd879c39b9d35894445cb9038aa45bc7dc84bca752", -"TT_eos-test_signtx.py::test_eos_signtx_delegate": "cf4e897963c6a31597c64ff0e0a529e8bdece8d575ea15482ca891d73eb12230", -"TT_eos-test_signtx.py::test_eos_signtx_deleteauth": "1476e34b6dfc63e64d7984e2bb1e20e3b8c7eff1d0ee940ce7e6358543c19526", -"TT_eos-test_signtx.py::test_eos_signtx_linkauth": "503276fce84fe4a06d7b7fd51c62be2c93d034b72f14decb4b95ed03046ba7a0", -"TT_eos-test_signtx.py::test_eos_signtx_newaccount": "e890e03610c0961d9fed284bf333f09825931695f51e5030beedf23b4480ead4", -"TT_eos-test_signtx.py::test_eos_signtx_refund": "82577fdaa1c3d828d10ba7c305ffe7527d0200e6b7b6c0497635bad706717c88", -"TT_eos-test_signtx.py::test_eos_signtx_sellram": "e658edccf9e9af8cc88097e0a064043a23bb1d12c7f7c3a51f9a99afe7edbf65", -"TT_eos-test_signtx.py::test_eos_signtx_setcontract": "29029da6c7abce48eaea9ca41881d75a36581f1fb4446772f5ed1de457949f92", -"TT_eos-test_signtx.py::test_eos_signtx_transfer_token": "54f93a28abcf81e13612eab851c37baddc6210ccf362a55e92cd989e9c3e6101", -"TT_eos-test_signtx.py::test_eos_signtx_undelegate": "9ef78db2f691291abbe4520702985e1ba875b9ea08f79c305134d5f523df3aa9", -"TT_eos-test_signtx.py::test_eos_signtx_unknown": "78b19a0a629d8aa6a9bc364a8c58ea4385e38e3780f9973b879f6ba1e3c110ea", -"TT_eos-test_signtx.py::test_eos_signtx_unlinkauth": "71304f0fe5d3092d9a5d73c1e5adf1c474430d492e0d8b5ebf72693509b82eb6", -"TT_eos-test_signtx.py::test_eos_signtx_updateauth": "6ec3c82516f5259d0a94e308a87f32c350c42c69e83965ef72db0dce14902e72", -"TT_eos-test_signtx.py::test_eos_signtx_vote": "cd9b7e8c0b59da8ed57dbb1e842d9f9c3c47767dad47a170384c63ec87c63ac3", -"TT_eos-test_signtx.py::test_eos_signtx_vote_proxy": "383e507f499274b5470e43631a74284d05163971cab80d0bf510807eaf5119fe", -"TT_ethereum-test_getaddress.py::test_getaddress[ETC]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[GoChain]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[Ledger Live legacy path]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[Wanchain]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[parameters0-result0]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[parameters1-result1]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[parameters2-result2]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getaddress.py::test_getaddress[parameters3-result3]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[Ledger Live legacy path]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[parameters0-result0]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[parameters1-result1]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[parameters2-result2]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[array_of_structs]": "d4cdb13cb952524cb9643df35185b7a5018cf3ac2b9c5d20006d7e11ad10b42f", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[bare_minimum]": "a373610eb3a47f876331b93f09f0adf464557d3f6fe88c607dbf00e633598727", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[basic_data]": "dff1b0e595c3794d56d85814fbe4a94465a2f602b2a1443a6ed510b7b3609ba5", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[complex_data]": "26843235253c899a57e7fc0fce1ff84e67c77b56e386df315a92f688ca2c9557", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[full_domain_empty_message]": "266069f67cd5f96f348046dff22a76744d626cfb184e230a59255db6de2e08be", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[injective_testcase]": "ad6d82d22e92ce23ae61286561c6ab75c6bba88f99c6e1e6c7af7f4f35c325e9", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[struct_list_non_v4]": "dff1b0e595c3794d56d85814fbe4a94465a2f602b2a1443a6ed510b7b3609ba5", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[struct_list_v4]": "dff1b0e595c3794d56d85814fbe4a94465a2f602b2a1443a6ed510b7b3609ba5", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[structs_arrays_v4]": "dff1b0e595c3794d56d85814fbe4a94465a2f602b2a1443a6ed510b7b3609ba5", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data_cancel": "5fdcecbcc9fe313b0b36b2b0419907e43480feae5590174a57a0ede123757473", -"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data_show_more_button": "a2da9f029cd797a10b140b8e36d75aef264d83f938b6ccd34260920354296714", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters0-result0]": "84d134d90391b168c62bb6f4f5bb57c66f3f0057c1befe49b4387292b0dfe8ac", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters1-result1]": "6f3100bd596806639da44ee684cf77183c2f98b8b7929e51404d3ce06f6643de", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters2-result2]": "aaa0cc0ec8efd2a7d4dfff1232f2c483f9f546e7f7c0228898d1ff523ee9e90e", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters3-result3]": "f50caa7ee27d8d0a73fbfb4318c9479e3b3d611bc833cc3fb3830d46bdcc10ad", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters4-result4]": "46cf0d9d1142f0e7e85382b77e812c8b1e2f4556b72fbcae9b7e3bb864b6c077", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters5-result5]": "d7a794e47e0db3b622487f256ac2ea9e92400ce06ee23d148042d27966a7464f", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters6-result6]": "57c5df05ba56fed413cd0b0fce6c66e202ca08fb9f175ecd15f93c41f460e627", -"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters7-result7]": "330a4700eeb5925593b80dacb32f60244b5b15e935d5c0f4aaef603b8ba47c18", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters0-result0]": "ca75d569edabbf4b873a9a52d4b322502ac88164e83797393b00e553b656d05c", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters1-result1]": "fbb818769f7e3eea5d37dbc79d5908631e0ce88ba82f5923815ee8ce1fd6be69", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters2-result2]": "cb38a45a5b27d1c34f342f0afd246bd71dd8e2448cf1eefd259b9ed919bc811d", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters3-result3]": "48a63951a97f09cb8e30488c2db387a1831b1dc49a47b9b536572c1957ec8a9b", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters4-result4]": "581fb7882acad3415bed13ba981789bb061a7ce9de75ca3cb95bf727827edd20", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters5-result5]": "8b136869608760892802c650215c559f2311e17c3c05842d80a5ad760b93258e", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters6-result6]": "0ff7438feee8acdc0e9bfe0a895f87d0f05b73981fcc8315de86dd4d02b697a9", -"TT_ethereum-test_sign_verify_message.py::test_verify[parameters7-result7]": "9cebc4dcd03f069d3d842cccf0f41b3601c52478f7c98c8a062c34ef267108a2", -"TT_ethereum-test_sign_verify_message.py::test_verify_invalid": "ca75d569edabbf4b873a9a52d4b322502ac88164e83797393b00e553b656d05c", -"TT_ethereum-test_signtx.py::test_data_streaming": "5b34af4146ca3e1d66b6e1a45ca8b6b63f45453aa8f61764826de06110d31b1b", -"TT_ethereum-test_signtx.py::test_sanity_checks": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_ethereum-test_signtx.py::test_sanity_checks_eip1559": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_ethereum-test_signtx.py::test_signtx[Auxilium]": "8210914d4e083ac53f0feec2bbbda3dffc2dc7ea13aad9ac1ba42cfdfd3a7fb1", -"TT_ethereum-test_signtx.py::test_signtx[ETC]": "1be13e9824e3a299514e008dd223caf250e7a0729a707ec90b2f7bc4417b7c93", -"TT_ethereum-test_signtx.py::test_signtx[Ethereum]": "42027bef9ba5f823920c3781732217b22b363422a5cc48b0d9f4e737e29be3a5", -"TT_ethereum-test_signtx.py::test_signtx[Ledger Live legacy path0]": "e16fc853b349cf9dbf1aa23e44365290580b1db602e6194e5c44b1cde454c8c5", -"TT_ethereum-test_signtx.py::test_signtx[Ledger Live legacy path1]": "42027bef9ba5f823920c3781732217b22b363422a5cc48b0d9f4e737e29be3a5", -"TT_ethereum-test_signtx.py::test_signtx[Palm]": "ec2e670528d40506adf44c3e4d60f3a233b41a05d2ec9d055a394cce6a2dca67", -"TT_ethereum-test_signtx.py::test_signtx[Pirl]": "7c3f0d3adb00139fa9e161c180d5a051198347f1dc0ce910ca73c776d119f767", -"TT_ethereum-test_signtx.py::test_signtx[Rinkeby]": "986aee9ca42dc1d319a2f3f5d5dc6b205c80c8314e70fb39efb4afea66625299", -"TT_ethereum-test_signtx.py::test_signtx[Ropsten]": "f4f2f7b08b8c0797cafb7e055b9435c80383b0ddafddb69ba8edf8f12a8e9fda", -"TT_ethereum-test_signtx.py::test_signtx[Unknown_chain_id_eth_path]": "999f2dba5a4702dbfed806f541bca0f650f751e12fcba27af83239b6c93c5c35", -"TT_ethereum-test_signtx.py::test_signtx[Unknown_chain_id_testnet_path]": "999f2dba5a4702dbfed806f541bca0f650f751e12fcba27af83239b6c93c5c35", -"TT_ethereum-test_signtx.py::test_signtx[data_1]": "22db9b529eb20b2981e961e81dec26a686bb5e672d608b8fe3e8336a2cbb3396", -"TT_ethereum-test_signtx.py::test_signtx[data_2_bigdata]": "c448a3487ebb722f83bef5c8260038e61f56e8afdc54b71f8b2b4d7931885f13", -"TT_ethereum-test_signtx.py::test_signtx[known_erc20_token]": "5a9313f98c8953020e11e731526acb1a87dffe5b6c2114880f473cbecbbeefbb", -"TT_ethereum-test_signtx.py::test_signtx[max_chain_id]": "999f2dba5a4702dbfed806f541bca0f650f751e12fcba27af83239b6c93c5c35", -"TT_ethereum-test_signtx.py::test_signtx[max_chain_plus_one]": "999f2dba5a4702dbfed806f541bca0f650f751e12fcba27af83239b6c93c5c35", -"TT_ethereum-test_signtx.py::test_signtx[max_uint64]": "999f2dba5a4702dbfed806f541bca0f650f751e12fcba27af83239b6c93c5c35", -"TT_ethereum-test_signtx.py::test_signtx[newcontract]": "3e50a6b53b5ccc29ab7cd92df9b5fb5ca67ff64bed1c4b0a0d95e93cbca36e73", -"TT_ethereum-test_signtx.py::test_signtx[nodata_1]": "07340b504562add1d5011bdce15683f696ac07307219ea084b6320d6e873d181", -"TT_ethereum-test_signtx.py::test_signtx[nodata_2_bigvalue]": "d1dc780fa5e796f96c8d28058b9dab83014d2390aeddf3d2d012c49d485e8deb", -"TT_ethereum-test_signtx.py::test_signtx[unknown_erc20_token]": "aa670aec57d9248b50d23787b3776c2e552624f19fd32b4f406966b5e06c9f66", -"TT_ethereum-test_signtx.py::test_signtx[wanchain]": "20f0b34e41d4c2c4a412c5f5de03b2a6059d5ee874ec794e1706aed1c4e7b36e", -"TT_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_go_back]": "1df6c7cc3074fdfa575d4a3dfc4d4603f611641d5c2894900e76fe364c4f3ee2", -"TT_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_scroll_down]": "c8b0390ed5bdb8f3362bac4891f3b96cf6c1217bd575f75bcb77d0678261c214", -"TT_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_skip]": "7882f2b019419acd1f5a7e196c63327ca4bb59436a94a34a104656a4badf36d1", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[Ledger Live legacy path]": "14f159d0b62d7697bcbcd56ed41b8affa86ffea1d7aa6f2d0c3ce168fb990431", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[data_1]": "6a4ab2fefa4d8fec26bfc8434371ba00859b9dbad37dac5ef04cd0c6c2da024b", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[data_2_bigdata]": "e6e66e9c54ae66f45ac83396611ae6ab6410bdc63eda3dc590dba13ebf382274", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[known_erc20]": "063198d50c0a9d5cb6b40d546f2f0af9cf1cb2e27ef385a18b46228f79ab5ff9", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[large_chainid]": "3df0408bb8f93821d26c9b2eae573d0ab55a89dab6d0468efd18a9be5a647b0d", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[nodata]": "14f159d0b62d7697bcbcd56ed41b8affa86ffea1d7aa6f2d0c3ce168fb990431", -"TT_ethereum-test_signtx.py::test_signtx_eip1559[unknown_erc20]": "2189a082fe612b0821072ab5260aca76e77dfeccb592c013409f1ef7812c8226", -"TT_ethereum-test_signtx.py::test_signtx_eip1559_access_list": "14f159d0b62d7697bcbcd56ed41b8affa86ffea1d7aa6f2d0c3ce168fb990431", -"TT_ethereum-test_signtx.py::test_signtx_eip1559_access_list_larger": "14f159d0b62d7697bcbcd56ed41b8affa86ffea1d7aa6f2d0c3ce168fb990431", -"TT_misc-test_cosi.py::test_cosi_different_key": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_misc-test_cosi.py::test_cosi_nonce": "c668c0d63bbf9875ea2c3d4073e9507fc89719a19ded85e6a64ecc03e8b0287d", -"TT_misc-test_cosi.py::test_cosi_pubkey": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_misc-test_cosi.py::test_cosi_sign1": "c668c0d63bbf9875ea2c3d4073e9507fc89719a19ded85e6a64ecc03e8b0287d", -"TT_misc-test_cosi.py::test_cosi_sign2": "aea78f19619a1aac8072b41e1dfdade53ca3496af5f27801a9a929a0d65ecce6", -"TT_misc-test_cosi.py::test_cosi_sign3": "efeed01748ee5797c446294fba491d819b3ea60f4238782154cc608558960c3d", -"TT_misc-test_msg_cipherkeyvalue.py::test_decrypt": "120f9e8e4cb99d8fbd4fe5f4ce5d6a24e7aa98fafb2329a0fde01b6fa6656361", -"TT_misc-test_msg_cipherkeyvalue.py::test_decrypt_badlen": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_misc-test_msg_cipherkeyvalue.py::test_encrypt": "582b31d707b118bda01c9bd6ffab3b0a8d1ea6fa68583aa9b3032cd7921ae2c3", -"TT_misc-test_msg_cipherkeyvalue.py::test_encrypt_badlen": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_misc-test_msg_getecdhsessionkey.py::test_ecdh": "3c448d188a8b64a1b778919d1bea3ae110ac853f68705c31a3ae504f5f3a37b9", -"TT_misc-test_msg_getentropy.py::test_entropy[128]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[129]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[16]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[17]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[1]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[20]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[21]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[256]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[257]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[32]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[33]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[3]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[4]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[512]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[513]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[5]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[64]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[65]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[8]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_getentropy.py::test_entropy[9]": "876c0fabe6607ef190180f2d395f44b7535a129c4b4a9df8477cc89128b2fb8c", -"TT_misc-test_msg_signidentity.py::test_sign": "fc070b17bb700b59348cc1d9416cecd9cd626a70dc45d633bd19a5ade7231db3", -"TT_monero-test_getaddress.py::test_monero_getaddress": "ff1b89205bd11c81da75ed3971ce504cf709765b3db47c5fc87ff179730dc5bf", -"TT_monero-test_getwatchkey.py::test_monero_getwatchkey": "bf70b5c85f9a0b3e76600cee79a51fc737019251ac104cfa0a9a69544fca11e1", -"TT_nem-test_getaddress.py::test_nem_getaddress": "51bb62e102ddb17272ad6796aa61d0779307ba28b8457fb6a01ee6925873bbd2", -"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_creation": "15a0e05575f0dfb3c390f61bd10b4d4b9cd0c47bee5e090d71ba525905fe05a5", -"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_creation_levy": "0067265adb2ad9a3935e7117cdb0f2c9e48c17daec40e99b0c91f089e8c66666", -"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_creation_properties": "81815307ee97434dd30c2ab615ca7e427b16c962f6668946fe9ca2bc5551cab5", -"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_supply_change": "9a8f0a1855b65b6b3a1ae6f86c1d09731c1ad669cd33305d4a4bcb024286ce61", -"TT_nem-test_signtx_multisig.py::test_nem_signtx_aggregate_modification": "3a6c1c634d519262f9de856dfa8f4966ceca8d207d11b0be6bd7e7f6e832069f", -"TT_nem-test_signtx_multisig.py::test_nem_signtx_multisig": "1d916958e8b15128ca4ce8c3743ef24659cfce1b97a78d6fa8cfa41a12ce9fa5", -"TT_nem-test_signtx_multisig.py::test_nem_signtx_multisig_signer": "94eea6553aa50aaa111396f10c4f4254aacf7ba3e9bbcae5bdf9dde7887e1b65", -"TT_nem-test_signtx_others.py::test_nem_signtx_importance_transfer": "bccb1711e75f92a65e2e54a3b5cd2e086836adc947a3b3dbff9b250488df21a0", -"TT_nem-test_signtx_others.py::test_nem_signtx_provision_namespace": "191e64b0df0c180309b0d77dbb1b823129486021eeb1514a905eceabad20857e", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_encrypted_payload": "12c595c359947044cf57e9eb9fc781b83c2100019cd8a236b9e6498ad8a651a8", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_known_mosaic": "b4e125c34f6b2e9e1e894c7480856eb6e4b199cc3ed48474fddfc861fb5c9455", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_known_mosaic_with_levy": "fd0ecaf352ccb48534ee9f15da5bb8e3e3e25e4ab7b529439fce8cf47b4aad62", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_multiple_mosaics": "f363e4b3862e4f8789086ce0ecb27962d0e87ccc7281526c50e7db9edeadf64e", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_simple": "456837c57ce8549365a587c41a65549c17fdda1a96924e27d114e2e4759b5232", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_unknown_mosaic": "0563d42b09fad59c044eab9737ccf9805cad07ce3ae2802cab31f84e2f7602e9", -"TT_nem-test_signtx_transfers.py::test_nem_signtx_xem_as_mosaic": "a9d651b6574be0bdbf86fabe7f5a5e3e2b40ff0206b4d5a135394e75baeac17e", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[label-test]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[language-test]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[passphrase_protection-True]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[pin_protection-True]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[u2f_counter-1]": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_dry_run": "893446ffd0a2370fb03afbbb0c93eabc1ab8c31d025836821e7f5aa3b0a5345c", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_invalid_seed_core": "712d9a6e0cbe38397eeb1d4468a17722db364c0b927736d98445e3862e18b004", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_seed_mismatch": "77c807619fd0a3561d1817ad0bd1713e707aeb876bcc2b42e306dbd5f91bcfa4", -"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_uninitialized": "8711e2fa6f7b301add7641e08ffb4bacf29bcd41530b1dd435fdbddb49b4bdf8", -"TT_reset_recovery-test_recovery_bip39_t2.py::test_already_initialized": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_recovery_bip39_t2.py::test_tt_nopin_nopassphrase": "080f44d1dd3317aad4535a97fd9c0d9120dde510fdbb9a177251d6f8713f9a89", -"TT_reset_recovery-test_recovery_bip39_t2.py::test_tt_pin_passphrase": "c2c4f9914188411f1b1c3cd97a9781eddbf298beaa61662df798c15362a7efaf", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_abort": "862f8eacd392de8f6432658df32b881821940b6559e09d87d072abbd7f8cd946", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_extra_share_entered": "f3f86b63788220d3740f6445369bf5d8403c3c6a41cc9a0623c55a8c8f7526e8", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_group_threshold_reached": "fcdd70b7b2ad043cbe6c81e7faa4ab365d49469d3de507a56d440391f3e35b6a", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_noabort": "f126f728a3aabf69aab35b12fe4bab816646cc8b47774e22e561e4f0e9ee75cd", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_same_share": "a0a5fe38afd0796ab71d1da93bbffb7e1d6657c16c794a931d4157a6e10d22d2", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret[shares0-c2d2e26ad06023c60145f1-afc2dad5": "4bc5e209040001c29e012f3479ae417c82eb95ff24e7bb8d7c486e2cbb638b7a", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret[shares1-c41d5cf80fed71a008a3a0-eb47093e": "351f9b791ca1eeb3fd298952ecec540b20bda03a12d8305ee4e49d31d2dc620e", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret_click_info_button[shares0-c2d2-850ffa77": "2042402357fb2e485eec01056ca0f0344ce7e42f0ca88e4fccfdfaffffa581ac", -"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret_click_info_button[shares1-c41d-ca9ddec8": "c5e40e7d11692e18729c9b0abcbf9c4e1222483f5b29dd1dce8e1c6d00d646e5", -"TT_reset_recovery-test_recovery_slip39_advanced_dryrun.py::test_2of3_dryrun": "d83c06b0ca227dbcd20a0300c7ee142ef7812a95ed05a5b62deb4927b01cde07", -"TT_reset_recovery-test_recovery_slip39_advanced_dryrun.py::test_2of3_invalid_seed_dryrun": "cc629e9ca460729ae6d72ca01ee58fa41b6b3e62594c11ab6417424483d4f18c", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_1of1": "7f85994120a6c2a462b01c6abb7e4df932ae4d76a65d0fb0513f0172989d8ff6", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_abort": "862f8eacd392de8f6432658df32b881821940b6559e09d87d072abbd7f8cd946", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_ask_word_number": "a4b0c157d6a180ab63200b9759a0e03132f51690a2d216f1e76307b43c763e6c", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_noabort": "704ad4594e1626cbbf58e798db8be3222c63b13561954ad76ca0edb80517cb66", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_recover_with_pin_passphrase": "8c605aa6a8dc80f186da529f653812a5ec1442faf54897790e138945238f9c87", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_same_share": "784859917cef061a296346627ec77d6410ae88785366640ce0ce511c81e3e4d3", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_secret[shares0-491b795b80fc21ccdf466c0fbc98c8fc]": "136903d575090a9c863c60c419d211a4348eb11b9852609a11cb0016ca0289cf", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_secret[shares1-b770e0da1363247652de97a39-a50896b7": "80c6b72d672552a1be281e58b2900aaa13dd6add73e21243b79c5ebf10fb1337", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_wrong_nth_word[0]": "49dc64f8830d5db676d8af48e5d03d8ccc9069dd437c115bdd56e785ae332486", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_wrong_nth_word[1]": "3ffaf3ea8170a1289d2826ecb3982f6bac17a1be00dabe69f6e22ab496959d05", -"TT_reset_recovery-test_recovery_slip39_basic.py::test_wrong_nth_word[2]": "ffec38d219e73d89472ffc77f60e1e34e109705271d2f0b2395df2a49aa90abf", -"TT_reset_recovery-test_recovery_slip39_basic_dryrun.py::test_2of3_dryrun": "df446369900e4701b8a7b6e30f37d59db5e45d80174fbb463b14a05d82f1a8fd", -"TT_reset_recovery-test_recovery_slip39_basic_dryrun.py::test_2of3_invalid_seed_dryrun": "40dfa5dc507f33132655b60eb5fb3635a1997c94a2f207c9ca9abd86b7c45819", -"TT_reset_recovery-test_reset_backup.py::test_skip_backup_manual[BackupType.Bip39-backup_flow_bip39]": "f82843d34b7aaf38a38f5701cb7cb95281d1769ae4e11210e0e6c6c4355b6472", -"TT_reset_recovery-test_reset_backup.py::test_skip_backup_manual[BackupType.Slip39_Advanced-bac-f67baa1c": "3f666cdebeb8311386b5f31558decf1d43f30e5069dfb8284281afeef3d25645", -"TT_reset_recovery-test_reset_backup.py::test_skip_backup_manual[BackupType.Slip39_Basic-backup-6348e7fe": "e40757245ab5abed8d6c0e10ddd0fae2548d563c1fc2f209ffaffa925a1abac5", -"TT_reset_recovery-test_reset_backup.py::test_skip_backup_msg[BackupType.Bip39-backup_flow_bip39]": "fc1716babbb47a62b3d16f90ae36ff5119d68a6217660f98b8c1fd63a9a3d482", -"TT_reset_recovery-test_reset_backup.py::test_skip_backup_msg[BackupType.Slip39_Advanced-backup-dcbda5cf": "a0a175bd08c3e25c138342666a882bf9013aaa9df48944206dc7bc9146686c2d", -"TT_reset_recovery-test_reset_backup.py::test_skip_backup_msg[BackupType.Slip39_Basic-backup_fl-1577de4d": "966cdb09aaca8d90309c2bdc274ca488587c9592f28104fbbf4503c9425121c1", -"TT_reset_recovery-test_reset_bip39_t2.py::test_already_initialized": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_reset_recovery-test_reset_bip39_t2.py::test_failed_pin": "798d844e85d384af27df27f6f79eb08017a2029d114b1c8f43a7514c99997d1c", -"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_device": "26f3d1690d9c948c6e7704c280717ba9ef2a51e65421c33e4ba941d05e4fc871", -"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_device_192": "2f3f2a070d171258211da6f381151ee4b637bd40554df0ec488a3a1595ef6c5f", -"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_device_pin": "776e32edd055cf085e39bfc2b5022cd03071bfb9bb8def811a65ffcca427c720", -"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_failed_check": "9f4ed211281833cdcfea62e28016f61d4fdb0f986fb6056ed09985cdf5f984ae", -"TT_reset_recovery-test_reset_recovery_bip39.py::test_reset_recovery": "5a7a1fef1303142a03e5c9f78c6c4c38f41742c4123b741a38e0b0f9938a64cc", -"TT_reset_recovery-test_reset_recovery_slip39_advanced.py::test_reset_recovery": "52c7963a6a7ea451d1c033a2f4d0660ca3d2d8a45512e55c3d382ff84159788f", -"TT_reset_recovery-test_reset_recovery_slip39_basic.py::test_reset_recovery": "76654c2a577b0d80de6fc1095ccaafa6ff56c2e528f0128e99949a14801025e6", -"TT_reset_recovery-test_reset_slip39_advanced.py::test_reset_device_slip39_advanced": "ed0ad3882b609a0bb0219691ca3f64382eb5c0b302b80349db6ec52f4bf81522", -"TT_reset_recovery-test_reset_slip39_basic.py::test_reset_device_slip39_basic": "d286292ef42855a4f4ce7f3b86c2e9f61aafedba6ac4d2042804a8823b9a516c", -"TT_reset_recovery-test_reset_slip39_basic.py::test_reset_device_slip39_basic_256": "cfcbc785a5afba184c7a24cfd96fc85a12fdd335d92894e63ed9cc5edf68e863", -"TT_ripple-test_get_address.py::test_ripple_get_address": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_ripple-test_get_address.py::test_ripple_get_address_other": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_ripple-test_sign_tx.py::test_ripple_sign_invalid_fee": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_ripple-test_sign_tx.py::test_ripple_sign_simple_tx": "2ffe8a81152b051d1e46ed8885704f81373429b021e4836b039978bdb167df38", -"TT_stellar-test_stellar.py::test_get_address[parameters0-result0]": "b90cae42441f03cd7b5a1a9fe6bcf2ada37be3b5b949af8638477a4826c73302", -"TT_stellar-test_stellar.py::test_get_address[parameters1-result1]": "7b20e6adacf6da1eaab8bd8dca5d48afcbeb2b35b05a036e10748cf8f8ccbb26", -"TT_stellar-test_stellar.py::test_get_address[parameters2-result2]": "a0174a5e585f37eef3767ac4aa0ed7970a362cde2ba4fa9b3f59336f24163892", -"TT_stellar-test_stellar.py::test_get_address[parameters3-result3]": "f1cfc7bf37befa7402cc8b59e689d656aa010687c9348c0ea59e086a7c0f149a", -"TT_stellar-test_stellar.py::test_get_address[parameters4-result4]": "1c2508bd679680f0d6e79f4aabf9ba9eae55adadd4d7be9acf49ff5ca03375fc", -"TT_stellar-test_stellar.py::test_get_address[parameters5-result5]": "2fe00085ac558aba502c47a4db75080d2c0c35dc35861f67ae478e00d318685b", -"TT_stellar-test_stellar.py::test_get_address[parameters6-result6]": "66b800fcf8469544d3aa77f28564ef98876287eaa80ca324aa25b61e3edce7d6", -"TT_stellar-test_stellar.py::test_get_address[parameters7-result7]": "f65bb9057ca5b0d7b74b3f149e43fb2481082496515afb9d85a16cd4d2dd7d7a", -"TT_stellar-test_stellar.py::test_get_address[parameters8-result8]": "ff11fc9a9ae8201c64a87f281e62e5331e5f3bde6742f250090ed2c14cd2f049", -"TT_stellar-test_stellar.py::test_get_address[parameters9-result9]": "909d5f138a24c7e9706bd45aa454488938515f50ed83ed9495c94496795ab8fc", -"TT_stellar-test_stellar.py::test_sign_tx[StellarAccountMergeOp]": "4f72a17970d0781f626bb58d414a4a75d1fd6cc66bae79337853da87c3e92bab", -"TT_stellar-test_stellar.py::test_sign_tx[StellarAllowTrustOp-allow]": "2796aa206e023839a3255c4f866252b0bae7fb79eebbf9c48888953643cdd53b", -"TT_stellar-test_stellar.py::test_sign_tx[StellarAllowTrustOp-revoke]": "fa48be1264b7223bdb79562a7384c71b69788df4ddd80778d64c558e4f444e88", -"TT_stellar-test_stellar.py::test_sign_tx[StellarBumpSequenceOp]": "378a7a40405d20d3480b425a527b29308eab52f1ac4a69d47bc200337984800d", -"TT_stellar-test_stellar.py::test_sign_tx[StellarChangeTrustOp-add]": "38f58b66b3619813cf6092f39efa78e8915292b910fd5fdc47fb4f954e169233", -"TT_stellar-test_stellar.py::test_sign_tx[StellarChangeTrustOp-delete]": "31924e87ac9faf0d110fd2d47fa2dac2a4a4aa904c9e487a124a4d4d1ab9c02e", -"TT_stellar-test_stellar.py::test_sign_tx[StellarCreateAccountOp]": "8d8139ccacd32acf01436554aef9cf8ba633854ff1b27da5c80a745f2852fa57", -"TT_stellar-test_stellar.py::test_sign_tx[StellarCreatePassiveSellOfferOp]": "a39df07777436208d3f803c5a866006f721e054a983301cf9e1b319c2cb630b7", -"TT_stellar-test_stellar.py::test_sign_tx[StellarManageBuyOfferOp]": "13d7d81b393dca866fb9c4a98c3ac7fc25ac41b2cd6b5a14533dfe45d04d9938", -"TT_stellar-test_stellar.py::test_sign_tx[StellarManageDataOp]": "774187f5c58b9c0fcab45ff464c29ec57e1ec1fcb6c33142c53d64406e54399e", -"TT_stellar-test_stellar.py::test_sign_tx[StellarManageSellOfferOp]": "55a8783e3a2139ec83b3e01bcb2955b30a5fe7cce19aa469f156b551e72633d1", -"TT_stellar-test_stellar.py::test_sign_tx[StellarPathPaymentStrictReceiveOp]": "bed7031be888e6488bde1afcaf4a8b20d1c2fff21c9795064bf80aa86b5b4442", -"TT_stellar-test_stellar.py::test_sign_tx[StellarPathPaymentStrictSendOp]": "85d94288f0ad4dbe8e6ca52d7db460721f9dfcb63bd6e265d40f045237f6770d", -"TT_stellar-test_stellar.py::test_sign_tx[StellarPaymentOp-asset12]": "5fdc2958c0a35486f355ea67899e0a8238154b23048e854c4b16149bd72baac8", -"TT_stellar-test_stellar.py::test_sign_tx[StellarPaymentOp-asset4]": "b6e1412b0bd9736186420d360a10baadc6d6dc989bbedafdeaa381be8d21d96f", -"TT_stellar-test_stellar.py::test_sign_tx[StellarPaymentOp-native_asset]": "c0ce436dc7fb64bf9dfd8a01fd2226d538b73daa1b9f4a544afdd3f0c94e1e22", -"TT_stellar-test_stellar.py::test_sign_tx[StellarSetOptionsOp-all]": "f84b5a46eedbc07620b037ce206727bae1ad602c5e7263b9ce3e8f0d6f7a051c", -"TT_stellar-test_stellar.py::test_sign_tx[StellarSetOptionsOp-one]": "1a5360bbca1558534acef21071ed80be4683867873ce8dea19903e5ef573143d", -"TT_stellar-test_stellar.py::test_sign_tx[StellarSetOptionsOp-some]": "84a59ea87227660c92c29a40ead79dbcddc73189a2d52298c8c1160e52276709", -"TT_stellar-test_stellar.py::test_sign_tx[memo_hash]": "b41c0c8063c09bcda6855c23686e9fbe1b11112191db814878dc4d59937c0860", -"TT_stellar-test_stellar.py::test_sign_tx[memo_id]": "b53f9d1b80b270f9826507af23225823c402c657add0412d8bf7ceeb2c3054de", -"TT_stellar-test_stellar.py::test_sign_tx[memo_return]": "f6c98efc0d1460190320ec4871ff1cff9646c404cc55a5305fa0d993593b3478", -"TT_stellar-test_stellar.py::test_sign_tx[memo_text]": "63c54ae50374c494acedec431c12806d4cb56d3598978de21934933f67645f12", -"TT_stellar-test_stellar.py::test_sign_tx[multiple_operations]": "2e3b48f233a86f91bb478d3786efdaf6ca41058b8277051bd670df4cb6f81815", -"TT_stellar-test_stellar.py::test_sign_tx[source_account]": "7dbd6c2e7b39459508fb33a15f0f7e2fe9709ded829f2305ec61d8cf5a5f67a8", -"TT_stellar-test_stellar.py::test_sign_tx[timebounds-0-0]": "1a7e7588d03289f01c5d0f9fa83e049c9bc9493b14dd0fe44bf02ecd66ffd431", -"TT_stellar-test_stellar.py::test_sign_tx[timebounds-0-1575234180]": "a679ac9f594f6dc9c5f3fb4b0871e400fb37e434246084f00feb2375ff7e70c9", -"TT_stellar-test_stellar.py::test_sign_tx[timebounds-461535181-0]": "a9253f97e3920e935d425310fa280033d838f33451c2d6399b4cea7add5cb46d", -"TT_stellar-test_stellar.py::test_sign_tx[timebounds-461535181-1575234180]": "c0ce436dc7fb64bf9dfd8a01fd2226d538b73daa1b9f4a544afdd3f0c94e1e22", -"TT_test_autolock.py::test_apply_auto_lock_delay": "8d9c05fbfdcc317f45a74a3fa7ed0a6f0d01815934490ba1df2cdaab0957bac1", -"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[0]": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[1]": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[4194304]": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[536871]": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[9]": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_autolock.py::test_apply_auto_lock_delay_valid[10]": "f5a3691dd22bab338ebfa66a5a89c4249a617a917fd9fc6850b1b10a5b026fd1", -"TT_test_autolock.py::test_apply_auto_lock_delay_valid[123]": "0ade5ff31d42d36b7c3a7d7cbafa91322a03f0aec08466bf44c069a44c5fa7e5", -"TT_test_autolock.py::test_apply_auto_lock_delay_valid[3601]": "3b5c3d3bb2d0795be5313b2c9415744c1ba71bd4c9d2f2a3c685001292fd8509", -"TT_test_autolock.py::test_apply_auto_lock_delay_valid[536870]": "bf0529557363167b7fa5620a5e3319858c3bb890f3543effdba04adfd1ac7051", -"TT_test_autolock.py::test_apply_auto_lock_delay_valid[60]": "3f4b17c2e568c4f402423d1229f997c8156fed8c006f4c3ac85d63241e1acfa8", -"TT_test_autolock.py::test_apply_auto_lock_delay_valid[7227]": "8865642a45e98557fa0a25fb9688679442f487ce7fb433f20ec94693524b8cbd", -"TT_test_autolock.py::test_autolock_cancels_ui": "8e051e881e7b5c982d0107a3e351956fbf85a3a13ff59ecdf24e1dac793a5158", -"TT_test_autolock.py::test_autolock_default_value": "55686a86c86ace4d9de72a97dc29bd80b38b9f9700a59a3d6dbf008d7758d8d6", -"TT_test_basic.py::test_device_id_different": "7ea7eebcb9173664ff8fcc717efe6ed7b35a47933a0d389b76803e05324d7bad", -"TT_test_basic.py::test_device_id_same": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_basic.py::test_features": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_basic.py::test_ping": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_busy_state.py::test_busy_expiry": "460662121241e4eef1a1bdd9fcff6f44f1e88d8570d445dea8f29d74e931c6ce", -"TT_test_busy_state.py::test_busy_state": "6b436931f710b1626ea510fea17809225c81b56db3dac4099a4e0f71a282b5ad", -"TT_test_cancel.py::test_cancel_message_via_cancel[message0]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_cancel.py::test_cancel_message_via_cancel[message1]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_cancel.py::test_cancel_message_via_initialize[message0]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_cancel.py::test_cancel_message_via_initialize[message1]": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_cancel.py::test_cancel_on_paginated": "cf7416c7ee045a7e583061dc01d332be70455e790b77ea8e1482ede674c2e748", -"TT_test_debuglink.py::test_softlock_instability": "1b089ebb927dc4e626a68f352d3ab8a0aee01b7ba11f288cd187914e0eeac2c6", -"TT_test_firmware_hash.py::test_firmware_hash_emu": "2e1ef4d7ca8a088fe2d262ef31728fa12be57ee097882e1900b6150e07cac339", -"TT_test_firmware_hash.py::test_firmware_hash_hw": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_msg_applysettings.py::test_apply_homescreen_toif": "1802078a2b87faca3a6c2f57f437177d5db4e6f4d82504c30b475cd13c2056e1", -"TT_test_msg_applysettings.py::test_apply_homescreen_toif_fail[TOIf\\x80\\x00\\x80\\x00~\\x00\\x00\\x0-ba464b0c": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_msg_applysettings.py::test_apply_homescreen_toif_fail[TOIf\\x90\\x00\\x90\\x00~XXXf\\x90\\x0-cb3c88da": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_msg_applysettings.py::test_apply_homescreen_toif_fail[TOIg\\x90\\x00\\x90\\x00~\\x00\\x00\\x0-09cb7d43": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_msg_applysettings.py::test_apply_settings": "7165b16c5d4fd4807ce8fbdbfa38839c5fef39869beff2113a6e72f3d23e01a7", -"TT_test_msg_applysettings.py::test_apply_settings_passphrase": "4d0d474eb514317475d8eca6f678d201b910be3ab71e2db6bbf8bf3e4f1618df", -"TT_test_msg_applysettings.py::test_apply_settings_passphrase_on_device": "9ee483bf455a0185bde3ba7ebc15c04ee9c3159e802818157beae60f23d41325", -"TT_test_msg_applysettings.py::test_apply_settings_rotation": "1632ffeb8082f80e9defddf3a464fbcd26d479f5aa98e8c1460b85c9504dadba", -"TT_test_msg_applysettings.py::test_experimental_features": "24fccf50260b16141d74871b06fce01b3bbbc90e91329f48c6a0e0ff4d6e66ac", -"TT_test_msg_applysettings.py::test_label_too_long": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_msg_applysettings.py::test_safety_checks": "3b4ce2d35a1cebca782cdbb4820c2659c8beff382c925fa96390b529414edfdc", -"TT_test_msg_backup_device.py::test_backup_bip39": "67b2774849c96ac1a7c7a2bbed3bdaaa58003e96b7e89bd8502aac119976ca21", -"TT_test_msg_backup_device.py::test_backup_slip39_advanced[click_info]": "832bd97940210883b165de7c58f63d3dce750df61223cd33a566ad256cdf04ea", -"TT_test_msg_backup_device.py::test_backup_slip39_advanced[no_click_info]": "48108986f776e027cc0fd2adf84a001398eeee1a7d7e8eb34acfb7e4417d1aaa", -"TT_test_msg_backup_device.py::test_backup_slip39_basic[click_info]": "3c46086199f0d21daf5f17be4971490d5fab6a37de1278ab267977a321badf4f", -"TT_test_msg_backup_device.py::test_backup_slip39_basic[no_click_info]": "1a77104caf9cfdb0fc8bcb168278689fdf5381b9f26515308d3d87cdbaab417c", -"TT_test_msg_backup_device.py::test_interrupt_backup_fails": "a8b5bc47867681b496da4b7473cde4fa43027c01fb071c2b0dcf97804809643f", -"TT_test_msg_backup_device.py::test_no_backup_fails": "ffc38ab2b61939fea6883a4805b2a4eb17a0be03afe0fed3b1cca492b50bb25c", -"TT_test_msg_backup_device.py::test_no_backup_show_entropy_fails": "8711e2fa6f7b301add7641e08ffb4bacf29bcd41530b1dd435fdbddb49b4bdf8", -"TT_test_msg_change_wipe_code_t2.py::test_set_pin_to_wipe_code": "309b516ed6a73b34fa7ad75965773428a59910aa741ecef3158a28e2928ef598", -"TT_test_msg_change_wipe_code_t2.py::test_set_remove_wipe_code": "2720b2895a013ef99f0b94331b03cc55835b304f55532858901cc25b164c9817", -"TT_test_msg_change_wipe_code_t2.py::test_set_wipe_code_mismatch": "8f63a3bf93371a6df3af8f416e08e7a46aad3ea23e66f23cee9e45de65e9f33c", -"TT_test_msg_change_wipe_code_t2.py::test_set_wipe_code_to_pin": "fd01bbb83bd5560b0435251c16e9af12886771ef6745f248e2867126b4e1001c", -"TT_test_msg_changepin_t2.py::test_change_failed": "8182a8980f6752bd7a41fe34c0c5dbe22c9b2761e750a3dd104ae3a811a822b3", -"TT_test_msg_changepin_t2.py::test_change_invalid_current": "f6cfc84b96838b274b14f9eeb0eed0e70db578537018d47ad2eccf53a9de098f", -"TT_test_msg_changepin_t2.py::test_change_pin": "634a53b833f30228fd4d0ce635f456c98cd9c096b5b1804986d840ff5e619b99", -"TT_test_msg_changepin_t2.py::test_remove_pin": "e52ba2124b5e93cf929cf14078ece149e8ab6a3d2e3c93757ccc2bc80d2e5554", -"TT_test_msg_changepin_t2.py::test_set_failed": "d6051691425c425f04060a6549b52637de0b0c2e29084adda4195b7b7bd28d07", -"TT_test_msg_changepin_t2.py::test_set_pin": "407074f8601c80404b6b63ab70d49edf98e5f5741086ab373a653ce2cc9b7155", -"TT_test_msg_loaddevice.py::test_load_device_1": "eeb5afb34b4bbf42b8c635fdd34bae5c1e3693facb16e6d64e629746612a2c3f", -"TT_test_msg_loaddevice.py::test_load_device_2": "f5dbc817f4c5e07e4b3c64a1117c3d983c35716c051ee6d312ade159d9f2b26d", -"TT_test_msg_loaddevice.py::test_load_device_slip39_advanced": "eeb5afb34b4bbf42b8c635fdd34bae5c1e3693facb16e6d64e629746612a2c3f", -"TT_test_msg_loaddevice.py::test_load_device_slip39_basic": "eeb5afb34b4bbf42b8c635fdd34bae5c1e3693facb16e6d64e629746612a2c3f", -"TT_test_msg_loaddevice.py::test_load_device_utf": "cd25e4800311e40ea541a2107fd551388ca39a2383976b081d963ae01deb647d", -"TT_test_msg_ping.py::test_ping": "9b44725459426439bc27f2cf72ee926ab7146f3ee1236d197382524cdf9a89a1", -"TT_test_msg_sd_protect.py::test_enable_disable": "440db11fff1645eecea1dd8108d187bfe4c0621e3df88844a6b12446bc65e090", -"TT_test_msg_sd_protect.py::test_refresh": "69f7208a8ef4a0c21336c96fbedeb6c1e98ad0e0a8d8f6b5d39ae8c9a8c4a413", -"TT_test_msg_sd_protect.py::test_wipe": "94969218b87d7522125f881919b61584d1d3357e7ff8d31b3bb5f04264481842", -"TT_test_msg_wipedevice.py::test_autolock_not_retained": "694d69dee9295b3d782e0eb61ce7d641d54c33093a6ec60786d384ead25bbbd4", -"TT_test_msg_wipedevice.py::test_wipe_device": "7ea7eebcb9173664ff8fcc717efe6ed7b35a47933a0d389b76803e05324d7bad", -"TT_test_passphrase_slip39_advanced.py::test_128bit_passphrase": "68e7d02ee3038fa20f0ccc226abdc29c422aa0d3b0c54533869276cd08a7a5b8", -"TT_test_passphrase_slip39_advanced.py::test_256bit_passphrase": "68e7d02ee3038fa20f0ccc226abdc29c422aa0d3b0c54533869276cd08a7a5b8", -"TT_test_passphrase_slip39_basic.py::test_2of5_passphrase": "db4a8f21cfd2bdaef28debb199e2296092b33ba26798b2ed52e708a51b62a569", -"TT_test_passphrase_slip39_basic.py::test_3of6_passphrase": "db4a8f21cfd2bdaef28debb199e2296092b33ba26798b2ed52e708a51b62a569", -"TT_test_pin.py::test_correct_pin": "09a26d8bdc96641fbf1d200836708e9234d44f49466eefdbe48bce740be184f7", -"TT_test_pin.py::test_exponential_backoff_t2": "9a1754d5ae428eae26a7d941839337a466c0782c311032c32080b5da8ff6fdb7", -"TT_test_pin.py::test_incorrect_pin_t2": "f66a4cdfefd1d1b30485b6f5e27b37686704c674b39ace31fde8b32320420e99", -"TT_test_pin.py::test_no_protection": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_protection_levels.py::test_apply_settings": "8f32f2b877c2589bb871a44649cd9d9878634a1f0df5e85be7453246c4cb44cd", -"TT_test_protection_levels.py::test_change_pin_t2": "04458882d22c5bc6df1ea28318836ae73604829999963a2df2a8bdf5c559d2e3", -"TT_test_protection_levels.py::test_get_address": "b5d011e6c4a09ad8be2861930c326a4536f9e61fec5624658b7257dc6da23664", -"TT_test_protection_levels.py::test_get_entropy": "9b1b7c073c92d7d45c49b94e85f547cf608f2c5f4ac57e110e13b069c507f22b", -"TT_test_protection_levels.py::test_get_public_key": "b5d011e6c4a09ad8be2861930c326a4536f9e61fec5624658b7257dc6da23664", -"TT_test_protection_levels.py::test_initialize": "c9a9e2ab23667b6be60a442ddd3cae376b4448629057cc1a713463f78c392cb4", -"TT_test_protection_levels.py::test_passphrase_cached": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_protection_levels.py::test_passphrase_reporting[False]": "fa38dd686df48d6d7810178b78168c1d8d87fb39963c2cba5b3f12315013816f", -"TT_test_protection_levels.py::test_passphrase_reporting[True]": "5de7113917e63c52fd2f8c3e6acd99a69a966d8096d742264e02b0637136f19d", -"TT_test_protection_levels.py::test_ping": "9b44725459426439bc27f2cf72ee926ab7146f3ee1236d197382524cdf9a89a1", -"TT_test_protection_levels.py::test_sign_message": "5979ec73c56b2766d8921bad5243274f1796792b7fe3a98c175984c7e5099cd8", -"TT_test_protection_levels.py::test_signtx": "042f9190563c991630d1e2ce870cb78157707ea21fdf1ac990731a412e378220", -"TT_test_protection_levels.py::test_unlocked": "5c08e44d462575a3b119a7afebd9f8076b2718623977ae30beb439725bd6b9c0", -"TT_test_protection_levels.py::test_verify_message_t2": "b20aa9be40597dff8b30e1a34c27f104fd5236be2797f767fe26fdcbc58e5c22", -"TT_test_protection_levels.py::test_wipe_device": "5e54568f39628aabc2e46ac45cf96ac56447ea1d62ae3e46ec317cd7d49e1949", -"TT_test_sdcard.py::test_sd_format": "b398c0c39ea6c4c711d51d5a1c12cbbd4810f094d4b7616653cc12f346c7eaad", -"TT_test_sdcard.py::test_sd_no_format": "e48ac8dc3f81340d89746a9a6bc2b89f8ebce54568c4c1805e626178ff1c509c", -"TT_test_sdcard.py::test_sd_protect_unlock": "abc72a3e0ed6b5158ba75f25f0258b0cf86c109fe52f02e136c7297dfc3d9033", -"TT_test_session.py::test_cannot_resume_ended_session": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_session.py::test_clear_session": "42cd0f29bb1c40d70178fd7488bdffcea8c578759a72260b89e61bacf9ea1283", -"TT_test_session.py::test_derive_cardano_empty_session": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_session.py::test_derive_cardano_running_session": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_session.py::test_end_session": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_session.py::test_end_session_only_current": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_session.py::test_session_recycling": "db4a8f21cfd2bdaef28debb199e2296092b33ba26798b2ed52e708a51b62a569", -"TT_test_session_id_and_passphrase.py::test_cardano_passphrase": "9789521a743d9240ee65663bfdd63acef3b512a352dfdb7dcdb3b7b37ae38d13", -"TT_test_session_id_and_passphrase.py::test_max_sessions_with_passphrases": "370cbe95d7295253b5069741da4d20be57b1eceee84e53fe874a1c3fbca2d3c4", -"TT_test_session_id_and_passphrase.py::test_multiple_passphrases": "7f73c410413a655054ab7fcc95d9da528bd082a89cda3ee981c4c48b566e6660", -"TT_test_session_id_and_passphrase.py::test_multiple_sessions": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_test_session_id_and_passphrase.py::test_passphrase_ack_mismatch": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_session_id_and_passphrase.py::test_passphrase_always_on_device": "e348385ec138e424448295c4aa1bb07ed7086cb06187a1b3c299346c37e13145", -"TT_test_session_id_and_passphrase.py::test_passphrase_length": "928b70f715015cb291bcd9890190dc53a4a31a7965d7b7eadfa5ec2e7a3a47a1", -"TT_test_session_id_and_passphrase.py::test_passphrase_missing": "95a40f79fa7ffceb10e89b513c203b4937112b8d764cdba3c1df538355dc129c", -"TT_test_session_id_and_passphrase.py::test_passphrase_on_device": "898f4c603b4224a9c5fef0b9ed4d71fbcc1545edbf279effc5c4b13829daa7e6", -"TT_test_session_id_and_passphrase.py::test_session_enable_passphrase": "9c96dc98e60e7b3a16d7f328f92a001e8c6727902e6912100fc45b3dabee612c", -"TT_test_session_id_and_passphrase.py::test_session_with_passphrase": "a7046b2ffe82d6b5194ad34d17d0fa2e16bfa29ab8df798dc38d2b40de01c434", -"TT_tezos-test_getaddress.py::test_tezos_get_address": "d5c6a3fcb7bf58d62be0eb6d3d51fa17ebeadfb8ec3359f11e5b3771bb33e4f4", -"TT_tezos-test_getpublickey.py::test_tezos_get_public_key": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", -"TT_tezos-test_sign_tx.py::test_tezos_kt_remove_delegation": "8efcd5f20130427c6465f21159df335ce9212e73361ad17452ad8b14afc1301c", -"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_delegation": "b904ceffd4ab9aa2ddfdee544ed6bd07fd56a5fb52a77c4c85a8cb4a6f1c31d5", -"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_multiple_proposals": "1081161ff81fcce6ea55abd901a46305d3ed4ca504f356038f9e755a660e4622", -"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_origination": "77d13c2abc07cb88419015f6bb04655a62c3ae6eec01d623754133cd2e8c9f29", -"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_proposal": "95b379c0d836d857499e13b88556c3d98fa616cb076d6720844a109a067ebc11", -"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_reveal": "6dbc00c8eebd105a7657b3f8fafdfa5d43880e1bc6b4361e8b16e45925682192", -"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_tranasaction": "73d18b87f71c33c4bb5f8f5f1f6e76e96bb272eec5b4fea84fb4fa2abd08bb25", -"TT_tezos-test_sign_tx.py::test_tezos_sing_tx_ballot_nay": "f1ecb8554bd816056f8027bc5588559e08f134cd1b53796a09d6b0850c06fd56", -"TT_tezos-test_sign_tx.py::test_tezos_sing_tx_ballot_pass": "6d133819ed7b3ca148544c63858f275ec14f8276a47348765bc2a09f4dfbad3a", -"TT_tezos-test_sign_tx.py::test_tezos_sing_tx_ballot_yay": "737966b740627e0e3e90c1ef560a0433afe4813ef4192fb4403968b891604818", -"TT_tezos-test_sign_tx.py::test_tezos_smart_contract_delegation": "d6aa87d41dd4d6529904f9f293b3ed88538abb07f57de122eb76cd79a2420f15", -"TT_tezos-test_sign_tx.py::test_tezos_smart_contract_transfer": "badc135456025bf9878d8a8276bdd722c8009d49502b9ca7aa4cd566547205a9", -"TT_tezos-test_sign_tx.py::test_tezos_smart_contract_transfer_to_contract": "5f5033fb5debd0252fddc005de508c5074400cdfc31895e663d1ec1454c13675", -"TT_webauthn-test_msg_webauthn.py::test_add_remove": "943e29255d6738cc6824c2565001c05906c2cd032aa2eb09993782564e890a16", -"TT_webauthn-test_u2f_counter.py::test_u2f_counter": "c6a8e270ce726c7693e2ff88f9af57c56f2d3d8b1cc9c04b6f1dc71e13fcb88e", -"TT_zcash-test_sign_tx.py::test_external_presigned": "9543d3b056465cc73546bc52a80a6dfc0f0d7e3eee567177262167d7811f541b", -"TT_zcash-test_sign_tx.py::test_one_two": "1e8aae8dce639f41eb8d99ed7cbf3d961fc609e4f1406df317d0ca2817a518b8", -"TT_zcash-test_sign_tx.py::test_refuse_replacement_tx": "f96ed5a6c1c4f7e48f3b2f2578c97740c04ced388e91465529af5e7812ddb14f", -"TT_zcash-test_sign_tx.py::test_send_to_multisig": "f11433a73e529f2192bbb71d76a35aadb12b5738914e2ba4564f6df32b07c121", -"TT_zcash-test_sign_tx.py::test_spend_multisig": "d030f5c2d12228963badf17689c316e22e29bb21c50e35d66eb605d38137fede", -"TT_zcash-test_sign_tx.py::test_spend_v4_input": "b380914038e00e3af638f0cb58435826c3f6adfaf513a1e3c1327208cb43f9cb", -"TT_zcash-test_sign_tx.py::test_spend_v5_input": "bfc1f8c55d5d600eb0a3637cde6ab455ded301dcb461a19afd434837e868a248", -"TT_zcash-test_sign_tx.py::test_unified_address": "d72ebc2927f725907ab0f49e5501f7f70d441d92925466ac120ecc045ba8a5b4", -"TT_zcash-test_sign_tx.py::test_version_group_id_missing": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1" +"TT_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-0-bnb1hgm0p7khfk85zpz-68e2cb5a": "0e9cca607167420ae84c851798bcae15f56f8090b2f78270f91d03b217604e13", +"TT_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-1-bnb1egswqkszzfc2uq7-1adfb691": "c946e650da594070013628b5ea18cc3025c98316851358cb502cd77c6d638ed8", +"TT_binance-test_get_public_key.py::test_binance_get_public_key": "8d567583a6b0ab3925681f57d3f98fbf25d27e105324ca307d20faf679103cad", +"TT_binance-test_sign_tx.py::test_binance_sign_message[message0-expected_response0]": "229851215ce747ab5c75916cf1345651d8ae7b4eeb2d27eba10bd02b1e69d2d2", +"TT_binance-test_sign_tx.py::test_binance_sign_message[message1-expected_response1]": "0e24e7407be53619521af089baaf54592a84a05a5f105d507c2717b590526010", +"TT_binance-test_sign_tx.py::test_binance_sign_message[message2-expected_response2]": "0e91c1a2b4568f9c3cd5ead797c18dc4e50741e839b711765a3207bcf9c5aaf7", +"TT_bitcoin-test_authorize_coinjoin.py::test_cancel_authorization": "a8303d65558011587692f6580b8d19951f2a75fa6a38112e4915655e06224944", +"TT_bitcoin-test_authorize_coinjoin.py::test_get_address": "b96b26e26a41a2ebeb1a103e3dec28b0d38ef310c8be54188028b0b7fab9a24c", +"TT_bitcoin-test_authorize_coinjoin.py::test_get_public_key": "c87e3627fc91f7fb16eed8b4ae5453f2a58aee21e1717ae657d8c0679e15bdf0", +"TT_bitcoin-test_authorize_coinjoin.py::test_multisession_authorization": "f1a050500a38d7936dbcc018da51adbff5c54386eee3479c45aa9ebef9d28e37", +"TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx": "b499e9ecb76a362223788758bd535c1883f19f78fde0476700ca7ce438df3f0a", +"TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx_large": "7ef969d253b086da18b376d9f93e6b5922b33ca34588cbb77f9468e18e7897f7", +"TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx_spend": "6e22574b0469cb525b6931bbb1eab3d06cc01f48e4a140f128683a84e998747b", +"TT_bitcoin-test_authorize_coinjoin.py::test_wrong_account_type": "a8303d65558011587692f6580b8d19951f2a75fa6a38112e4915655e06224944", +"TT_bitcoin-test_authorize_coinjoin.py::test_wrong_coordinator": "a8303d65558011587692f6580b8d19951f2a75fa6a38112e4915655e06224944", +"TT_bitcoin-test_bcash.py::test_attack_change_input": "b1802a922a2b5ffbac250bc7c423d7d48540b70e1a5f74612ca593622e3e5cc9", +"TT_bitcoin-test_bcash.py::test_send_bch_change": "b1802a922a2b5ffbac250bc7c423d7d48540b70e1a5f74612ca593622e3e5cc9", +"TT_bitcoin-test_bcash.py::test_send_bch_external_presigned": "a4b87d5442725d6c1eb35cecc7e1f2be4ef375f932c59b5058e6453f751ed6d3", +"TT_bitcoin-test_bcash.py::test_send_bch_multisig_change": "a0d7243edbcd1db926e6b7ee02c228bdfb9ce05022b0c2259701a681b9d8888b", +"TT_bitcoin-test_bcash.py::test_send_bch_multisig_wrongchange": "61f24798e3775f2c8a191dab85b908b6f86b4a81711566d972761c6ae7faca12", +"TT_bitcoin-test_bcash.py::test_send_bch_nochange": "fb3f7d0d98820c8dcdac7eeda8b5f2cd542d56f3c670a72384c3cd193138ac51", +"TT_bitcoin-test_bcash.py::test_send_bch_oldaddr": "e7e68de16656f2e2a6112906fdaf0469c2b325a7a3909db9b212bbcb6e9df9e3", +"TT_bitcoin-test_bgold.py::test_attack_change_input": "8f08d33ab6db08efe4bd72ad56d2d1e9e87e6f1c0af6805d9001673ae1d66281", +"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_change": "8f08d33ab6db08efe4bd72ad56d2d1e9e87e6f1c0af6805d9001673ae1d66281", +"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_nochange": "24157ca48912c69dc261f6d8cead1e5e6377e5e650a8ae21c0cae85f32d796cd", +"TT_bitcoin-test_bgold.py::test_send_btg_external_presigned": "84a2e38ec0f014704c03ae971e978193dfb4cda7f3cd95520ca4e6ee587cd90c", +"TT_bitcoin-test_bgold.py::test_send_btg_multisig_change": "14aa959d428c6fdf16134973e5a76bb85ad239743e651b8819bc1579938104b8", +"TT_bitcoin-test_bgold.py::test_send_mixed_inputs": "d1272e75be8197ba977bd5651d478a3ba14770c0eed1704eb1a5f29ecab77100", +"TT_bitcoin-test_bgold.py::test_send_multisig_1": "6b95842cee64808e5d5909aeaa46ae17d1fb33a50224d7f9288106d55ac737d2", +"TT_bitcoin-test_bgold.py::test_send_p2sh": "4fbff37cc5a9ab13c99b81315c9598de194b98e7836002c621ef865fdbf0ba4b", +"TT_bitcoin-test_bgold.py::test_send_p2sh_witness_change": "02139d8c36b526b4cf968d866dfa63afa19b454e815ae45e1cc81e07cc766a7a", +"TT_bitcoin-test_dash.py::test_send_dash": "f5c732cd908991b9aa2a8f4ab8044f9dae32be02507879d1a95c1ebec3092c81", +"TT_bitcoin-test_dash.py::test_send_dash_dip2_input": "46e96256d26a447bb4ce7330348275959cdf57bd6053ff3cc3516b5d8105e04a", +"TT_bitcoin-test_decred.py::test_decred_multisig_change": "710d078c86f8278fd99c7e6852bad0ffd88421c8b868b48f52da6071340a0aba", +"TT_bitcoin-test_decred.py::test_purchase_ticket_decred": "d79e64d35634cb8ec15bbffe4a415567006d9880560d277d296432ba69906ff2", +"TT_bitcoin-test_decred.py::test_send_decred": "69f9da1d576f445c24abfc82a9251a38d08a3bb93a10a2b9bf662342b864e05e", +"TT_bitcoin-test_decred.py::test_send_decred_change": "a754ed4bfc8cdea51e9fd136e041bb05ab814bcd9ea5aa4927abe2cc95276bca", +"TT_bitcoin-test_decred.py::test_spend_from_stake_generation_and_revocation_decred": "ca091e189a453f13ba8f30f13940c6f7be1de2ed076bb7bbc0414564590fe1da", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDADDRESS-pkh([5-7a80e3db": "173e67419f44ea10b0f66aad3054d91dd78607f68936d6d91d79979fd226c48c", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDP2SHWITNESS-sh-03d56ac2": "24ee36501705f36e13689bb771e4ec1d5810bb9996769109a7f1049c7e24ce23", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDTAPROOT-tr([5c-22751b2f": "b6d49b427da6a2f952b37b197079e58ba1c33e896b5da4103b60cc616c11f160", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDWITNESS-wpkh([-edfbc435": "4fae569b9f11ef403d5c136c38c9fc2937506822c4ceaacc370c6c7ad6e88fc6", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDADDRESS-pkh([5-5ab06094": "76d72a0daca234c10c86b55d42987916cfcceb8285daf01e939325cd112a66fc", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDP2SHWITNESS-sh-5dd6ae4b": "5ddaa110591d41abdbd8863a320e6d1d8dda979730919c0e1068065964fda364", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDTAPROOT-tr([5c-f4f20781": "03517dfa40318e280b4047d2120361ebc76ae82c42e4fa4ece1a923262dde8df", +"TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-1-InputScriptType.SPENDWITNESS-wpkh([-98a75f0a": "c0025190a185940af3dd157244d54eef4921b9b7254d99b6fbf869383d5f0dbc", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDADDRESS-pkh([5-f63bf93f": "7b01ecc0104876ce6003036d60e9aaa6b7fb3ceb0ea6504161383d07b0ba0d7d", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDP2SHWITNESS-sh-fd42e1d9": "a87c4cd7ea470539226dd93d81265b34c75ec67314ce9ac2bd01255cb46bed53", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDTAPROOT-tr([5c-a794e72a": "f9b2a868805e17e39812d53c0e0c41920d949c6eff13ef8123841064d854033c", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-0-InputScriptType.SPENDWITNESS-wpkh([-e70d0168": "25cb1ac274e901bdeab20277a41caccb07d9dd717543ccd77ba9c61b6261db36", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDADDRESS-pkh([5-2d5b32fe": "f8d055fb5d2e0fe12275ed8b9112b5560ac32cb063ecb13fc62a04a7c9e21211", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDP2SHWITNESS-sh-e8c5303c": "8b62d2f4f9b04b65b88ebc6dbe2ec52a4c6dab78d0bfecf3734e7ef8fc678be2", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDTAPROOT-tr([5c-ddc924d3": "82305a00a9a44321bce919a8559cf85b05f3601311633d124c1a0ce93f100083", +"TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDWITNESS-wpkh([-996ae319": "0c9355ccde6a8d78917af23716d40314a1add8f018de427ca19a11b34fca742d", +"TT_bitcoin-test_firo.py::test_spend_lelantus": "1176f2b2c97da24179ed9bf64c5a6a9ded8a120f907cc2907aba24559cb2fd75", +"TT_bitcoin-test_fujicoin.py::test_send_p2tr": "1ca5f79eb988a6bc920e54d274839107e0be0eb57dc1f2a142b3638491ce4a89", +"TT_bitcoin-test_getaddress.py::test_address_mac": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_altcoin_address_mac": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_bch": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_bch_multisig": "17dfa9111f67f6639612fd516e9b9f50d6f06439b4999c7607db3bf39c32da96", +"TT_bitcoin-test_getaddress.py::test_btc": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_crw": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_elements": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_grs": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_invalid_path": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_ltc": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_multisig": "a34a037e2d9fad3ce03cc4d827214242e48c8d1791b306365704fc0dc8a12101", +"TT_bitcoin-test_getaddress.py::test_multisig_missing[False]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_multisig_missing[True]": "3c971589eb061974cbc4d53f43e14dd9a2834f6ce5e959e84268c40f4182509c", +"TT_bitcoin-test_getaddress.py::test_public_ckd": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_tbtc": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_tgrs": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress.py::test_unknown_path": "a3609f60049744bd20abe544776e1e261e1347e5e8548c26b514b373a0bbbf39", +"TT_bitcoin-test_getaddress_segwit.py::test_multisig_missing[False]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit.py::test_multisig_missing[True]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit.py::test_show_multisig_3": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit.py::test_show_segwit": "44f2102aa9b1ce120e70126aa9e03cbb272bb476f51cc36f66ccbcf44d52ef34", +"TT_bitcoin-test_getaddress_segwit.py::test_show_segwit_altcoin": "2f00cfaf7e7fe3d2005f8f954119d79017a6790be71ebba4a3804167b07a30b8", +"TT_bitcoin-test_getaddress_segwit_native.py::test_bip86[m-86h-0h-0h-0-0-bc1p5cyxnuxmeuwuvkwfem-dc12f29f": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_bip86[m-86h-0h-0h-0-1-bc1p4qhjn9zdvkux4e44uh-1f521bf2": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_bip86[m-86h-0h-0h-1-0-bc1p3qkhfews2uk44qtvau-d8b57624": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_multisig_missing[False]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_multisig_missing[True]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_multisig_3": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-0-0-InputScr-6bc4ffc3": "3b08dc5a2f52049aeee3199f03db26c29e3b050d3ab5a20c28cfe865888aeddc", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-0-0-InputScr-8943c1dc": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-1-0-InputScr-016718c1": "bad6c31a649b0b56aac10bb6cde47903c0e6b829789b1d11e77fbe87327bee72", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-84h-0h-0h-1-0-InputScr-7656a4db": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-0-0-InputScr-3d3cc8eb": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-0-0-InputScr-8571d5e0": "a5f8e3cba2bb1577973d0c8a29650851ba83f5750af11ef855c180b6fd178453", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-1-0-InputScr-ab700de2": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Bitcoin-m-86h-0h-0h-1-0-InputScr-da3803e0": "66f67ae722d2637ed9ca5ff68f8789786c602467ad1cdb5f38a40017553323f9", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Elements-m-84h-1h-0h-0-0-InputSc-490228be": "4081884089aa530a127bed928e5e7bf351c7297c31b4283387cc552f1c8e5c64", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Elements-m-84h-1h-0h-0-0-InputSc-ed587e90": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--40b95144": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--45b4ff5d": "0dc498a93926dcb48fa759bdb1bb5fb2ad5a968146227faed14d99f3645076ef", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--8f7c658b": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-84h-1h-0h--93c9c3ff": "afe0a56bddeba9285f113c6639be26078c2afc2bdaec314048049262fee01e9b", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-86h-1h-0h--5feb8c64": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin Testnet-m-86h-1h-0h--8d4476a1": "4359835f27d2cb57f55e0d0a5345b15659f97a69c9f1ab320deba9ac690804a8", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-0-0-Inp-0200a67b": "171ced9a318dc4cc67a8d4b6a10f67ec3274ad74dd2105c7941416a7bb792682", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-0-0-Inp-e6c1098a": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-1-0-Inp-9688a507": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-84h-17h-0h-1-0-Inp-f825f217": "db715a66aa19e6691965b8333668468b63babbd107f43e474dfb4e47f22f1bd0", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-86h-17h-0h-0-0-Inp-38cd93cf": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Groestlcoin-m-86h-17h-0h-0-0-Inp-ebecce6e": "833f0322b0c9c45be3d7aceef29166a4272c58605cec0cae88176563d75300c8", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-0-0-InputScr-313b9443": "667ec56700dc483f7183c4ed95512cafe8bae0b35b9ab04ebcebadccf24fff9e", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-0-0-InputScr-ce15ec92": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-1-0-InputScr-040186c0": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-84h-1h-0h-1-0-InputScr-b10918be": "7fc8df251e23cdb3924192056a1d354496c634d44ee409078ba91b85ebff04c4", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-0-0-InputScr-55ae0ae6": "148dc10bb11f0bbaa02980046415f7211df32f82dcade1e780193d6a10792444", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-0-0-InputScr-821a199d": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-1-0-InputScr-9d2fa8bc": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getaddress_segwit_native.py::test_show_segwit[Testnet-m-86h-1h-0h-1-0-InputScr-d5b7f8fc": "06bec301f866b3b6c1a472d0ff47c1b70b62bbf05e56c2ef5031630a34aba26d", +"TT_bitcoin-test_getaddress_show.py::test_show[m-44h-0h-12h-0-0-InputScriptType.SPENDADDRESS-1F-1e4f2f74": "7643fb41411b4f7f1b1e000a57469fd11a887390fb0fd37166f22dff8cee285a", +"TT_bitcoin-test_getaddress_show.py::test_show[m-49h-0h-12h-0-0-InputScriptType.SPENDP2SHWITNES-a986211d": "56b3448866907487ff9eb7f24a2a9e2a8e2420cfa4b2966ff9c4941d93599937", +"TT_bitcoin-test_getaddress_show.py::test_show[m-84h-0h-12h-0-0-InputScriptType.SPENDWITNESS-bc-a5f08dfb": "8bfad8550098d2ca0f1c8a70ed3033343ca826ee10bc89652aa8e45e76027d5a", +"TT_bitcoin-test_getaddress_show.py::test_show[m-86h-0h-12h-0-0-InputScriptType.SPENDTAPROOT-bc-f94d8b44": "37189315faaeb8e48cd9e70b66774e18f341e0cb305c01a3009b030eff57ef2f", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_15": "c7daaedad20389e245cd03b34ed563c9113c6ca3bd991cdfdf17242d6133e875", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_3": "d7aeaf2a4f6a8b0b70fc4b956e09cc2371af8944a1b0c06475828234bfbe60b7", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDMULTISIG-0-3-4efd9cf3": "a71fc8fb4e2d8ceb19b6c14279eb4cc4087d53c8296e8a4d9151ed26dd69ba27", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDMULTISIG-0-3-98a7e339": "a71fc8fb4e2d8ceb19b6c14279eb4cc4087d53c8296e8a4d9151ed26dd69ba27", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDP2SHWITNESS--2cf5f03c": "7ccb5ac18f50db7ce218412191eed1009274de4c74bb0b1569dae697c1f0997d", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDP2SHWITNESS--5ea18367": "8130e556a4894f521a321e777c56db73cb028c23dfe717b008868829b8483a31", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDWITNESS-2-bc-e70b56ea": "eaca91a04302a7a1eb092e9135d396ca7a8bbe8c9944edf9375d3b1fc03f2563", +"TT_bitcoin-test_getaddress_show.py::test_show_multisig_xpubs[InputScriptType.SPENDWITNESS-2-bc-f3c4650f": "5c7bd452a449e6d64cd508c3027eea2a8f0ad4b029a619eae9d294a5fbb2ec41", +"TT_bitcoin-test_getaddress_show.py::test_show_unrecognized_path": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getownershipproof.py::test_attack_ownership_id": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getownershipproof.py::test_confirm_ownership_proof": "0a5a49abe4bb89dbcfb02742f46137c92df4e576118fd1a7b5922987ad3ceee6", +"TT_bitcoin-test_getownershipproof.py::test_confirm_ownership_proof_with_data": "ef43f5c7704c29b2886e17cf5d9009938b5ee0f756277f75493c9ca724cd7a43", +"TT_bitcoin-test_getownershipproof.py::test_fake_ownership_id": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getownershipproof.py::test_p2tr_ownership_id": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getownershipproof.py::test_p2tr_ownership_proof": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getownershipproof.py::test_p2wpkh_ownership_id": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getownershipproof.py::test_p2wpkh_ownership_proof": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path0-xpub6BiVtCpG9fQPx-40a56ca3": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path1-xpub6BiVtCpG9fQQR-1abafc98": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path2-xpub6FVDRC1jiWNTu-47a67414": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path3-xpub6GhTNegKCjTqj-990e0830": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Bitcoin-76067358-path6-xpub68Zyu13qjcQvJ-8285bd20": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path10-Ltub2dcb6Nghj3k-53e5db37": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path7-Ltub2Y8PyEMWQVgi-d0bb059c": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path8-Ltub2Y8PyEMWQVgi-98ae2c41": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Litecoin-27108450-path9-Ltub2dTvwC4v7GNe-8d6d95fb": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Testnet-70617039-path4-tpubDDKn3FtHc74Ca-f3b70aff": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_get_public_node[Testnet-70617039-path5-tpubDGwNSs8z8jZU2-8b5efa13": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bcash-path5]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bitcoin-path0]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bitcoin-path2]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_invalid_path[Bitcoin-path3]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_invalid_path[Litecoin-path4]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_invalid_path[Testnet-path1]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_script_type[InputScriptType.SPENDADDRESS-xpub6BiVtCp7ozs-9813cc48": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_script_type[InputScriptType.SPENDP2SHWITNESS-ypub6WYmBsV-0710fbb3": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_script_type[InputScriptType.SPENDWITNESS-zpub6qP2VY9x7Mx-84eaa56c": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_script_type[None-xpub6BiVtCp7ozsRo7kaoYNrCNAVJwPYTQHjoXF-c37a47fd": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey.py::test_slip25_path": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_coin_and_curve": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_ed25519_public": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[ed25519-path4-002e28dc0346d6d30d4e-e6c7a440": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[nist256p1-path2-0324c6860c25cdf7a8-d75f4900": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[nist256p1-path3-03b93f7e6c777143ad-2d6b178b": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path0-02f65ce170451f66f4-9c982c22": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path1-0212f4629f4f224db0-0209bb73": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_grs.py::test_legacy": "f139e4c316dca298d2861d80225dd182be71e4c795915001712a648987c57931", +"TT_bitcoin-test_grs.py::test_legacy_change": "9fd92acd2a3e03f056abcbfe8a85fc6fe147f510232710b7faf853ce17507a28", +"TT_bitcoin-test_grs.py::test_send_p2tr": "590dffd3edefc6f37c19810928e39e2604ee527da36064ff4fabc39cc1f0614d", +"TT_bitcoin-test_grs.py::test_send_segwit_native": "68df40050d3f960b64f6fe660ddb7d4187dc5374beb9938f981d2d4b91d85420", +"TT_bitcoin-test_grs.py::test_send_segwit_native_change": "adfc1d431be802d0dcfd52415369e85da6f05fd2c5443033fb810a6de0ccfdf9", +"TT_bitcoin-test_grs.py::test_send_segwit_p2sh": "b39d885697a5e975f022f73537cd47109b6c3ec3ed58ae0c7ca71675fa6a1808", +"TT_bitcoin-test_grs.py::test_send_segwit_p2sh_change": "4c18b442febb4f2e6f186f00709adabb43c4cea381bbe2216649fcbbcfb64550", +"TT_bitcoin-test_komodo.py::test_one_one_fee_sapling": "220ed08d4cfabb9a0021f09489726ba7258218c0d7bdc492149c63ff9b3ac7c1", +"TT_bitcoin-test_komodo.py::test_one_one_rewards_claim": "9b9e4d4333063943c51f46400c724c93296fe48712a9e77328349f82e50aecb8", +"TT_bitcoin-test_multisig.py::test_15_of_15": "51c922c38255587612c051e9006f46695d02f195c6de6a90f746a9e8bb705f18", +"TT_bitcoin-test_multisig.py::test_2_of_3": "0d04418a561386fcb0429b1de23ccd97c07d70685bcf3a34de9f1e27d1b44ced", +"TT_bitcoin-test_multisig.py::test_attack_change_input": "99abb73457ab5fe2cf4ca404a112c3198ed8c480d27c1da960ed042865c18c55", +"TT_bitcoin-test_multisig.py::test_missing_pubkey": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_multisig_change.py::test_external_external": "90e34306af107defc93d856d64193267d22bbd699f4c494ab7c83532af1bbe9e", +"TT_bitcoin-test_multisig_change.py::test_external_internal": "ad3441136556a22c1085c1343633cd131bdf5b3bdeef32202bdf829d1f858c52", +"TT_bitcoin-test_multisig_change.py::test_internal_external": "ea307ef0c8d33ac9773954cc88f2e56a8365625de218d46cdda2b1a9ecd6fdd3", +"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_first": "77bd0ea228f512b10c337dec58b34c46a047972f35d639a44127c5211eed7114", +"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_second": "aec71c55ced2a140405903f8aa6dbc377d658196e1c35a4129708924c22d85d0", +"TT_bitcoin-test_multisig_change.py::test_multisig_external_external": "ffc6a5589435c8d6595edc3c01fdbb5f218cfcfa9e4f484461c8c6f2e6ccd0b8", +"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_change": "7245d0b27f18b8203381d44db18cc5d76eb1748da3f360f00b41a172556b89a5", +"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_inputs": "356674ab3134260d92a826005fc315e715cb47354cc4acbb28f74ed02ff3986d", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-6-255-script_types3]": "5be6298cfb37a3127508cc32de570bdf5e82bde27664984126f9500cca675b91", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-script_types2]": "aa28c2664f48256b05816ab8aead59c0c2bec721433ac6cec3c35273d12f8bf3", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-3h-100h-4-255-script_types1]": "d4bfaa37ab70ade3537ffe8193507f6184aae3ce7d67a710ab9cdc4a262e2b4d", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-4-255-script_types0]": "d25486bfe91b014a4534db39ebd9fbd456ecf755a563aacb5be226b444336369", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-49-0-63-0-255-script_types4]": "61dfd2dc0fd2419cbc7ebfe0142d326d771ff2c78275ff90242b00204fb2a20c", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths0-address_index0]": "c2a53de5b54df5039b24903790751f47ce1a340a676c0dec4e486a78486e35c8", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths1-address_index1]": "497fa06f88ece89ff52d6031e415b7737194aced4038db25cfdcedc8a9db69ed", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths2-address_index2]": "531ccba662c56eb641a7ff06100c971b65504f9360ff188cbdbd88dbd714b1b4", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths3-address_index3]": "74db180a1dfd9fbefe73b6a420688f74d3bc865fcc9dbaa027cd8e21c65b3227", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths4-address_index4]": "426f6f28b3a0933b9f2ce3520ec1f45e3bb6103335cfa538291377d81335be5c", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths5-address_index5]": "4e89a8d2a5a9344608518e54592b136aea2b100709115e134b719c6514a1f0e2", +"TT_bitcoin-test_nonstandard_paths.py::test_getaddress_multisig[paths6-address_index6]": "6ae16b56318e29f1932553a9862beaac3a3cb003f94cd77303d98e2c2396c7a9", +"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-1195487518-6-255-script_types3]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-1195487518-script_types2]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-3h-100h-4-255-script_types1]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-4-255-script_types0]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_nonstandard_paths.py::test_getpublicnode[m-49-0-63-0-255-script_types4]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-1195487518-6-255-script_types3]": "f6f959364a2cca3fef3c0ae89588c791d6c639bc6de02c135be562067ecfae4f", +"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-1195487518-script_types2]": "e496bdafe977a0a98654c69947b69c6aea3df2dd922fd7553aec58b99dc94c54", +"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-3h-100h-4-255-script_types1]": "9fb4056e672489ee58d193a5486479cdcbeea2fb334b2d51c9a5bcf456eddc2f", +"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-4-255-script_types0]": "6d4fbe02ccb665d186eebe364c6465393d8ed5e942271451396d92d5257136e5", +"TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-49-0-63-0-255-script_types4]": "2454522837f9763f4b30040761bcf94c4db89aaac7bd1c1dfc01756f1cf39a96", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-6-255-script_types3]": "b0f7bf637e834689e64a4b8e288faaa449bfecbf92b244e33470d2bc89b3a3d8", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-script_types2]": "31f064cb05df23474213007fa822c0687efd49f85d989a036dd44163948cead0", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-3h-100h-4-255-script_types1]": "74632542743aa341a3388f87ba3cbbe31917b5e37f661a602f65f1c4dbee1b1b", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-4-255-script_types0]": "74632542743aa341a3388f87ba3cbbe31917b5e37f661a602f65f1c4dbee1b1b", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-49-0-63-0-255-script_types4]": "d7115a583472dc28e98732b462f7f77afad76869293a071705fed81cccc50558", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths0-address_index0]": "f61bd4c1f3e7d2774f51a79af8a251d8398ff0b810a4cc5b55195e592ae7a339", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths1-address_index1]": "f61bd4c1f3e7d2774f51a79af8a251d8398ff0b810a4cc5b55195e592ae7a339", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths2-address_index2]": "8aa8a735b1be15a44397835917a7aea331e8e92b633f63e7b82985e7df6ec099", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths3-address_index3]": "b31ce32faa93414694e3b823fd6816f95e29ac9a8ea0bd71d360df796cab6779", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths4-address_index4]": "f61bd4c1f3e7d2774f51a79af8a251d8398ff0b810a4cc5b55195e592ae7a339", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths5-address_index5]": "f61bd4c1f3e7d2774f51a79af8a251d8398ff0b810a4cc5b55195e592ae7a339", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths6-address_index6]": "f61bd4c1f3e7d2774f51a79af8a251d8398ff0b810a4cc5b55195e592ae7a339", +"TT_bitcoin-test_op_return.py::test_nonzero_opreturn": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_op_return.py::test_opreturn": "acaddb62bcb15c26e5961744a0bc6812b08060299144b814c52af4b6dd8e3950", +"TT_bitcoin-test_op_return.py::test_opreturn_address": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_peercoin.py::test_timestamp_included": "9dd3bb5e01d2b54b273e3888b10b7f373130fb1bdfb9d40ed687858c49f34934", +"TT_bitcoin-test_peercoin.py::test_timestamp_missing": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_peercoin.py::test_timestamp_missing_prevtx": "74a20c787ffdcbee7220c072ee9e592bce71779c96eef9619d770ac1d1fb1e47", +"TT_bitcoin-test_signmessage.py::test_signmessage[NFC message]": "556fc8527976dbc72dff38e382ad2b20956171e240c101a8458d20dac5d55dde", +"TT_bitcoin-test_signmessage.py::test_signmessage[NFKD message]": "556fc8527976dbc72dff38e382ad2b20956171e240c101a8458d20dac5d55dde", +"TT_bitcoin-test_signmessage.py::test_signmessage[bcash]": "61eb6e9c30f4fbf8cd710d8b0976a73914555fc7224e03a0bd8535bca3d2f664", +"TT_bitcoin-test_signmessage.py::test_signmessage[decred-empty]": "51bac8994489e6ff341f96588c80af3ab90b1dc434bb35a4a1953d20f3f60d9f", +"TT_bitcoin-test_signmessage.py::test_signmessage[decred]": "0bdb3c054a6fa08c4f4ec43f92ad1b9032a0e1e972fd53c7c6936c6303bfd53e", +"TT_bitcoin-test_signmessage.py::test_signmessage[grs-p2pkh]": "0d1e6791c90d831c9ff1c8750cb9239abbd2ca7882e81c5cbad3f22f9d64d64c", +"TT_bitcoin-test_signmessage.py::test_signmessage[grs-segwit-native]": "d6d5c57475fcd3af4f7e769748dd8373150ae864d5987730c021ef0fa1e0a3e7", +"TT_bitcoin-test_signmessage.py::test_signmessage[grs-segwit-p2sh]": "d59a9444b73f57e596bc3705ee5018075ea59d8b2fca4da9efa540485e78b100", +"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh long message]": "fba6647aebcf4cdb4fe65319eae209ffe4ae7255abd3c3aa057812d32ae8fc67", +"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh0]": "c06c585273716fd0813d4d682c2ba68f13d9e5fec0990657a0436340a9b41c3d", +"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh1]": "c06c585273716fd0813d4d682c2ba68f13d9e5fec0990657a0436340a9b41c3d", +"TT_bitcoin-test_signmessage.py::test_signmessage[p2pkh2]": "9b97c9f63bc2e706b6d7663e4352874a46ed427b54b7bb2dee3df07776bcfd92", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native long message]": "6a541738048f3092c189df62b057143059f5ddd07a98ecfa56444fc8f88bec26", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native0]": "f0548cf82489ff7dc39e2bf4c7db78a80e260165ed523962a5f9ae0145b6508f", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native1]": "f0548cf82489ff7dc39e2bf4c7db78a80e260165ed523962a5f9ae0145b6508f", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-native2]": "e3f8461d295be8c85299a97deab596835bd05dc47d94fe698f900f1da8920ae2", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh long message]": "7a25f222e322a0e91db9d61b4ff07b01b141f186f282e5813fb940a036556ba7", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh0]": "799518e8f30b064ba20e5a8a369e1c4c4200d33dac00ea3b3c35d234d633b2f6", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh1]": "799518e8f30b064ba20e5a8a369e1c4c4200d33dac00ea3b3c35d234d633b2f6", +"TT_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh2]": "acac553cd49013bb0ffc0328ee4129c5397ea3fe37d427a86c06024a8e753cf5", +"TT_bitcoin-test_signmessage.py::test_signmessage[t1 firmware path]": "2e1f28e5e774e6d458c784e1dae4102ebfce0e0140dc4636101af54560429d1b", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[long_words]": "0f7de2d2c449c8f236cdf1194b7e7de99e2bc6a0ac1996b6e522bd79d98a0173", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[newlines]": "741b21075122bbf815e81c57b1664daff4d1b04b8beb633d1ffe5bb377cf4fb0", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[no_spaces]": "cd6401e22a27e8dd4e72d41ca0c5841d36775c58a9a4511b857928a504c7e827", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[normal_text]": "e746269e5647e79a4fcdf82a50f2e1d517f648eb4041dca893986e1852aa04b8", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[single_line_over]": "096470117c8cbd8ce6b2202858493a8e249f5a90ea91a452aabac68270f5a8c0", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[utf_nospace]": "bce6c6defcd0e511251cad41d4a5bfaf32c9467299c0eb6392cf89f664cc50ed", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination[utf_text]": "a3f5268b14f98e3dd62c79f159c38697f60f92cec6701a7827815ac59cae5457", +"TT_bitcoin-test_signmessage.py::test_signmessage_pagination_trailing_newline": "c6690bed3e230670fe74487e31082d155cd58ef4992cf22ab27140d5c8573976", +"TT_bitcoin-test_signmessage.py::test_signmessage_path_warning": "174f5d68b4bc8ee2cf7c32a15614a0234bcefb9b212b4ec3558b5bceaed97dea", +"TT_bitcoin-test_signtx.py::test_attack_change_input_address": "e824e3b990202b1f196ce5df6622ccf73c2bad4b3c470dad6f7a547f208c00c4", +"TT_bitcoin-test_signtx.py::test_attack_change_outputs": "bd9d3b891f8d0609f30862739990988831c3b2b9311987578c287ed6001082c1", +"TT_bitcoin-test_signtx.py::test_attack_modify_change_address": "4231a7786597d9164f55311eabbb46bdb350407ea7cbeafba1e86d261a8f9d35", +"TT_bitcoin-test_signtx.py::test_change_on_main_chain_allowed": "4231a7786597d9164f55311eabbb46bdb350407ea7cbeafba1e86d261a8f9d35", +"TT_bitcoin-test_signtx.py::test_fee_high_hardfail": "94a95eae4591282c85436c0121894927493d0ea53f8cc3d22d057af8100c3e7a", +"TT_bitcoin-test_signtx.py::test_fee_high_warning": "694957b21513d07d40beffec954b67cdca350a51a6c865fc65275adf640591d8", +"TT_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.EXTERNAL]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.SPENDADDRESS]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOADDRESS]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOSCRIPTHASH]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx.py::test_lock_time[1-4294967295]": "27b4af27d1ff9d7b93cee8aa047c946bf67843c4ffd436be3267783639d7ad78", +"TT_bitcoin-test_signtx.py::test_lock_time[499999999-4294967294]": "3e7ad96c3e9e471ac37a1464207ef9d26e475c47f345711c89fb3a24a4eff135", +"TT_bitcoin-test_signtx.py::test_lock_time[500000000-4294967294]": "35bac00f3f2d18175a407e041c46873c8c69e912d81acb17a3bbc46d5d49ea0e", +"TT_bitcoin-test_signtx.py::test_lock_time_blockheight": "3e7ad96c3e9e471ac37a1464207ef9d26e475c47f345711c89fb3a24a4eff135", +"TT_bitcoin-test_signtx.py::test_lock_time_datetime[1985-11-05 00:53:20]": "35bac00f3f2d18175a407e041c46873c8c69e912d81acb17a3bbc46d5d49ea0e", +"TT_bitcoin-test_signtx.py::test_lock_time_datetime[2048-08-16 22:14:00]": "75e8dc4262eee2ffdd12ca8068eb84d281d3e5dbe6868ff431fc2c82388be9a3", +"TT_bitcoin-test_signtx.py::test_lots_of_change": "72bd82b179e393ede0ac95ce0c6fc7e8f72c7e2955d61fcd5a26c30e45164285", +"TT_bitcoin-test_signtx.py::test_lots_of_inputs": "31fd4fba62253197ca0a5c467a2c2cab8b5e64bc12f8c6f7c19cb9d2b6ff2416", +"TT_bitcoin-test_signtx.py::test_lots_of_outputs": "dbb0f1d4f971d08df6645cf57aba32ea935cbcba7519ec33b7ce7c684ffbe058", +"TT_bitcoin-test_signtx.py::test_not_enough_funds": "150eb51235ef975b915bb4df57cab59758edd77916bdd54518242d33d3c265b0", +"TT_bitcoin-test_signtx.py::test_not_enough_vouts": "975de3a4e21438df88f074c3a2787b1512205772ed3242383583d971a4844aa1", +"TT_bitcoin-test_signtx.py::test_one_one_fee": "2380e4c49412ecc160025d45aeef86d2a23774491eee816f2ad547277daf4259", +"TT_bitcoin-test_signtx.py::test_one_three_fee": "4bf37095f57072ed3a30f73973a1eaece79809ffa057175a5dcf6bc8a8d1608d", +"TT_bitcoin-test_signtx.py::test_one_two_fee": "4e6ae212e87e0ebad60c2abf57e1d618078c29cccece57329557d4c1b7cdfb90", +"TT_bitcoin-test_signtx.py::test_p2sh": "49592a4299f1a27bf6ec5b3e5bf321d61660077f4413160fb5fb5fd1d750fd2e", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[branch_id-13]": "ce180eb25629250b09ffc6fce3527a73954a959e4af0ee7f641b87c18d0d919b", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[expiry-9]": "ce180eb25629250b09ffc6fce3527a73954a959e4af0ee7f641b87c18d0d919b", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[extra_data-hello world]": "ce180eb25629250b09ffc6fce3527a73954a959e4af0ee7f641b87c18d0d919b", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[timestamp-42]": "ce180eb25629250b09ffc6fce3527a73954a959e4af0ee7f641b87c18d0d919b", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[version_group_id-69]": "ce180eb25629250b09ffc6fce3527a73954a959e4af0ee7f641b87c18d0d919b", +"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[branch_id-13]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[expiry-9]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[timestamp-42]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[version_group_id-69]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_signtx.py::test_spend_coinbase": "98fe848478e33f80144024f1b6841df92d3753fbf4d8aca50c8ed5fc077213a5", +"TT_bitcoin-test_signtx.py::test_testnet_big_amount": "4fcc963a111d8b929b2116b7e1000db5c099f6e1afce9d6d2c3e2fad6bfe89b5", +"TT_bitcoin-test_signtx.py::test_testnet_fee_high_warning": "9ef768fc8a6f4775fd9f58459382806e85571978137ec8ac604ebc9281cfaa6e", +"TT_bitcoin-test_signtx.py::test_testnet_one_two_fee": "4231a7786597d9164f55311eabbb46bdb350407ea7cbeafba1e86d261a8f9d35", +"TT_bitcoin-test_signtx.py::test_two_changes": "5f484ab834b7eb60b91e179f2bba529150bd2511306eafa6bc56363776143140", +"TT_bitcoin-test_signtx.py::test_two_two": "b3778d0d28076aa65a6017f45acf330f441d74446805a551fe904ec2d5dac75c", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.BITCOIN]": "2380e4c49412ecc160025d45aeef86d2a23774491eee816f2ad547277daf4259", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.MICROBITCOIN]": "979c162ba2972b537f7354eda0aafb5bc200ee62b80b451427cfcd56ccd3bebd", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.MILLIBITCOIN]": "d21ddafb1aac73782ac9a6db35ec63805689f10ff238a0666a887c50e5af356d", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[AmountUnit.SATOSHI]": "5ea47dad924591bf27b9eb854a5c21f72cc50f17193aea5cc6aa42a7093d29f6", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_btc[None]": "2380e4c49412ecc160025d45aeef86d2a23774491eee816f2ad547277daf4259", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.BITCOIN]": "c5afb6c67e32f43b73a4a7eebc42ca8c61458fe57ba89bf5ffc088c0f206a788", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.MICROBITCOIN]": "62847b44956a933344bcc4ab08740470b8f0646c5746972607aa32e46a0c4899", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.MILLIBITCOIN]": "4fa4b75b6851edea8438bddf4cc3ab748e252bba39e434b9396f3c5a88072375", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[AmountUnit.SATOSHI]": "97886683cedf4e527b2dec262841ae65c7d7422ded7d52c035cf8f96c3ceaf83", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx_testnet[None]": "c5afb6c67e32f43b73a4a7eebc42ca8c61458fe57ba89bf5ffc088c0f206a788", +"TT_bitcoin-test_signtx_external.py::test_p2pkh_presigned": "7880d4819d60c89e1c10ea1600a5c657f5cad61a4319354fc46685eb718a3fb8", +"TT_bitcoin-test_signtx_external.py::test_p2pkh_with_proof": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_signtx_external.py::test_p2tr_external_presigned": "96eaa174824676c5537ab97b0b909002be020e75947f3875c40938644fe36151", +"TT_bitcoin-test_signtx_external.py::test_p2tr_external_unverified": "626111015b273924c07769b8c792eb9a94a87fca6a965d3c4066184a2de933a0", +"TT_bitcoin-test_signtx_external.py::test_p2tr_with_proof": "d76a924413ef558610b2cedf9f29a586ee84cea011b935281510ad766240ef34", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_external_unverified": "54104e0de4749f7029f151913d5b1874318ac6533cc762c06f02b57f55dc3e8d", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_in_p2sh_presigned": "8b5a2b8b6daff7def4723865a8eec69b4a095e5bbe4b75662fd0e02ac78e0a31", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_in_p2sh_with_proof": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_presigned": "eb187e2511df84e55fb061fb4959611ed86c7b866b013f034dd37109512d8b8f", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_with_false_proof": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_with_proof": "72a8d5d7961f30f9107f20440ca4c9cfad7d91c24574b6a0018cda5b9e1f81f4", +"TT_bitcoin-test_signtx_external.py::test_p2wsh_external_presigned": "dabaf40e3cae8fc5ccff746ad9608012df6e19fb957477828419c37917dc43d8", +"TT_bitcoin-test_signtx_invalid_path.py::test_attack_path_segwit": "0e57e072ecbc80c5b2ccb937b0e43aab67fc769ca4e809df0c0b0e0d1dd7d89d", +"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail_asap": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_pass_forkid": "32240ccbfde5a0f73b366d9c40d48291c86b9d5e979c128ab77b830ea73bf487", +"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_prompt": "d434fce2a6a6401ff6fbd881510e58e6cff7bfcb8b13aea76d8506da9cd1c71b", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_inputs": "4e12afdccf8b5fc3056e2dcc9916b2fe85ce81e69dae63bc89da48def5003e5d", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_non_segwit_inputs": "17a32113f2018f3e90ed452fc9a8b48e3bad2051186b64813ef2f79d95a7c65b", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_inputs": "4e12afdccf8b5fc3056e2dcc9916b2fe85ce81e69dae63bc89da48def5003e5d", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_segwit_inputs": "d93c360934cd68565ed3d4b4fc1dc2ece457373abfc7e8b3fdc2c9fffb39431e", +"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_amount": "7380d505f1337aa60bc797f64fbca57f3e18be2a58ea8fd7ec593fe6d3543900", +"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "aa7b7fab6a62c8ff02d8842f932c91c979b9d1f99a890b059f213c51dbe48a22", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "3af62b57578c2a73b9b2f55fbdc91a677f3424f741795ffb2b6c29528379de05", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "f2d8f468cc7dcb58014330d28cb2e1c65b617b2914fb059ef5ff24d1ae7db0f4", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "2da408155a4aef4ebbd57c07d12b1f46cced535f09d23b62de25b41ef1cf743e", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0]": "654962f26902214852e20065afce05281f242767dca097bdcb4678abca170905", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out12]": "86d7b5299416538e855220da760013af3cb9022ac64715f1bd958cf9cd962270", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out1]": "65918e379605938becb70be6577371d1fe8a232bc62b00dfc97d8bf474af4686", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out2]": "0dc054923f54ce99d08720ce30ad0650a1f2402f9b31b55224a2a3366ff0275a", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request_details": "c98849210709ab17f3334de548906d872788cbf3f561a6dfe033236fd0621bfa", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[hello world]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[x]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[]": "ada0514b83246ef3af0b6d8bf8ee624fba41b6e428eb1e2928d57915920328c9", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[hello world]": "ada0514b83246ef3af0b6d8bf8ee624fba41b6e428eb1e2928d57915920328c9", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[x]": "ada0514b83246ef3af0b6d8bf8ee624fba41b6e428eb1e2928d57915920328c9", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "ada0514b83246ef3af0b6d8bf8ee624fba41b6e428eb1e2928d57915920328c9", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[]": "2122ab7d47fb9fd6e7be0fea79eff4433ca5479e05fd8ce26847c9940a2ed5c8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[hello world]": "2122ab7d47fb9fd6e7be0fea79eff4433ca5479e05fd8ce26847c9940a2ed5c8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[x]": "2122ab7d47fb9fd6e7be0fea79eff4433ca5479e05fd8ce26847c9940a2ed5c8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "2122ab7d47fb9fd6e7be0fea79eff4433ca5479e05fd8ce26847c9940a2ed5c8", +"TT_bitcoin-test_signtx_replacement.py::test_attack_fake_ext_input_amount": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_replacement.py::test_attack_fake_int_input_amount": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_replacement.py::test_attack_false_internal": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_replacement.py::test_attack_steal_change": "c9bf7211483b93e736106257e40e42826ff09ff9855c15d73136cc5ae5c89963", +"TT_bitcoin-test_signtx_replacement.py::test_p2pkh_fee_bump": "3d87432b1a3c7fec8bb9fea65c2974a6a362e69d336dce92f9d31efdbb14106f", +"TT_bitcoin-test_signtx_replacement.py::test_p2tr_fee_bump": "7224a39d9255f9a96d5378db1196a2e12ca701c7580e36da2e77a405131d0228", +"TT_bitcoin-test_signtx_replacement.py::test_p2tr_invalid_signature": "7224a39d9255f9a96d5378db1196a2e12ca701c7580e36da2e77a405131d0228", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_finalize": "0173d92946f34eb6d2f4aab9477695fc0f914732e50f18f71d86c30242fc2f58", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_in_p2sh_fee_bump_from_external": "47a92510f7f4c18d7340b6ebcbe3e4a5b60099dbd2085ccac72750b77d87ad27", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_in_p2sh_remove_change": "b39c9af3f24008588584b425f97744de5c4dd97cd92dbc31cf983cba713268f2", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_invalid_signature": "0173d92946f34eb6d2f4aab9477695fc0f914732e50f18f71d86c30242fc2f58", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_op_return_fee_bump": "cdc68be08f0ca091cec1a3132b98905b43f574edb1d74bd1a5f018ef96d13c93", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909659-90000-02483045022100aa1b91-c9b963ae": "ce5b348aa1d7fd99eb77ba5dcab2b76fd4606dcc05ff148e0d60c98ee04c7553", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909718-90000-024730440220753f5304-ecb983d1": "ce5b348aa1d7fd99eb77ba5dcab2b76fd4606dcc05ff148e0d60c98ee04c7553", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909800-89859-0248304502210097a42b-7a89e474": "ce5b348aa1d7fd99eb77ba5dcab2b76fd4606dcc05ff148e0d60c98ee04c7553", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909859-89800-02483045022100af3a87-80428fad": "9a8ffbdea9bafd49a136e75c32138146e118844ec842171f8d80a55bb903c5f6", +"TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909859-89859-02483045022100eb74ab-881c7bef": "ce5b348aa1d7fd99eb77ba5dcab2b76fd4606dcc05ff148e0d60c98ee04c7553", +"TT_bitcoin-test_signtx_replacement.py::test_tx_meld": "623f8c79e475501efa5d7729098185ff341e97d93b72c708fe8026b616ea8d4f", +"TT_bitcoin-test_signtx_segwit.py::test_attack_change_input_address": "cbf526eaf3a46eff9fc9bf6d4993da0cbcec6ef2451be84e830ed1b86c1a2f1d", +"TT_bitcoin-test_signtx_segwit.py::test_attack_mixed_inputs": "3b04c71f4bdc0fc3683e9237392837c31039e87ba87b53c9f6bf882b62cb1f83", +"TT_bitcoin-test_signtx_segwit.py::test_send_multisig_1": "1cf62512c5c12c4626ac58d845384f6eec9eba42bcc2c3e06cee33356b9d5810", +"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh": "7e483c1aa764b27f50352ccd372c575947490332500292083b31e73df94cfa44", +"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh_change": "44b732603bcc55e4ec7f044279c85ed3bfc7e96363dd89ab45d217e12fac12c8", +"TT_bitcoin-test_signtx_segwit.py::test_testnet_segwit_big_amount": "67094748ccd6147e38e41b88a3de4704da999e3bd08c05ca333f77e2d7d3b6b8", +"TT_bitcoin-test_signtx_segwit_native.py::test_multisig_mismatch_inputs_single": "63e68914640ba57119146cef4b2bbd73f5db22937574745503aa18398eb27732", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_both": "fd5f9b47992b0f9c5a60178c4f8b572ee685e8ed18fc9127bb24eb7cecdfbf3a", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_1": "3d877372d66e968d5cd797b84017cea3916392bdf3cf9a2b6f5e8bec9da20553", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_2": "82d4087218e7aaef385447e5e3a2156561be1eb85cf49c6fab53dbc13b1b580e", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_3_change": "f0823ceab384ba4836c2c2445e886eab81c3954b302b9a3ed8d23369d539a009", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_4_change": "62c70c0d7d47406d8d866aaed6b2c5ef7b689b00a6489af96af61599ea2e4468", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_native": "c5afb6c67e32f43b73a4a7eebc42ca8c61458fe57ba89bf5ffc088c0f206a788", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_native_change": "074b4124b4d0e7e652227f751a5de2ce7bdf6a640b4d3caccdbf6277d04f77ff", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh": "54e02335dc21ffb026fe1a900fc3804bfd2144eea6bc6d7c3aaaa49b387e34b2", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh_change": "3ffcc2ffc006e39ecbb72c358b913f3b5dd152d8bc17b5ddefeb0412a5c1915c", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_to_taproot": "59dd818e05e0e95b18dc681fdbcbc81d8f4436f9623e2417d7a85301ee74629a", +"TT_bitcoin-test_signtx_taproot.py::test_attack_script_type": "0b4ed17d3cb5e99aca283fb457dc2d56cc524d1d81c4b8de6e087b24776a83cb", +"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1pam775nxmvam4pfpqlm5q06k0y84e3-a257be51": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plllllllllllllllllllllllllllll-aaa668e3": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plycg5qvjtrp3qjf5f7zl382j9x6nr-5447628e": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1zlycg5qvjtrp3qjf5f7zl382j9x6nr-880d4a6b": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_bitcoin-test_signtx_taproot.py::test_send_mixed": "45fb801a90decc137843cb4c243f785948324437b29c642dcef6187bd80aaa30", +"TT_bitcoin-test_signtx_taproot.py::test_send_p2tr": "ea4910f434be5647cdf822ec0accd772a3395db89216df77c77d60a305e23daa", +"TT_bitcoin-test_signtx_taproot.py::test_send_two_with_change": "2cc375a79a621b132803410882882900c3f0f50fd2871d59ff33509c0dfe06f7", +"TT_bitcoin-test_verifymessage.py::test_message_grs": "f3f03cf2475116fa872386e8955ade6c3f04c62fb74d65a1b51a13a0f1576d92", +"TT_bitcoin-test_verifymessage.py::test_message_long": "8b98152a1cd1b0fa852c0338422cf90807e4f82bd3b54cbf47ad8c352fcefeaf", +"TT_bitcoin-test_verifymessage.py::test_message_testnet": "8e9ce89b716d2963db6c4ff88c0df2d08ab0af56c75706874a3314311f547097", +"TT_bitcoin-test_verifymessage.py::test_message_verify": "bc155aa05923dac4826a36cbd9510bcac2a87d15eac2231577340aa3be412964", +"TT_bitcoin-test_verifymessage.py::test_message_verify_bcash": "69e45a8f3d0f98cecbcbb192248630a4d5b03e49a91d23e9ac80a154f99761b2", +"TT_bitcoin-test_verifymessage.py::test_verify_bitcoind": "91ac683e032e69f0c17f1898eba26f57e8ad15ab542e4c438ded6cb177bdaba1", +"TT_bitcoin-test_verifymessage.py::test_verify_utf": "d5877e7256110a14a3ae906f59825cd3b821ca3ada436326db997a3a7e65e764", +"TT_bitcoin-test_verifymessage_segwit.py::test_message_long": "bbd524ea2b1aed699cb019e2e4063e6397b3dad777fad0159540d3afd6b41994", +"TT_bitcoin-test_verifymessage_segwit.py::test_message_testnet": "aab6f8389d256d373691d74c6ec73b62bf543f219f24a6883760caacfb8641d5", +"TT_bitcoin-test_verifymessage_segwit.py::test_message_verify": "d729d2f1bbad7a05ca34f328a70aa7884aba1ced5ab4d7b62f879121a76ad9b7", +"TT_bitcoin-test_verifymessage_segwit.py::test_verify_utf": "1748212d5e1c91afc5256e2e2381b18fd1833e3bdaec1e44f5180d8fffae50eb", +"TT_bitcoin-test_verifymessage_segwit_native.py::test_message_long": "1e70f210176353accf16bb40295939995d70baa38e3aa1e9b00545bd23c19f07", +"TT_bitcoin-test_verifymessage_segwit_native.py::test_message_testnet": "70ee99e4fc16c2d669ad1ce27e17fec92dabe158b30506eeef1d192c56d6dc6d", +"TT_bitcoin-test_verifymessage_segwit_native.py::test_message_verify": "940ad2deeeb12affff33e12a7cf837a6062263da499ff08b8266976ed74db808", +"TT_bitcoin-test_verifymessage_segwit_native.py::test_verify_utf": "ddbff6727344320cb0e8d1e6f5d2026560f1cdf08e258768514464942fb5d52c", +"TT_bitcoin-test_zcash.py::test_external_presigned": "cdb1416def8474959540b6312d77199ce7cd42ae2a2a44957eaaa977b8f21e23", +"TT_bitcoin-test_zcash.py::test_one_one_fee_sapling": "a0d22af15ba8cc2882e098890e202db7c85a4fbb392b46e6475ae9135850d593", +"TT_bitcoin-test_zcash.py::test_spend_old_versions": "af660776bdad00faf46832ed5afbeafa59bed2e427b7f28bba0e38742b511ef5", +"TT_bitcoin-test_zcash.py::test_v3_not_supported": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_bitcoin-test_zcash.py::test_version_group_id_missing": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[icarus-derivation]": "03c8936a3a8f4ed767e89794f19cccc176b43da97d0ac71b5c3b9eafbb7ae4bf", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[icarus-trezor-derivation]": "019baac3d411f4985cd72aef45a25cd155e67f3fc5fe52505d3caaa23441f0f7", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[ledger-derivation]": "3baf2435d46d88e95339e93d6b95e96ba90d90a503d386f65af04782cfa312f8", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters0-result0]": "291ee1275e8a1225bd246e4c4918c1eaf14869c39fb32b99d5164a327c29fcf9", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters1-result1]": "55addf5d4c14fea10867dc5a940f659c868dafde2db23c9dc0c2a8fe815efbe2", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters10-result10]": "66896debc4a0d5c7288e1289e433df904b24baf4bb92d1242cf99a77ae2612d3", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters11-result11]": "f13abee02c697ef600f9884f3dd1eb078c31a4719a55c9bfe1ac1ecd2393fcfd", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters12-result12]": "91d0e8dfa5382911865907c7a279a852781254d152cea586c1b329e2522d761a", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters13-result13]": "cfcebc1afc3ad3561be8ba84ee699dc742104e2cf278a266504f3257ac90b9f6", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters14-result14]": "e995775a74c53b8b35c5915500d7ce981b865a86326ab93331c504aec79d578e", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters15-result15]": "75862b6d819d4d3f598e65ad27416896c19462d15e78d3a884d0597175392bf1", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters16-result16]": "55ee893db0f657f79276d737d86e30ad2413d0afe5b45efb909816b7c336ad86", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters17-result17]": "540227b08b0773f6525dd862648f997cf217b3bda36023c5c315a959ac111a1f", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters18-result18]": "adc3c4b8976161001ea9d45807171135e7e257c10da71a718f1b867a8fbf0a6c", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters19-result19]": "cbe3d375845dcfa191d005c4622278d8486e6a0a98ff242c6e43defa9aebf285", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters2-result2]": "4ea5878ffd15b665960b788fdc29e290fc24ac9596823e249090f7c18309d25f", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters20-result20]": "6f530747230c88af3bc35a4b53d88d7c6db8fa6b23108d396f7960c77de42305", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters21-result21]": "486a5fff3e62508de37725a0298f28eb6afc87f5b71be55fd97fbe9f7a9a75a1", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters22-result22]": "1422aa9145a6a47771823a7580e1cbcbb677a8107693602c1b7e80f737cbd2e6", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters23-result23]": "591787d4b5c36a1e75f70294b72e388e9de6f404846efd20237403177cbd5c91", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters24-result24]": "8f5ce1de2dbc846d911a6e24a096605ae18c96cb0397b617aec6ffa694120c12", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters25-result25]": "466903fd1f2e5bd75ca6157d487989d2f5a9509ec7c733be0ff9f16d8ba3e908", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters26-result26]": "4b820a30739e1d40030327c9fd088eea81b76127d788be9fe957a9138b9b3e12", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters27-result27]": "ff1a54e9470d0c0dd69ff6ef3e4d2dc054016323e79549182641aeed13357493", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters28-result28]": "47c5f8e0d5b44fc44619719cd2764f6d600106919e48a686b592f83be0b0b888", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters29-result29]": "549beb4504457330e086ad3796579fb12677ad54bc0712308204bfbce92723eb", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters3-result3]": "d4eddd8d290422ed9c2c9448c78317a53741866b8220c87226e9671f27f7c874", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters30-result30]": "3abd83443ccdc03616cc793e1c4abaa2ee0c9acc372f74610c6dc5e275833015", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters31-result31]": "15cb4c2af35e891ec2694ef80a87a91bc653b21aa41ca329a8f48bcf42c9f2e8", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters32-result32]": "eb58786163fd2451aa6a9288008eb30d798c0fd7ee05f7118e04d277d93fa717", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters33-result33]": "8405d466fff17dc0b3204cb646fbabfd81229d401c1722534addd3ce9a7714b1", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters34-result34]": "aeca6e446de43582e277fc398afadb8df01d0c8cc54149d654704d3461032a62", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters35-result35]": "1e0f0d5d2219ced080f1af4bb662bee287ab6b13782cd45e6c85fb7b8c942197", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters36-result36]": "071ed52b20a47c96d908e1c12bae590ba4f693a84c605f4bb036d956aa76f3ae", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters4-result4]": "41e05bc68f3ef8a34c093b1286a3767b54b580532b079c3d0927f1e87c100819", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters5-result5]": "c35cd5fe5488b1b1a3af71e0329c43b82ff495588ca75bf7c09ab69076769e53", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters6-result6]": "a9f57ba855ac68b13b17c0bedf30f74e6e80bf99cef7856e10534e29dc1fa4e8", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters7-result7]": "c208195de4278ac32a886a8001ccba51a8a9370c34e0e913b17fcd9b0a85f23a", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters8-result8]": "df1d74b408aa6b5f6b149dbde46a77cab9a989d5dd31d9880708271a8e7811a8", +"TT_cardano-test_address_public_key.py::test_cardano_get_address[parameters9-result9]": "c44371db81c249fed80a50d855240b3edd2477609c2b7f7cd58a567e64e24589", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[icarus-derivation]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[icarus-trezor-derivation]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[ledger-derivation]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters0-result0]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters1-result1]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters10-result10]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters11-result11]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters12-result12]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters13-result13]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters14-result14]": "3fa672dea8dbc49444ba9decf85d59c939159c0fac3b187b95ad4390c2054b5d", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters15-result15]": "3fa672dea8dbc49444ba9decf85d59c939159c0fac3b187b95ad4390c2054b5d", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters16-result16]": "3fa672dea8dbc49444ba9decf85d59c939159c0fac3b187b95ad4390c2054b5d", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters2-result2]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters3-result3]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters4-result4]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters5-result5]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters6-result6]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters7-result7]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters8-result8]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_address_public_key.py::test_cardano_get_public_key[parameters9-result9]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_cardano-test_derivations.py::test_bad_session": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_cardano-test_derivations.py::test_derivation_irrelevant_on_slip39[CardanoDerivationType.ICA-3b0af713": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_cardano-test_derivations.py::test_derivation_irrelevant_on_slip39[CardanoDerivationType.ICARUS]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_cardano-test_derivations.py::test_derivation_irrelevant_on_slip39[CardanoDerivationType.LEDGER]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_cardano-test_derivations.py::test_ledger_available_always": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[all_script]": "7459a67c7c1665e42d48bb11921fea239fc935cde0090f34b0e40d9abf57f626", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[all_script_cont-aae1e6c3": "2e6eee88894e3cd1cac33268af99e29b7a082dc27b844f9c672cc712faa6bd59", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[all_script_cont-e4ca0ea5": "0b79522f1f67577b4b83d31c7c88ffa5961584718372ea4d5909e1bc520b11aa", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[any_script]": "340ff4c94d050c72bff512c1d20e376226e4d7ade0fe992fb47ce73ccf07f0fd", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[any_script_with-f2466a2e": "80b0021cc065d33e85574dc35a82337928d2933cf2810f424a32994e6ec0a1a1", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[invalid_before_script]": "e736852e0f72c67e56c47c20ec41916050c968adca74ac2dadfe74757b7e0b70", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[invalid_hereaft-d01d7292": "1b3a7b4969ce57194a8c6dc51828fc0fb66f60fe65274505503150952fb280e7", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[n_of_k_script]": "f1929b9fde0ad358db447bf031dd3f09860795833acdd6053db65abb8486aff2", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[n_of_k_script_c-d93f5fb0": "5c3bf2b0df5ad6806cfb29641da030c1679374d03e81d1ea5c2d4cf227640694", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[nested_script]": "f6251b64d14b74ba26514f26edf5719007cf1dcd4cba6c0015b7ebc974365052", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[nested_script_w-789238e6": "4c87feeef3bd5c587f84c092c366184ecf00ba3daa336ef4ea1b23cb6d52d049", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[pub_key_script]": "66faa4656c82b6a683d4357491cb434ed4dbd577100e7d9c26bf484008ea7966", +"TT_cardano-test_get_native_script_hash.py::test_cardano_get_native_script_hash[pub_key_script_-1579fe2a": "02185d2dea37bf08bb7151f66cca9f65ed5474fb8a971de4aa60acf25d795da1", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[byron_to_shelley_transfer]": "188eef7509c36010c3c58c099c8ec49ac8450c85ba5cadca67b066760bbebd40", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_with_change0]": "91e8ae74066286685cf2de1931ec9638ad6cf14208160a4426323897ab0dce3a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_with_change1]": "becbb35513ced81a828b678af5f226c35beeffe51d61e365eac477f9b896a20c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_with_multiple_inputs]": "ba292a4c0f897410b66c6feab06448b0cb93cc491a5d4a8b2e9cdd79afb8b0db", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_without_change0]": "ba292a4c0f897410b66c6feab06448b0cb93cc491a5d4a8b2e9cdd79afb8b0db", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mainnet_transaction_without_change1]": "e3291f23c89f4f251cac9cf8ce9dc17c5d3d7927e356c9ccfe61e89411544ad3", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mary_era_transaction_with_different_policies_-1dbb1bfb": "d8288a829fa6b1fa2fb38bec00b7c991e7350c1ef065db7673cec02d0fb2f7d8", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mary_era_transaction_with_multiasset_output]": "e3446c01eafe79347d60a91cd8129d69ecf33beba76fb59eb4d20409d39f588e", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[mary_era_transaction_with_no_ttl-validity_start]": "c24d7cbaa08619102089765df4096126880de66f08bf4984d04c352be27b51fe", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_a_required_signer]": "a8b34a04eefdbd052e4d0c7386c51ae20ddcb59a550084455c905288e535c7ee", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_most_elements_fille-29691455": "9606076e2aaa0ca77380263182d6f355068edc581071d308dc7b07de2114c986", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_output_datum_hash]": "94bde3c88012e151e471e25f00a762690c6a412211a7f97ad01607e2f4ada7b7", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_script_data_hash]": "3b821d3e8a479834f139b12ff4c76c0b2e58892e8192f23528ea13707d31da75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_deregistratio-1ab28f77": "8ef1846db9a941425ef68e222957c028270e14c36e91fa87d7613fe07428d5c0", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_deregistration]": "8ef1846db9a941425ef68e222957c028270e14c36e91fa87d7613fe07428d5c0", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_registration_-a144c34c": "4a06f9b4dc494dd3caa49d4d492255020e6b28dfdfc626bff8c703c68a3ca7a3", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_stake_registration_-bf5f9707": "9ef378e02843fdc36d74792c137223d1cd4ced0dd8fc5e5bf424ca8774858c71", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[multisig_transaction_with_token_minting]": "8ff260629e6a9afa3978d9c3be142b76c959558c83cb97d07507aad07c1fd918", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_a_required_signer]": "d6ab48ae6d3bc3c60e2e2b82064299cb83f3d3f8b6978d90df0cfce412cf098b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_both_output_formats]": "05108e05a6aac34edbd2e9595d781aab29930bca75780fc1f267b6add026c588", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_inline_datum,_refer-d1082570": "1a54c189b4e508575938c2df7be3c2f7fbdb375f79d418330a60fe307e1624a8", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_long_inline_datum,_-1f681aaa": "294959d91acc665ac26d2e77904143d8c112792058c2c16caf7452a10c83cffd", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_multiple_correctly_-6545455a": "3892d79e5ed0b106ddf4d4bfa4b9afce183342eca6ecc357bc463665d459a209", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_network_id_included-d9df16f9": "ba292a4c0f897410b66c6feab06448b0cb93cc491a5d4a8b2e9cdd79afb8b0db", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_output_datum_hash]": "1a54c189b4e508575938c2df7be3c2f7fbdb375f79d418330a60fe307e1624a8", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_output_datum_hash_a-84ad587a": "294959d91acc665ac26d2e77904143d8c112792058c2c16caf7452a10c83cffd", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_script_address_but_-b0da7209": "5c7e53108a0dfb5232f172dbc03189711fac589e565f54f8857eac653347a87c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_script_data_hash]": "d6ab48ae6d3bc3c60e2e2b82064299cb83f3d3f8b6978d90df0cfce412cf098b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[ordinary_transaction_with_token_minting]": "6c53c343301a886700096a9b6c64e09b942eeb37b124bc114bfa28aefba9f0ea", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_an_ordinary_input]": "94df56fc6243965daa5aea28ec0edc7a615595a900ec1fc0a331dfce904706bd", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_base_address_device-o-a33e6741": "5111124a613ec8f61cd740161f9e45757d2675a64c9d3f94b8c6d44be3b8de3c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_base_address_device-o-a6481374": "e2234afcd060702070f5909ce7595e514f37f9cdc814919dd0782125f0f1f843", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_base_key_script_addre-d3366a63": "db34db158c0c01ceb88b9d5ea71e6d70e670c60a7a45e722b39d8ed1dc1e7090", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_device-owned_collater-8f38b4d7": "b1e8d3c710989d60762e27bb46c012ab1af79c1d2b0e649bd4233e51f0d57af3", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_external_collateral_return]": "93ea410daa92597a05022069b9d416e1eddd3a6300b3284ba5e57f41333144f1", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_output_datum_hash]": "1d2d3de59286bb77f70b5a9313aa7af13a09c5b08ee1d6da1c5ebf74edd9d438", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_reference_input]": "ec8bc89995c24531027b1478564e49cfbffddcab7125558586db7e47da3b6a78", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_credentials_giv-6a67c1eb": "dda815b29a0a87e1e08ebe214a80ac29f0c998af6e5cce22ac3f4d0efe7f2d0b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_credentials_giv-72ef969e": "ebf52b1e1351dd4ee85113a4e5fe2b42ece0b608c662ad43fe35df5dbe72a6f4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_deregistration]": "e2b7926c9b447eddc2ea2d462dc9482a99e328f099b49a5c5b1dfd91e9ee1da2", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_deregistration_-78f5c748": "ecabd699aefb7a0e7a2d9f2ca21c147dc2feb6e3fa27e83890df2b65d696ff50", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_registration_an-4da9385a": "692a69e55fc390b28af7e2f3c44b166f23bd0d57fa33c9511e0d64cb260ee932", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_stake_registration_ce-46b0a250": "1edcfa1d5b8ccb45f4be3316dc1c76bc81d1e83582d1b09df66e22f2a090b463", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_token_minting]": "fe075a6f16aa3918f6ed8132712117a3d21d15fa5552f8a3d1c77b70b7a591f4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_total_collateral]": "c25b1639299856990ff0f7ead00845e78fda6132529fb220512d6b8c1d8832c1", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_total_collateral_and_-3f0b305a": "dad53e6e1a3002c87e4a1d2838c7c65ea8c2cdad489529ef0ef0c67a73b61dd1", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_with_total_collateral_and_-c92d773b": "c23fffc50fd75c5d49354fd943b461a8c7e298c9b3f7dd03d9490319c58b7595", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[plutus_transaction_without_script_data_hash_a-9590827f": "205fb7d871cc822c64b3d3a1c2488517fc5b22ba223c60485877d6fd5a21ac7f", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_certificate]": "4a8cc52d8d68ed9fe70bfb9efd06d2cd34cb59da20d39c8f91d3aaa689740e2c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_certificate_wi-336f4a44": "4a8cc52d8d68ed9fe70bfb9efd06d2cd34cb59da20d39c8f91d3aaa689740e2c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_certificate_wi-d3427614": "41a37d336ca8a32a9aedf5688f556f28c93d245605638301bd610b93b860cb8a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[sample_stake_pool_registration_with_zero_margin]": "6d67a6125356cf941453f49594d3a6bf94fc7100860030228c2f268113202f39", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_plutus_transaction]": "f663d919d32394f1923c2860152ae44693919ab1b24cd8f5118d23abcc30a493", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_plutus_transaction_with_additional_wit-36ba8ce8": "f279612e5f20d3c82493af70e3dd6529343944914a635384ddd4d270540ab29b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_plutus_transaction_with_required_signers]": "5ce5df4c6eff9cd8bd56fe98ebbbc234175c0b3624e7bd68e7818bcebe9111a6", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_address_change_o-0c37e6dc": "125317b3d0af07185c0d6c0a5930010064dcfe5d44aeffdbc532bf616ff329d6", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_address_change_o-7f1d12f6": "f14cd195550824e0832a80bfc3b2fc63080c80299fb4dc62d97f1a0412d4ce48", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_address_change_output]": "d6ab48ae6d3bc3c60e2e2b82064299cb83f3d3f8b6978d90df0cfce412cf098b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_base_script_address_a-56fc16f7": "1d22a93b050515486d2ebc537542e2cc34e8729008f23d0cbc6168fc8a8d7194", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_enterprise_address_ch-15518a4c": "8baea90e46a5426e758836bc758dab5b307fb487995f44b4c28438e61ed735d1", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[simple_transaction_with_pointer_address_change_output]": "0b3c3f8c07a819368327cb2110f14227b241eea85a72e146a4be4bd6f2b2ab48", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[stake_pool_registration_certificate_with_no_p-0bbad967": "0083cad46596fa315ba99947c9c5fcf26cd5c1e92076b6869260aaf9d940c8a8", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[stake_pool_registration_on_testnet]": "27ce521b869d3c43526d9d8e61da764925886075905a63a6d97baf797d9c97e5", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[testnet_transaction0]": "891b2cdd4b706c9f6201446b37af914345a5caa5607be369fb3c515657f074eb", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[testnet_transaction1]": "429aef4e9b1067e7b744976aad5dd531e3ea476c8568add534f144dcd3e52af6", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_auxiliary_data_hash]": "d6ab48ae6d3bc3c60e2e2b82064299cb83f3d3f8b6978d90df0cfce412cf098b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_base_address_change_output_p-3c7243e1": "a228c85d7e76b3f8a170cb77efc5c8d48f308f2b7daec110ee76e36a599c8c1a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_base_address_change_output_s-20438873": "552f53255e4ef69e6fa0bc0891c3feb7cae80aafd3cbf1d45ce74490a1fbf46a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_cip15_governance_registration]": "0fe447a86b16c7e070ae00c9a1d5bad00aeadd76f034bace01bc59ad143124c5", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_cip36_governance_registratio-35e04232": "a9beeee6c8a584e7bd38b98f3f704ca568e11e716637103508ad1a7d75a5fb64", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_cip36_governance_registratio-f00c1b65": "ab05e4b9bef26584e5102ce2206eb8b544d62d78ba09ee39598d14d64e7c86e2", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_everything_set_except_pool_r-1e1ef130": "29eb615e09f7b89d17127cedcff5b58b9ecbf9e9357b6f1d1ebc9505157e05a3", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_deregistration]": "d4102725558cc9f7791003369115bdac17675126d65f0517e279f607a0f33689", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_deregistration_and_withdrawal]": "d4102725558cc9f7791003369115bdac17675126d65f0517e279f607a0f33689", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_deregistration_with_ac-9ca046f0": "917eebecd2b7f21f79c4aae872a770b3ec5598e96fa2c47defdddf0483462986", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_registration_and_stake-3fdfc583": "6741a5390ca91842a69d7571bb8f0a516cfedca6b18d25a45fa077244969d3cd", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_registration_certifica-e7bd462a": "0f812acd9d678941af6e13d0b5b12a7e9b638eaa964f1d433494ef64fb142103", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_stake_registration_certificate]": "646a1a06d5ec1bc5abcdc4d7762bdcfd2a1d8fb1acdc83d12eb3ccccc74de075", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_ttl_equal_to_0]": "575921a244b521829466a5e4fe204e37c92b81d117b8584579f800be8a81ab09", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx[transaction_with_validity_interval_start_equal_to_0]": "22088c8fab812673e2085ff6a408702a84bc2a4416f8effbf230b114839f91f8", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[1854_change_output_path_in_ordinary_tr-805f9bd0": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[1854_input_path_in_ordinary_transaction]": "ba292a4c0f897410b66c6feab06448b0cb93cc491a5d4a8b2e9cdd79afb8b0db", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[additional_witness_requests_in_ordinar-9c4f94c0": "ba292a4c0f897410b66c6feab06448b0cb93cc491a5d4a8b2e9cdd79afb8b0db", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[all_tx_inputs_must_be_external_(without_path)]": "e4a3a428b814714cc84fc953b227c2356a7d621af0a43c7514046ac47f8ce36d", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[asset_names_in_mint_token_group_in_wrong_order]": "b8ae5cc40176d1f273ffdbdac6aaa37cb688f24b032ca72bc5015fdbb4adeedd", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[asset_names_in_multiasset_token_group_-7c1351bc": "7f947fcab81a9f6d565024cac7ac55cec729a8742316a22c226c3b018c49c91a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[auxiliary_data_hash_has_incorrect_length]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[both_datum_hash_and_inline_datum_present]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[byron_to_shelley_transfer_input_accoun-863fee7d": "188eef7509c36010c3c58c099c8ec49ac8450c85ba5cadca67b066760bbebd40", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[byron_to_shelley_transfer_output_accou-5a99fb35": "c24d7cbaa08619102089765df4096126880de66f08bf4984d04c352be27b51fe", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_both_path_and_key_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_both_path_and_script_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_invalid_pool_size]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_key_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_multisig_path]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_non_staking_path]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[certificate_has_script_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_and_stake_deregistration-e17db500": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_and_withdrawal_account_mismatch]": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_path_larger_than_100]": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_staking_path_larger_than_100]": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[change_output_with_script_in_payment_part]": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_input_is_present]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_input_prev_hash_has_incorre-99d2dc0e": "48286c686ef00f378b3f7db127f3862ccff1733cff9c3741bd77422ffc9090f9", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_return_is_present]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_return_with_datum_hash]": "6e581e785c239b77cffdb5a0e0b3e3c6415e9deb6ceae1cc4bd560feb769d3ce", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[collateral_return_with_script_address]": "6e581e785c239b77cffdb5a0e0b3e3c6415e9deb6ceae1cc4bd560feb769d3ce", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[contains_a_different_certificate]": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[contains_multiple_pool_registration_ce-3000d4f0": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[contains_withdrawal]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[fee_is_too_high]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[inline_datum_present_in_output_with_le-43c025ef": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_and_change_output_account_mismatch]": "82b7b1cd3d73b14ca246d39054bfc70e61d2c54247478501194bd1072f0cd967", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_and_stake_deregistration_certifi-b3383de2": "487b529705e33f41bcedc889937a1a5b8d3465223e40f65d114813816de405a2", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_and_withdrawal_account_mismatch]": "d6ab48ae6d3bc3c60e2e2b82064299cb83f3d3f8b6978d90df0cfce412cf098b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[input_prev_hash_has_incorrect_length]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[invalid_pool_id]": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[mainnet_protocol_magic_with_testnet_network_id]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[mainnet_transaction_with_testnet_output]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[margin_higher_than_1]": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[missing_owner_with_path]": "f588f84b3e2cde9648c15538842defbb3b594eb9424b8422f625399bce94dfb2", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_1852_multisi-b7679330": "45a2917990e8c9d6d5725fd887846c8132ad29af2da5673a2cfdb4cfb165fadc", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_a_collateral_input]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_collateral_return]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_long_token_m-9fb3cfe5": "1d915d4fc18a83a7825d984f527c05caa58664cc471e526d5e0cd818497fc9a8", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_output_conta-e3b36436": "9da234f065875b09ce4f53210adcaf6566dd1e16989aec071a26a962502d09d9", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_reference_input]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_repeated_withdrawal]": "adc7dadbb7bd6039bf3ed1407286600db1efd989c2bf4348fe9ea76b99a017d4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_delega-19d1722c": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_delega-394991f1": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_deregi-351ce869": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_deregi-43da91d4": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_regist-456f1292": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_stake_regist-84b1254e": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_total_collateral]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_withdrawal_c-9f7e1700": "adc7dadbb7bd6039bf3ed1407286600db1efd989c2bf4348fe9ea76b99a017d4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_withdrawal_c-e98b1f5c": "adc7dadbb7bd6039bf3ed1407286600db1efd989c2bf4348fe9ea76b99a017d4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_with_wthdrawal_ad-3291ee9e": "adc7dadbb7bd6039bf3ed1407286600db1efd989c2bf4348fe9ea76b99a017d4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[multisig_transaction_without_minting_b-da5ba399": "45a2917990e8c9d6d5725fd887846c8132ad29af2da5673a2cfdb4cfb165fadc", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[ordinary_transaction_with_long_token_m-350c65f4": "62fbf0e80fcf3254e3733736a42327beca183e7e48e59328a0c45750452aab7f", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[ordinary_transaction_with_token_mintin-bc56f145": "5b4f0e9e84c5657cc9594a88f436161be5d5c28f61f8c916ef24b86d6cc2bf01", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[ordinary_transaction_without_token_min-a128d577": "5cc3d2b0c837347bf09fd6ff52b6bd68d7f90d6cc946abf43aa7bd5daad3a3e4", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_has_invalid_crc]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_a_valid_cbor_but_inv-ea3da215": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_invalid_cbor]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_too_long]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_address_is_too_short]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_datum_hash_has_incorrect_length]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_has_both_address_and_address_pa-2efc280f": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_total_is_too_high]": "14aba21afd9302e5c27108ad9689ee2340d888f5192d57df47dd91b7cb75d530", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[output_with_reward_address]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[plutus_transaction_with_output_contain-74465253": "42c9cfa1556939e73edee5beea6278bacfcd016c4a9b456cdd7072b759d7cc58", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[policyids_in_mint_in_wrong_order]": "acefd4c3e9b550e8c2b179d26a7db5cf79f5d92417b5f808d98c8973cf3f4a30", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[policyids_in_multiasset_output_in_wrong_order]": "a8eb906c83f56ee26f2fd22aec6e70ab2dc0ebe8a03142a858db4641042efa78", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[pool_reward_address_belongs_to_differe-e79b6855": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[pool_reward_address_is_a_base_address]": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[reference_input_is_present]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_asset_name_in_mint_token_group]": "cdf43a009c0011f45044702d6cec205f07caed817af239e88bd90463ca333605", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_asset_name_in_multiasset_token_group]": "3d34c84691417e5692076a529ec3348f4840e50034858d5d088ea4ed50d0eb17", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_policyid_in_mint]": "2912590b403669ee62e723e22063941c4cccf8195fce737eedbcd6fa7daa11da", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[repeated_policyid_in_multiasset_output]": "5d09d8170a4bc5d8708a9c70f6eeb40a2451555a6f1b71f9e3db6a5a5ab8b88b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[required_signer_with_both_key_path_and-7d9a3c59": "6e581e785c239b77cffdb5a0e0b3e3c6415e9deb6ceae1cc4bd560feb769d3ce", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-02b129f8": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-11c8b442": "4a8cc52d8d68ed9fe70bfb9efd06d2cd34cb59da20d39c8f91d3aaa689740e2c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-2d1899d5": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-3f8170f6": "4a8cc52d8d68ed9fe70bfb9efd06d2cd34cb59da20d39c8f91d3aaa689740e2c", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-60961d51": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-790fc948": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-883e81d5": "0ba5ccf7f5fd6d0e6a8c61595865b0e64081ecc9d3a9fc2eac54e5ff0f311e4b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-9ae6620c": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-d0eba163": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-e7a533e7": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-e908b1a8": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[sample_stake_pool_registration_certifi-f9976ae8": "a4b2f4f75a52fb6e97f51d0992bcb0b400088fdb89ab3b857cacbf062ddaaf75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[script_data_hash_has_incorrect_length]": "c0ccfc3b0f1588854c53d158f3f516699ae8507ecccaea2fad8d25fa082a4e05", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[shelley_mainnet_transaction_with_testn-af110e3e": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[shelley_testnet_transaction_with_mainn-ba78ab8f": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[stake_deregistration_account_larger_than_100]": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[stake_deregistration_certificate_and_w-003a1023": "d250e72aa3caab863c5adfd00af8dcd15db1ba3c05df9dbd3dedc5bac12e957e", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[testnet_protocol_magic_with_mainnet_network_id]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[testnet_transaction_with_mainnet_output]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[total_collateral_is_present]": "c0c0351cb3d8514998f544d81f3d6c0e271a4d32d38307b7fad6ded83a0cd53b", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[transaction_with_both_auxiliary_data_b-d83df998": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[transaction_with_both_voting_public_ke-0ded7777": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[transaction_with_governance_registrati-efb78b43": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[two_owners_with_path]": "424bf0af2e52bc9b5eedd0cf59550237c8ac0012110a3253c399484580bd9119", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[unsupported_address_type]": "3513bbb3ad53ce7c1806045bb5b78d6e739810b54d388f25bd83e23cfdd80d26", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[with_multisig_transaction_signing_mode]": "f7d35e15f8ca8062f555432ee9db3f5a2db5524c62ad519d9e825184aa690869", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[with_ordinary_transaction_signing_mode]": "331d31fee1e3955917895afc68b3d107c645f44b4b36e5b3fb1aeea915621a4a", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[with_plutus_transaction_signing_mode]": "7daf71c4f99a93ef63fbb39c047c8c4cdda95f8074f71eb71da7f9c17b2efdd3", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_amount_is_too_large]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_contains_both_path_and_key_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_contains_both_path_and_script_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_key_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_multisig_path]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_non_staking_path]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_failed[withdrawal_has_script_hash]": "49ad864d40844af09c325a960618aa7dcae5517bb94b066c9c9cd2a411d35827", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[mainnet_transaction_without_change]": "5f4d6bb6ec6df13a47f280dc7d5293e9cd06c49dbb80fcc8074de976bc54e74e", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[multisig_transaction_with_a_requ-c2fba589": "3cdbec9976dc43f4179475613bdb16cdd693815e615c630ad8116b0c323e4a75", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[ordinary_transaction_with_a_requ-9728607e": "3db4b339bd53f6ca87e063ab7f451f83964419d5a8591310287ca8b69535a505", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[ordinary_transaction_with_long_i-708443f3": "07c8d3798fe8b3186d2e8db4019ad2e79961653bfa19a12d755137d2529c466e", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[ordinary_transaction_with_output-9ba7352d": "051d37fe26c2c6f8c4cdbb1990ebff1c2b49c6514438fd614373a5c2b3191830", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[plutus_transaction_with_reference_input]": "954e125f5913d6c51a8d3b0a59874552f94c8d09c02472a27430e69b03389c47", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[plutus_transaction_with_total_co-e846c221": "a264d945b72cd2903080f2b8f1ccdf2a625359ec6763d2184e6467cb90a68ad9", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[transaction_with_cip36_governanc-36bf9253": "795ee65dcbf831c9d3ca410c7e91ce865f3f83806743a2717b42dba2d5fc98a7", +"TT_cardano-test_sign_tx.py::test_cardano_sign_tx_show_details[transaction_with_stake_deregistr-6e84da2f": "22cf5659ef4c0bfbd7bc9706ef4e8b827af29e4efec430612c857d0f31ca9e8a", +"TT_eos-test_get_public_key.py::test_eos_get_public_key": "71a68eaf612d15428294290c65ef389e2887025a15280c026241b1ed349d962b", +"TT_eos-test_signtx.py::test_eos_signtx_buyram": "c8a4fe0ab7bff9c3f50896d90fd77656ac3ebaa9428917cc3dd30ebe8d320280", +"TT_eos-test_signtx.py::test_eos_signtx_buyrambytes": "92578e35fed5b308cf92ad2797c99299f8a3203bc3e0fd7beaead878dad63116", +"TT_eos-test_signtx.py::test_eos_signtx_delegate": "f2c46d0eaaca4c21dba9fffd77848311b925dd995a273311edec2288046e4550", +"TT_eos-test_signtx.py::test_eos_signtx_deleteauth": "3ce6ec645cc78f81b8d4c8ed1f0660b600c4087c7e5b471628adb7908cee4e46", +"TT_eos-test_signtx.py::test_eos_signtx_linkauth": "2368aea2fd630895cce3ffd7d1f9888e73ba1d90c8a92fde5ef5e5c215ea6d21", +"TT_eos-test_signtx.py::test_eos_signtx_newaccount": "b3d346c3e62527c6167f637dd02ddf89698c3b61de972ede9eeefc241318851e", +"TT_eos-test_signtx.py::test_eos_signtx_refund": "ed6481cfaf3fb43632f986b9b5ceac2b8734c243651e0d70dda98e483a125f0d", +"TT_eos-test_signtx.py::test_eos_signtx_sellram": "228869c816dd30ae9a84eb7459ef1f2ed48b9dab0752f282f4a95299d18231fa", +"TT_eos-test_signtx.py::test_eos_signtx_setcontract": "55465137d0f59a665f40b301ce0202e7697b05722ad6091052650ed32b79946c", +"TT_eos-test_signtx.py::test_eos_signtx_transfer_token": "9efd1d007ab7402216077310cb9786f2ebd222a60b38254f4543aad4a0915f50", +"TT_eos-test_signtx.py::test_eos_signtx_undelegate": "5cc5c506ca43b2d619a39442f53bc726848da8427cb41e2c1266a887d8cb087c", +"TT_eos-test_signtx.py::test_eos_signtx_unknown": "bac1235b2cdab26f48e7ca8e51ae2df3618989e9786ba8be4db3be322e7c9ad6", +"TT_eos-test_signtx.py::test_eos_signtx_unlinkauth": "89bb3431325fdf9e97ed248dff61e667babf21935b470636bb80a025f5136805", +"TT_eos-test_signtx.py::test_eos_signtx_updateauth": "1e66e42f909d9939f624d97f3f5e0757e2ed4cea30ef96f70fa0f9d3579f97cd", +"TT_eos-test_signtx.py::test_eos_signtx_vote": "fc09f1145c1fad24fff477c2805b29c4710358d79064e5bc1bc496ae0545ca47", +"TT_eos-test_signtx.py::test_eos_signtx_vote_proxy": "2eee4c4465de4fef5452a8e8c0380d03db31bba90dc8fd08050d2ba3433b688f", +"TT_ethereum-test_getaddress.py::test_getaddress[ETC]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[GoChain]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[Ledger Live legacy path]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[Wanchain]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[parameters0-result0]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[parameters1-result1]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[parameters2-result2]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getaddress.py::test_getaddress[parameters3-result3]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[Ledger Live legacy path]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[parameters0-result0]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[parameters1-result1]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_getpublickey.py::test_ethereum_getpublickey[parameters2-result2]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[array_of_structs]": "b5ff3ce25b5dcf5e826a536faccaedaa65b45f5752a707205e46e64552ef5b6c", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[bare_minimum]": "46575ba64e75052366c76e4238df1fb9915fed53e6f5f753801fed130ec83986", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[basic_data]": "b7ee55777e5da489fd1639e8dfe88032f7a17b1def4487d65434dede3f4c552b", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[complex_data]": "1689d3d0b3546e8bed33141d3b0a54092c51af97a5c157d28180c3b4e8d993ac", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[full_domain_empty_message]": "2e5c8edd7676a419a730084e093a1e3b8ec5eb91bb849e4eb0415b4c18b1c097", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[injective_testcase]": "c9722fd2710293ada6965f56ccf0757418eaa1dad9dc60090f40d56ffd6748e5", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[struct_list_non_v4]": "b7ee55777e5da489fd1639e8dfe88032f7a17b1def4487d65434dede3f4c552b", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[struct_list_v4]": "b7ee55777e5da489fd1639e8dfe88032f7a17b1def4487d65434dede3f4c552b", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data[structs_arrays_v4]": "b7ee55777e5da489fd1639e8dfe88032f7a17b1def4487d65434dede3f4c552b", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data_cancel": "16fc5dc55d8e305f35433fd41ee92168911c4599adf6ed9d9fbfc034bd1ab0c3", +"TT_ethereum-test_sign_typed_data.py::test_ethereum_sign_typed_data_show_more_button": "9add7ab289e43ac4fc7a4e5834f04062e3dc6b1db0f5541cab0aeb51003d5d91", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters0-result0]": "f9f96491963873d8e81a87ac5ceda8ce4ec34c21d67498ee26f8144062c11f94", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters1-result1]": "8d13d018772a64ee4ed36569b2438c28ed2b88db56d2f32e120ef67bf7c8fbfb", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters2-result2]": "342c1da263e0966121cd24f1c0b4f4c505070a06002c9e7caba944356a14b866", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters3-result3]": "04be0dec2a59b139ee9011ccd19dfb0566c4014890e8fff43815bda4f1023d53", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters4-result4]": "f4f973f6f8da77b73455e1f871abc070c12e111ffa90a1c764309f83fcc91ca1", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters5-result5]": "f28d188a8e2cfe26be4e2d3df442d73d2e3b640d45067548ed5e620310aeb997", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters6-result6]": "ad35d08047be2ba2920d164ec91884960c76b7bb9b455867bc623ea2c00a79a3", +"TT_ethereum-test_sign_verify_message.py::test_signmessage[parameters7-result7]": "02d7c9cdc010d4c0e4aed02a6d1408c7d38ecf8a0fce6080b98922cfe780c8ad", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters0-result0]": "230659914fa3e6641b50446729d1fe0332e3a63151df527e43a35e67b5b38357", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters1-result1]": "ec031250a394d7e57fffd0142c6d3a547f6ff56b611e9799a02d60f81927d46b", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters2-result2]": "67863902b9b1ec9c48ab78dc3e5c46c9d5a3cc47f17f2e7a188ab592d5bd15a6", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters3-result3]": "7a7f55641bdbbce8998e4c88e81148785b03b18724b44e00b25d103035af24e7", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters4-result4]": "5a6740087f3cc1f030d319ac99fbf29facc163463dfe54776a722c4581293223", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters5-result5]": "d752e2f8e18f3cce6bc46ea6412a73b39369eb74c8c82d1271254670326a9de8", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters6-result6]": "cd6d1d2248fafe2c8fae7e725b238a5df919d3bbeab4efd32f4b308d3e557748", +"TT_ethereum-test_sign_verify_message.py::test_verify[parameters7-result7]": "ae8aa280f828b5c5e316137c1241e3ec106679d561602f5405edbdc76b17c3d4", +"TT_ethereum-test_sign_verify_message.py::test_verify_invalid": "230659914fa3e6641b50446729d1fe0332e3a63151df527e43a35e67b5b38357", +"TT_ethereum-test_signtx.py::test_data_streaming": "84d07e5fbd8513fafd9cbffd39feabac5523c8b5ca5ebddfba6e4fa3cc2c6978", +"TT_ethereum-test_signtx.py::test_sanity_checks": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_ethereum-test_signtx.py::test_sanity_checks_eip1559": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_ethereum-test_signtx.py::test_signtx[Auxilium]": "62cbdadd93e898818bcdbe5047a4fd48b153edd065968646be07bd023cf3fff3", +"TT_ethereum-test_signtx.py::test_signtx[ETC]": "291f7da2ea3222fa2a5b853966887b2cec9d2f4f321f063cbb658a93cbfb7f10", +"TT_ethereum-test_signtx.py::test_signtx[Ethereum]": "036524cbf22512cdbb00bb0102fd7cbd57b56f6d97b23385c42e15e6bb653b29", +"TT_ethereum-test_signtx.py::test_signtx[Ledger Live legacy path0]": "1b92abd19818298d8508cd88c9c1b442c0b86e54fa26cd51bde71fe4c6c1f404", +"TT_ethereum-test_signtx.py::test_signtx[Ledger Live legacy path1]": "036524cbf22512cdbb00bb0102fd7cbd57b56f6d97b23385c42e15e6bb653b29", +"TT_ethereum-test_signtx.py::test_signtx[Palm]": "8c2b7f9d6d4016313cd657dfab5f75e5c3366af0df472d111af67a34e9b27e1d", +"TT_ethereum-test_signtx.py::test_signtx[Pirl]": "128004c79c9b280f0f1c96a5e10bb313481ed9db68e47e29523616b25df8596e", +"TT_ethereum-test_signtx.py::test_signtx[Rinkeby]": "0e0263a6caa77120193ecad706591425369cac2db978a931a4abef3b96951415", +"TT_ethereum-test_signtx.py::test_signtx[Ropsten]": "f7ceb13357372af4df9b65e25e6bf4e83c68b1c8b489420375cab5b427eec176", +"TT_ethereum-test_signtx.py::test_signtx[Unknown_chain_id_eth_path]": "995d4b59ef034269543ecf4316e83499814311b982afbfc4e347b238187252d2", +"TT_ethereum-test_signtx.py::test_signtx[Unknown_chain_id_testnet_path]": "995d4b59ef034269543ecf4316e83499814311b982afbfc4e347b238187252d2", +"TT_ethereum-test_signtx.py::test_signtx[data_1]": "33d228fd7c3e4c4b7a003ebbcd5223a4208f2ac18bf78109716f794454d2a4fc", +"TT_ethereum-test_signtx.py::test_signtx[data_2_bigdata]": "245cf8018614ebb858416b18bddc172f4b37b2b4bd1bec6bd7b787073437bdb3", +"TT_ethereum-test_signtx.py::test_signtx[known_erc20_token]": "c9e6d2e96e6a0909eb584a76196931c9f9605dc5c28842f6a0fb506acdc70e2e", +"TT_ethereum-test_signtx.py::test_signtx[max_chain_id]": "995d4b59ef034269543ecf4316e83499814311b982afbfc4e347b238187252d2", +"TT_ethereum-test_signtx.py::test_signtx[max_chain_plus_one]": "995d4b59ef034269543ecf4316e83499814311b982afbfc4e347b238187252d2", +"TT_ethereum-test_signtx.py::test_signtx[max_uint64]": "995d4b59ef034269543ecf4316e83499814311b982afbfc4e347b238187252d2", +"TT_ethereum-test_signtx.py::test_signtx[newcontract]": "030f3257c656698d67e455ce3261c88cf1d1769f0a23dcbcc988a47231a919d6", +"TT_ethereum-test_signtx.py::test_signtx[nodata_1]": "83f884e2309604ecf094cf5c404b973ee4c6c6fa3df042dab847308e33a2fd16", +"TT_ethereum-test_signtx.py::test_signtx[nodata_2_bigvalue]": "90cdc704d203ed70d24406f15a4f6500ad6632963503be71ab3ff8fc7fb11662", +"TT_ethereum-test_signtx.py::test_signtx[unknown_erc20_token]": "a88fa61882d61e9bd341bfffbf4c4b120c6a5fec8d5faf1ca3de80429cf2761d", +"TT_ethereum-test_signtx.py::test_signtx[wanchain]": "89ee5b5392cc688e240bde7c488f71e69398406e6bcf9d1bb2491f246910f5f5", +"TT_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_go_back]": "a27271bb9cd68fc2d12afce5db77698dabfb9eee2df18c5dafedede2380499bf", +"TT_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_scroll_down]": "b69c48a4affe263e3b1c377adf003ded20531309e405a884614a1cde1025b632", +"TT_ethereum-test_signtx.py::test_signtx_data_pagination[input_flow_skip]": "e05f2e906c397ef5ea505b632f266c92b5f8223135c896b405fc2ac347a87021", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[Ledger Live legacy path]": "410f6fa86bcd6d7a721d326855c063cd58e009a8bdf5e53e44b5acb61100e786", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[data_1]": "b90efe5025ec1823a03fac491f766b4e0748faf1be4b770f1940aef41d59c163", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[data_2_bigdata]": "ca2fb5bd1663158dc04e657378d68ea89fdd4b11e9a39a8d4f08efa02448da82", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[known_erc20]": "6e4e5f11801154a9c9447ca98075001d98414724fa4bdefeb911e60490950241", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[large_chainid]": "7f81fe3e6f8bbc469f9b1149fa9f643ccd39219fdafb3c5b3d48fd1426ccb843", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[nodata]": "410f6fa86bcd6d7a721d326855c063cd58e009a8bdf5e53e44b5acb61100e786", +"TT_ethereum-test_signtx.py::test_signtx_eip1559[unknown_erc20]": "2a2ca76806a213475c60484bc6226fa00092ce866509197c0536e885f1b90781", +"TT_ethereum-test_signtx.py::test_signtx_eip1559_access_list": "410f6fa86bcd6d7a721d326855c063cd58e009a8bdf5e53e44b5acb61100e786", +"TT_ethereum-test_signtx.py::test_signtx_eip1559_access_list_larger": "410f6fa86bcd6d7a721d326855c063cd58e009a8bdf5e53e44b5acb61100e786", +"TT_misc-test_cosi.py::test_cosi_different_key": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_misc-test_cosi.py::test_cosi_nonce": "2372d85f1ce3bb2c7f097a0f8ecc45fd3f00cdd65c7dfc1bd2167e9e959cd9a7", +"TT_misc-test_cosi.py::test_cosi_pubkey": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_misc-test_cosi.py::test_cosi_sign1": "2372d85f1ce3bb2c7f097a0f8ecc45fd3f00cdd65c7dfc1bd2167e9e959cd9a7", +"TT_misc-test_cosi.py::test_cosi_sign2": "1fb9e6b5c3978cb3ada8a1800366a9bc1175bdcc9f2f08a8db4fee4aa948c943", +"TT_misc-test_cosi.py::test_cosi_sign3": "0d1e4d7191db0526159de80fb902dc94606a50b55755a5942981d903663aeff8", +"TT_misc-test_msg_cipherkeyvalue.py::test_decrypt": "5c863318918ebe23a6fbb62fd157ba13d3dfe4f3bc4ce2cd6d32c82a591a0415", +"TT_misc-test_msg_cipherkeyvalue.py::test_decrypt_badlen": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_misc-test_msg_cipherkeyvalue.py::test_encrypt": "fc890167d119afd47dd53a6c44a200f1a3e424e9b49ba0892148bc278ea0bd39", +"TT_misc-test_msg_cipherkeyvalue.py::test_encrypt_badlen": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_misc-test_msg_getecdhsessionkey.py::test_ecdh": "343459aed3f900c3f725e27a381ed211258b5e71e5783a5d19af931954ab0898", +"TT_misc-test_msg_getentropy.py::test_entropy[128]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[129]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[16]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[17]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[1]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[20]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[21]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[256]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[257]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[32]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[33]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[3]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[4]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[512]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[513]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[5]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[64]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[65]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[8]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_getentropy.py::test_entropy[9]": "b7877a0a47e95d34153dc77dcf8439e08950dcccad342d432256415c3dd2e1f5", +"TT_misc-test_msg_signidentity.py::test_sign": "f2990675546c62e094e4c76ddec87b29666d2d0bfb19acace85f012ccdf404ba", +"TT_monero-test_getaddress.py::test_monero_getaddress": "cc95512fd200aff025cb119fba009168139ee30a193446fa0cb9242c589b4e41", +"TT_monero-test_getwatchkey.py::test_monero_getwatchkey": "2d72d3992906a51d9f111c4bd56f9e2b7448bac2c849430d578dd34bec6b1d01", +"TT_nem-test_getaddress.py::test_nem_getaddress": "d9a663ef261254bca5087e1925fbbfd6dc266af2758d2f656d9a63f1db74d6b4", +"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_creation": "f8b345ee024212b9a903dca79f34e4d65d4ff91a6c8ff33855cdd7703ca4465b", +"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_creation_levy": "ba4c6538bb08ddfb3f057896210141f2426e194d3fd510e7cf73b3e0cd413dac", +"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_creation_properties": "1987f85e21e958e99984d7cbec60a745f7431c99e7d35c95420270f9ed7abcfc", +"TT_nem-test_signtx_mosaics.py::test_nem_signtx_mosaic_supply_change": "d4334bdf8194e5d076711ecca92b6b360ec623ee269e244ccf46341b66493b10", +"TT_nem-test_signtx_multisig.py::test_nem_signtx_aggregate_modification": "a70ad89726dd67b5072812b38f66fb0f065715954ec72ad26868b7227a4246d7", +"TT_nem-test_signtx_multisig.py::test_nem_signtx_multisig": "263c4b095d6f61f0492e58a6f0d16e6833576941411513633646c9383771210f", +"TT_nem-test_signtx_multisig.py::test_nem_signtx_multisig_signer": "f7ad1a873dcb436fa2b82d398dacbfd6efdb7652f61cde1cad357fd5724b94e9", +"TT_nem-test_signtx_others.py::test_nem_signtx_importance_transfer": "f001c1da1e1426f65cf7a63004ea9b522d3a7e905ea5617b0823f0450180020b", +"TT_nem-test_signtx_others.py::test_nem_signtx_provision_namespace": "4c02bb7ba8a4d58accc497ae71b42c8cf5fae3c9f4747b4bfcb11e5dcafc5278", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_encrypted_payload": "012854969d31c7035aa387f87ed521157f7b3d46cd2596fa11ddac27a937a682", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_known_mosaic": "68a46b8f5cbd51ac03b4c7edefee7353247725b1272462d65c15a558cca98d04", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_known_mosaic_with_levy": "052b8f8af2fe0cb0d7e9337d39d09f18f419e97b384f77369613dc593f38fcb3", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_multiple_mosaics": "a91114953c63e2277f2affa5fc7cec6871cb52fb13166bc3a2ef504524f90301", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_simple": "6bd27935fe5f4125a0686d74e4ffbc801c2cb2c9925fca754ef9b46ef1e15306", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_unknown_mosaic": "8bdabcabce0fee2babd6695fa68695ecebfbe97c66f93e82a648c3b1142f4394", +"TT_nem-test_signtx_transfers.py::test_nem_signtx_xem_as_mosaic": "513dcc269a7b0541a6360c151ded238ae0e1f167c9656ed598b0bdf525a9e338", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[label-test]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[language-test]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[passphrase_protection-True]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[pin_protection-True]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_bad_parameters[u2f_counter-1]": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_dry_run": "6e10521101355699b4445103106d346886127c91a1beb78d4d126433d99ed9d9", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_invalid_seed_core": "66a86b9df1049d72a69628bb00450e95376d1ec90bca136bc0b960302b561024", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_seed_mismatch": "c3f295e3cbbadfa3cac2532588040e661edcbc63e1e0927140b6e70bc65c4a96", +"TT_reset_recovery-test_recovery_bip39_dryrun.py::test_uninitialized": "ab6fabda008f503c52c6ecde6b1c1b67505b9153c86320409b2d1275b3c3edad", +"TT_reset_recovery-test_recovery_bip39_t2.py::test_already_initialized": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_recovery_bip39_t2.py::test_tt_nopin_nopassphrase": "d5de7d1fa081fc4535776323b05039e3dfc156053a056d27b00359767e234035", +"TT_reset_recovery-test_recovery_bip39_t2.py::test_tt_pin_passphrase": "e44fdb7eaa22fdcf3f66731fc63d2601910f865ff64bf91f8bb335eb24162978", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_abort": "91f3a3f45c456d98205078f22c974670bd718acb74963df1bcb35f8f82c8fb77", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_extra_share_entered": "9a6acb00eac723cd981c5e33657d6211e4d56e7f8185bce7f996da25526eeb62", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_group_threshold_reached": "bdebd769a57e2c8ffe1ddb9fbc71da7c43e2d4b9835c1aa18e6a7a87661605e5", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_noabort": "aa40dd16acd79b78bebe4e4928ed2a64fc3432547b20935ed4f1f3cd1c09f540", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_same_share": "e47f6a40dd8841bae9bdad991f785aa109175de1e342b8b14da9d8d0ac658912", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret[shares0-c2d2e26ad06023c60145f1-afc2dad5": "ea0a2d8f5d7f236e8f045262309931a9198eb72325b2cfbf411250a309e7d36b", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret[shares1-c41d5cf80fed71a008a3a0-eb47093e": "23e4a1b06c3456076bde987fd22637ba621626e6eadfb0cd03bbc5492b15c816", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret_click_info_button[shares0-c2d2-850ffa77": "50c1531a5fa7ff2d40eae06191dcec095ba079e98bb336e86dc35c19b1ee7d04", +"TT_reset_recovery-test_recovery_slip39_advanced.py::test_secret_click_info_button[shares1-c41d-ca9ddec8": "abf0422db16e4cbab973879dbe0335c228b8e8920504aab67f8e359e67956d87", +"TT_reset_recovery-test_recovery_slip39_advanced_dryrun.py::test_2of3_dryrun": "cc1bcdedd33f5700dff50165715684fe2819138c965058b94a92e62067b7f91f", +"TT_reset_recovery-test_recovery_slip39_advanced_dryrun.py::test_2of3_invalid_seed_dryrun": "73391e30d2717ce15275232749e9d43e62e367d381a8c10a8d4ad67adb6fd5ca", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_1of1": "46c1868bc5db177244e7a190790cfdb62aa1e522b65958537f5348c477d9d78a", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_abort": "91f3a3f45c456d98205078f22c974670bd718acb74963df1bcb35f8f82c8fb77", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_ask_word_number": "f921938279217e073114ee4aceece0afe3615d44e6259ece3bd38156121887e9", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_noabort": "e007e53c5b870c41852e2ccf11b24cf0708eed7c48544581050433349c7c393e", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_recover_with_pin_passphrase": "193747463ef191297bc9d503f2bf61bfc834cd12352eea95a0af3f72b5fb7951", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_same_share": "52406b191621e07e6cf828aa28281c359ffe0dccd2b4d0492668a434a422109b", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_secret[shares0-491b795b80fc21ccdf466c0fbc98c8fc]": "73674c2ac57b30ec7b3d42ea0b27ce17daae4db5ca126c4df6c52d73b2cf2ff4", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_secret[shares1-b770e0da1363247652de97a39-a50896b7": "21dd84204fe5762ad8964907cca24b8b70b220ccaa35911f80b3100204300e61", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_wrong_nth_word[0]": "c6b02494d5d2cbb2a4852c1749e245dfaa798c469040f252a64a2d677bb3ab55", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_wrong_nth_word[1]": "fd7a8e4475f76cc8dd636cf7f4ced7e0f42e0590db634032f364b74a41d902cf", +"TT_reset_recovery-test_recovery_slip39_basic.py::test_wrong_nth_word[2]": "b7d0a0d1fddbbd28dd4710b9b1da77c9a40348d8045720acf7a1334ac3d5bc21", +"TT_reset_recovery-test_recovery_slip39_basic_dryrun.py::test_2of3_dryrun": "ad17c81dee4a46099474b2616c7634c5dbfe196a619ce6856219554c745872d2", +"TT_reset_recovery-test_recovery_slip39_basic_dryrun.py::test_2of3_invalid_seed_dryrun": "412d39fe7667192e3c09de9699005f319fee92f721827d97eb7c923d6e5faa38", +"TT_reset_recovery-test_reset_backup.py::test_skip_backup_manual[BackupType.Bip39-backup_flow_bip39]": "17144ac4c74c70347e11a332784ab1cb9625a71f3a58a6fe08fa6a732d37ea5e", +"TT_reset_recovery-test_reset_backup.py::test_skip_backup_manual[BackupType.Slip39_Advanced-bac-f67baa1c": "e695e6b1b60c73002f8fe0d771a1e78d1accc4f18ce8a07c6715b51fded4887d", +"TT_reset_recovery-test_reset_backup.py::test_skip_backup_manual[BackupType.Slip39_Basic-backup-6348e7fe": "9a45c958e500dbba6bd4052eb7bd21eb31bd3904e7939639fb43384ca14a61bd", +"TT_reset_recovery-test_reset_backup.py::test_skip_backup_msg[BackupType.Bip39-backup_flow_bip39]": "3c79c671d3033a869603fa9baaac960f13c529364fd09d33ccdd73bfb9817d09", +"TT_reset_recovery-test_reset_backup.py::test_skip_backup_msg[BackupType.Slip39_Advanced-backup-dcbda5cf": "6a87d316750e219d6ec3015c5a3832e9d136bdce1d1dda44ee3e2752b3892881", +"TT_reset_recovery-test_reset_backup.py::test_skip_backup_msg[BackupType.Slip39_Basic-backup_fl-1577de4d": "8681dea534a0a01ea71f62dd1ed4e7b3ef1e1c39e1aa56f381761535ec483893", +"TT_reset_recovery-test_reset_bip39_t2.py::test_already_initialized": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_reset_recovery-test_reset_bip39_t2.py::test_failed_pin": "fe62298460cdab03f98648880f4243ef590f5dc371ab131c1dbca3842451cd69", +"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_device": "f8458a1a75f217fcb219ef9d1981ab86b88ce046d53775e7ff7d6d68b4633d4f", +"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_device_192": "b1a0c0b9f2307caae5613c3c85e4a78a4af6e29bfa90640cb3402067a99c1262", +"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_device_pin": "b31deb1411f9420690bc91f934ecc8635d5941c221ca234bb806a39bcf7026da", +"TT_reset_recovery-test_reset_bip39_t2.py::test_reset_failed_check": "7963ac0669aef280db3a1d9b7a1bf4ef123adcd402bd590c0bd0ecadd1e2c785", +"TT_reset_recovery-test_reset_recovery_bip39.py::test_reset_recovery": "0c457a3e2c76a0a190ef3b903bdfefc3a9f48cf3ebf4258b7ca9080bad84caad", +"TT_reset_recovery-test_reset_recovery_slip39_advanced.py::test_reset_recovery": "a45fe5fca3c3d845d030849dcb80e8076202dc858f4fd59836ce10a404558f4f", +"TT_reset_recovery-test_reset_recovery_slip39_basic.py::test_reset_recovery": "a6c1e224c8c78b5e6731c23eb96f7da794816edcca23abf642a0ff9ac11b0b89", +"TT_reset_recovery-test_reset_slip39_advanced.py::test_reset_device_slip39_advanced": "d0a4bd21378c8d621c56dda8f4d3a031fe1637691eb653ba6672037cbf0e0081", +"TT_reset_recovery-test_reset_slip39_basic.py::test_reset_device_slip39_basic": "6fa57d7d63145b600cebe731c0ce9592c84fc6e93164e01b72f47835f75929d3", +"TT_reset_recovery-test_reset_slip39_basic.py::test_reset_device_slip39_basic_256": "3ed6c7bde17890412af0f479c45d4bb5709d965b877fbc4d98354422731e8de9", +"TT_ripple-test_get_address.py::test_ripple_get_address": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_ripple-test_get_address.py::test_ripple_get_address_other": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_ripple-test_sign_tx.py::test_ripple_sign_invalid_fee": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_ripple-test_sign_tx.py::test_ripple_sign_simple_tx": "87afbc4be08355d9789845185473e35051e0b2412c5d309333539e2856abd284", +"TT_stellar-test_stellar.py::test_get_address[parameters0-result0]": "7db57dcd31847d03d434fd57ba80b683b439f8c5e434c1a3c2e44774e8ad13e7", +"TT_stellar-test_stellar.py::test_get_address[parameters1-result1]": "167dab33bf3420b438415a83bc18e7f2e2e75c05af1bc9d2a0a00eccf740c8a0", +"TT_stellar-test_stellar.py::test_get_address[parameters2-result2]": "711a9e33bf07d78bf5b57413916f765dc61eb53f1d2ea697026da5e20d5608e7", +"TT_stellar-test_stellar.py::test_get_address[parameters3-result3]": "433ec2a61fe848aeb5143b5a2246819de663b51f2b7a1643d684c20dccc9cb26", +"TT_stellar-test_stellar.py::test_get_address[parameters4-result4]": "47d761d618639c4fa2911fdcc6a3a68f201f56934019d75441798f0c0cdb1b7f", +"TT_stellar-test_stellar.py::test_get_address[parameters5-result5]": "2909e108245537fc0e337545aab4d176b3f66138cdc9005dcf5208361146f36e", +"TT_stellar-test_stellar.py::test_get_address[parameters6-result6]": "c7417cab26bc262e3a4885d58b5581991194b09cdbc6d6676aca824288b8cf6a", +"TT_stellar-test_stellar.py::test_get_address[parameters7-result7]": "684475755e36a64a0ca3215a202a4d4187bd40880dfb3f1b73941c68a0ee4ca1", +"TT_stellar-test_stellar.py::test_get_address[parameters8-result8]": "beeef24b03ecd66df98d6f5424d6b7e50005890126b368b7464a341a0fe07a76", +"TT_stellar-test_stellar.py::test_get_address[parameters9-result9]": "c5355d1814641c540d787845b87090a532fc32a4dc77da9c48f9eaec8c0135aa", +"TT_stellar-test_stellar.py::test_sign_tx[StellarAccountMergeOp]": "3cd45fecaf27afc46121f4c936e792f4a8b97a30d6f8f555b8a71b99406e19e4", +"TT_stellar-test_stellar.py::test_sign_tx[StellarAllowTrustOp-allow]": "8efbf03810bd00b5da8ba489358fdf95ba1d61cf7d71b2670963f008b77cbba9", +"TT_stellar-test_stellar.py::test_sign_tx[StellarAllowTrustOp-revoke]": "f397249d723f814cc58270d6b8067af697fef4023d5099484bee516a5955aa0b", +"TT_stellar-test_stellar.py::test_sign_tx[StellarBumpSequenceOp]": "c765877210a739a00585632051d738ab4c5a89fbb3cb87c48637ff7a9195c290", +"TT_stellar-test_stellar.py::test_sign_tx[StellarChangeTrustOp-add]": "c4284305c1d171c1b68e5418590151fd5308f12c1df6126d51354f36fc369ca4", +"TT_stellar-test_stellar.py::test_sign_tx[StellarChangeTrustOp-delete]": "ada8e0c3ca574efc1d26561bd44ebb9fa04bcb4e09b5afd6a3e64373dbd8afc2", +"TT_stellar-test_stellar.py::test_sign_tx[StellarCreateAccountOp]": "60475d742bf4bf800480b1b9c643a22ff23ce6f24f50112375182c4eada839c4", +"TT_stellar-test_stellar.py::test_sign_tx[StellarCreatePassiveSellOfferOp]": "a9083f9b94a0cac068de7884dc1381f7bace181dfdf5fde1c990aa64aa8d8114", +"TT_stellar-test_stellar.py::test_sign_tx[StellarManageBuyOfferOp]": "5e0f61d496d45a711c2593c8af87bd4cc281f28720d52c9f732f4fa194fe47cd", +"TT_stellar-test_stellar.py::test_sign_tx[StellarManageDataOp]": "407a77c750608a571846e2be4cc33579c4566ee55e4c7aad938522f8102fc383", +"TT_stellar-test_stellar.py::test_sign_tx[StellarManageSellOfferOp]": "bcb07496715c6dc2eaabe6c89b6d325cc72ba068fc360af084cd8899f5e79b11", +"TT_stellar-test_stellar.py::test_sign_tx[StellarPathPaymentStrictReceiveOp]": "81678a60bf73cc390d02d98abe0d6838f6f6eee1fd4146c3c6586b60316ee60d", +"TT_stellar-test_stellar.py::test_sign_tx[StellarPathPaymentStrictSendOp]": "527750337a57945c8464f8658e1e9f68757b83f54a377ad32e9094c206f286d3", +"TT_stellar-test_stellar.py::test_sign_tx[StellarPaymentOp-asset12]": "2669b6a3716abfcb1f13abc33f2837929ce5188ddfc316c59423fa4e6ae4df44", +"TT_stellar-test_stellar.py::test_sign_tx[StellarPaymentOp-asset4]": "135dbb736161327d2dbfcc38a27b314d827fb949a0a32fbdc986f1e61420b248", +"TT_stellar-test_stellar.py::test_sign_tx[StellarPaymentOp-native_asset]": "916a5bb80a9ac8fd13ce008567993e4c1b7e7560c1799ae60108f85ea2ff558b", +"TT_stellar-test_stellar.py::test_sign_tx[StellarSetOptionsOp-all]": "a31bb5a34d4627558fd6e66b23290cc2f3fabb4023e2e058be58b918d3d9155c", +"TT_stellar-test_stellar.py::test_sign_tx[StellarSetOptionsOp-one]": "ef1b3b4c429528b3a4f86186e835f115a1c2d31408a149d9f537588078ecec80", +"TT_stellar-test_stellar.py::test_sign_tx[StellarSetOptionsOp-some]": "0030c2bf49ccb9ec21b96db3cdc1bb1c818c21859228d858f5e15f3241d71c63", +"TT_stellar-test_stellar.py::test_sign_tx[memo_hash]": "c92199841091e9945abe63f714eaf44d35c61ce04654d40a193a61354fb2737d", +"TT_stellar-test_stellar.py::test_sign_tx[memo_id]": "c85e45836e79a190f952f46abd946846279d1c32345086d1e7131b37e9b9da91", +"TT_stellar-test_stellar.py::test_sign_tx[memo_return]": "3e4cbb0f4df082bb4cde0faef3b9614b1781430a189a87be502917be29e2ee36", +"TT_stellar-test_stellar.py::test_sign_tx[memo_text]": "1adaa872e903c0a2c56cfb414ed57f8413192bd56838c601bb6a3539b9317ee3", +"TT_stellar-test_stellar.py::test_sign_tx[multiple_operations]": "5a87a72119e6c563008ef7bab80238e5d5ac0dc14283f781cf7e5897b73d7d8b", +"TT_stellar-test_stellar.py::test_sign_tx[source_account]": "7b4047dd73a801b8fb1e53a7ed019a2a3836f770d7e3d7e9fb88f9dc944e1610", +"TT_stellar-test_stellar.py::test_sign_tx[timebounds-0-0]": "f52661b0886683ffd1b83f2ce84c9e389f91fb8c5b58c175e1eecd7fbb7f7f3d", +"TT_stellar-test_stellar.py::test_sign_tx[timebounds-0-1575234180]": "06b68119e076c8ac563035d8420959d79a7f1a23d6ee44ba3ecb48b5c85d2801", +"TT_stellar-test_stellar.py::test_sign_tx[timebounds-461535181-0]": "74a20d5e822adcb9e6432cfcfa8b42fa928cb1090a4df0ac6c70eddefa4d19e9", +"TT_stellar-test_stellar.py::test_sign_tx[timebounds-461535181-1575234180]": "916a5bb80a9ac8fd13ce008567993e4c1b7e7560c1799ae60108f85ea2ff558b", +"TT_test_autolock.py::test_apply_auto_lock_delay": "6a5f87c0d3a04d4654f9382ade93aa8fad2d8c6ad28dd184e6244382ab6cf711", +"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[0]": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[1]": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[4194304]": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[536871]": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_autolock.py::test_apply_auto_lock_delay_out_of_range[9]": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_autolock.py::test_apply_auto_lock_delay_valid[10]": "63bc032426766f37a4a5e3fd66b752563648c8c5960b4ceb1f8b6f844da633cd", +"TT_test_autolock.py::test_apply_auto_lock_delay_valid[123]": "9b45455872d08be774db2f12a3288a3a15cf0edb707fb1146d449114956aca2b", +"TT_test_autolock.py::test_apply_auto_lock_delay_valid[3601]": "19aafa385b36bcdb3a1652a7d3bdf0ac47dd69c52c55d30775c1045f2f4d04da", +"TT_test_autolock.py::test_apply_auto_lock_delay_valid[536870]": "d74f4c6260b91ef7308018ce1c17c94c21827a7b43b602a6a3038d994d541473", +"TT_test_autolock.py::test_apply_auto_lock_delay_valid[60]": "444455283b9a9284ebdb9548cbe3a22b4cf397f05f5c96f6fb9cd026850ffcd1", +"TT_test_autolock.py::test_apply_auto_lock_delay_valid[7227]": "b52c4823573ceb1c7c82e866d7814835c974a1fbbeddf32d76e5a8f5ad3984f1", +"TT_test_autolock.py::test_autolock_cancels_ui": "7e5db62f4bcbc503b999a6c22f8f4f3577244ca0a74b5f8d551f6da4c38f37b4", +"TT_test_autolock.py::test_autolock_default_value": "730067fed69752647f8fd22f2a03b8ee1dcc552951f98e9cc1b328ff8b174535", +"TT_test_basic.py::test_device_id_different": "a0f54c622a33e4aabd3752b539838ed6d40ca16c9f0402aab581a3690ec3df21", +"TT_test_basic.py::test_device_id_same": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_basic.py::test_features": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_basic.py::test_ping": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_busy_state.py::test_busy_expiry": "b0f19c66469df6ee9cc0cda06692f22d34c6e448cfc0d713276bcebdd83081a6", +"TT_test_busy_state.py::test_busy_state": "d150149915819feea871516e46986d651b516df036ce87526bf4b53da0cdfbf4", +"TT_test_cancel.py::test_cancel_message_via_cancel[message0]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_cancel.py::test_cancel_message_via_cancel[message1]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_cancel.py::test_cancel_message_via_initialize[message0]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_cancel.py::test_cancel_message_via_initialize[message1]": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_cancel.py::test_cancel_on_paginated": "c3d3b1e4276e90ecf3623d4784bdfb50815350e00acafe91be78d252085fc3e3", +"TT_test_debuglink.py::test_softlock_instability": "f013edab1f359827ac6ad41064044712d40dd51cfef0e74705424c4c95e26998", +"TT_test_firmware_hash.py::test_firmware_hash_emu": "a95bc9de1b7bb06d63e6e698c172a4ed62e188a1104261bcb9bdaef9be8dec0e", +"TT_test_firmware_hash.py::test_firmware_hash_hw": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_msg_applysettings.py::test_apply_homescreen_toif": "33fd9fc6fdee385e7519f853762c28014f1514133ab4cf164433e39b51edf015", +"TT_test_msg_applysettings.py::test_apply_homescreen_toif_fail[TOIf\\x80\\x00\\x80\\x00~\\x00\\x00\\x0-ba464b0c": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_msg_applysettings.py::test_apply_homescreen_toif_fail[TOIf\\x90\\x00\\x90\\x00~XXXf\\x90\\x0-cb3c88da": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_msg_applysettings.py::test_apply_homescreen_toif_fail[TOIg\\x90\\x00\\x90\\x00~\\x00\\x00\\x0-09cb7d43": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_msg_applysettings.py::test_apply_settings": "ba6d9eefd57ebf9e6d2bbd833d5a915df358837199082ed4307fede546821309", +"TT_test_msg_applysettings.py::test_apply_settings_passphrase": "002abec357788cee2897476b6b958298a63eb65f2c9db61c5f75506ee92c4e91", +"TT_test_msg_applysettings.py::test_apply_settings_passphrase_on_device": "0a0522808aff371748bbe5c514166308235c0cfb828f1ef88bd2948145fb7d1a", +"TT_test_msg_applysettings.py::test_apply_settings_rotation": "220051f638fe61398dd67a82458388de799311d56f72eb064886565662c2b024", +"TT_test_msg_applysettings.py::test_experimental_features": "fec1dec9273e74331c7a4b65d92a5fb18508272c0e36b69751ce62c39972213c", +"TT_test_msg_applysettings.py::test_label_too_long": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_msg_applysettings.py::test_safety_checks": "77dab4bbd71ffb5b889cce139be3e3cb4896e5227a17d2445f0ce7749245841f", +"TT_test_msg_backup_device.py::test_backup_bip39": "bddd3764dd0936871a09e4ca4ea142187f7b15fb6a8767f6624c917eaddbcd8f", +"TT_test_msg_backup_device.py::test_backup_slip39_advanced[click_info]": "f8938b532114ade839504182a01f0aed52e449b31a4c34428ed4db1479ecc3b4", +"TT_test_msg_backup_device.py::test_backup_slip39_advanced[no_click_info]": "77c8d0a74930f9baa8b0bbb040ede2553f25491a65674b04721c987fbfe1a354", +"TT_test_msg_backup_device.py::test_backup_slip39_basic[click_info]": "1ec9ec7aaac6d1e41de03ad080cf89463315b5207d4f70e4f0b0d79d4393074d", +"TT_test_msg_backup_device.py::test_backup_slip39_basic[no_click_info]": "b506b1d6c6ede5a0e47eb3de59dd1315956f05b45b5ed1fe42869ba0c4f6dfde", +"TT_test_msg_backup_device.py::test_interrupt_backup_fails": "47d468bf0e3baaffb457f56b4ea7aaed4356ade7343cac77ecaac5aeed635185", +"TT_test_msg_backup_device.py::test_no_backup_fails": "8d9a56256a6f45c58a3599580ae5c794b3ae4df7f9a9a716b84e584b54f5f83e", +"TT_test_msg_backup_device.py::test_no_backup_show_entropy_fails": "ab6fabda008f503c52c6ecde6b1c1b67505b9153c86320409b2d1275b3c3edad", +"TT_test_msg_change_wipe_code_t2.py::test_set_pin_to_wipe_code": "e3988aaa216110b853ab4e726b2be85f39d29592d7f12d116f54ddbf9c5098cb", +"TT_test_msg_change_wipe_code_t2.py::test_set_remove_wipe_code": "487b08419f6a671f0d237f0549342ea834a7eda0bb40dbab8b9b7e872449e1ca", +"TT_test_msg_change_wipe_code_t2.py::test_set_wipe_code_mismatch": "e9fe28f244d416a55cd64e526d37d8338e022beeeeb9fdfc5895f0798407b64e", +"TT_test_msg_change_wipe_code_t2.py::test_set_wipe_code_to_pin": "6566a4388fbcff59c235df6e02567d4dda4dfc1cf3208c945ef1d99cc40f487b", +"TT_test_msg_changepin_t2.py::test_change_failed": "523afd2a14bc0017299c1274fd51fd57fb5b1109bf354571f06fcc5dcbbd231f", +"TT_test_msg_changepin_t2.py::test_change_invalid_current": "2ddb4406321f832ee232b0269d511cc5a40d76941182941f9ffe5c6c02ab20b3", +"TT_test_msg_changepin_t2.py::test_change_pin": "1d53b232d57e04bb54e0828c291676323474bfec7645e5a19dac6ed148fb0727", +"TT_test_msg_changepin_t2.py::test_remove_pin": "f3526b78e7b134cff4a7617de987b27da242182144893b63e5f4158fc3c3de37", +"TT_test_msg_changepin_t2.py::test_set_failed": "7783013d7f7e962bc1af241b5f231042eac4ba7ff7ab48b361b36c0b88863215", +"TT_test_msg_changepin_t2.py::test_set_pin": "05225913efc0c7e2c75ac4b8baca11b74f76300e4c2f2132113abafdbd5fdf20", +"TT_test_msg_loaddevice.py::test_load_device_1": "aa580b991d4859ab2e84b7519338de465dc191ee339dffd7b2183717ede9847e", +"TT_test_msg_loaddevice.py::test_load_device_2": "9f34c29197a277e137cb6ec2a86802690dee41c7a0603d84bf6fa082d1d6ec0a", +"TT_test_msg_loaddevice.py::test_load_device_slip39_advanced": "aa580b991d4859ab2e84b7519338de465dc191ee339dffd7b2183717ede9847e", +"TT_test_msg_loaddevice.py::test_load_device_slip39_basic": "aa580b991d4859ab2e84b7519338de465dc191ee339dffd7b2183717ede9847e", +"TT_test_msg_loaddevice.py::test_load_device_utf": "4bf654ff4862f1af58e2cf135870b73f3967e8d93d48075eadb0138d660af2cf", +"TT_test_msg_ping.py::test_ping": "18ca96c69a909260d4a7484c97172e4cc7fa1befe6aca10d54b8d60968de98a1", +"TT_test_msg_sd_protect.py::test_enable_disable": "42728707dce487094a25b581f0089d97ff8a1f1327c141e5641fadd5b92a74d3", +"TT_test_msg_sd_protect.py::test_refresh": "a31d9cfe72f658eb6f81ae6663e766f8f8732a6161cd5bc6faa9b2c2ee5c9103", +"TT_test_msg_sd_protect.py::test_wipe": "b6f24505450cb8e728dc9d7999c93e579dd464028faa33c5a3a9751c32c5d1dd", +"TT_test_msg_wipedevice.py::test_autolock_not_retained": "dba73146860d97697d82d81ef3866a839ff46e250e35e5b6f3a17f7b3a2ad979", +"TT_test_msg_wipedevice.py::test_wipe_device": "a0f54c622a33e4aabd3752b539838ed6d40ca16c9f0402aab581a3690ec3df21", +"TT_test_passphrase_slip39_advanced.py::test_128bit_passphrase": "0ff63f9db0fd7fea7788f2a3b3fe24bd313080d2e2b51a7eb64f6ec53cbb25cd", +"TT_test_passphrase_slip39_advanced.py::test_256bit_passphrase": "0ff63f9db0fd7fea7788f2a3b3fe24bd313080d2e2b51a7eb64f6ec53cbb25cd", +"TT_test_passphrase_slip39_basic.py::test_2of5_passphrase": "3fa672dea8dbc49444ba9decf85d59c939159c0fac3b187b95ad4390c2054b5d", +"TT_test_passphrase_slip39_basic.py::test_3of6_passphrase": "3fa672dea8dbc49444ba9decf85d59c939159c0fac3b187b95ad4390c2054b5d", +"TT_test_pin.py::test_correct_pin": "e593b8b08ce49ae1d08d4f363ca05c1c1aef2e85f3e512f47419b9d9cf4320fe", +"TT_test_pin.py::test_exponential_backoff_t2": "bd800898d0b5c6874e6c1309bcd84fea900b6608aa1976830fda824f4fce6546", +"TT_test_pin.py::test_incorrect_pin_t2": "688c7e71aca9f834e4c508662f5c4b97c6776e423defb15c2371c230d8c0f727", +"TT_test_pin.py::test_no_protection": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_protection_levels.py::test_apply_settings": "0b452d4c84b15bc4023e95618a2c47fd73b7310524935fb994f371fc94f700d0", +"TT_test_protection_levels.py::test_change_pin_t2": "5176db5e8986b6bd707bf02176d5014d2d9d07711cddb10bb3b9452b484cc32e", +"TT_test_protection_levels.py::test_get_address": "101a66e1a30728bcdd4fae9dadd91885b1c6b6bdb3b891c0b409e2afcdbc0f63", +"TT_test_protection_levels.py::test_get_entropy": "8adb87561d138a18c614598ddff61c556cc8a25f9f145ba58a673e85b764c830", +"TT_test_protection_levels.py::test_get_public_key": "101a66e1a30728bcdd4fae9dadd91885b1c6b6bdb3b891c0b409e2afcdbc0f63", +"TT_test_protection_levels.py::test_initialize": "5687a21c8e7e11cb197a5f497e28338f5e4af0672a337650ed14fefea36fd59c", +"TT_test_protection_levels.py::test_passphrase_cached": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_protection_levels.py::test_passphrase_reporting[False]": "2180a71ee0143f55329ab92f88142ff631b3d6d4cd25578c40165708572174d2", +"TT_test_protection_levels.py::test_passphrase_reporting[True]": "e59d9a67941bad6d9afe1ad405f9f6e0fb29c3b3ea85be23edf80657e90253f3", +"TT_test_protection_levels.py::test_ping": "18ca96c69a909260d4a7484c97172e4cc7fa1befe6aca10d54b8d60968de98a1", +"TT_test_protection_levels.py::test_sign_message": "863df1d37b5ad88a890cc3be6301c7fb9a85449ac3160ad0010624fcc2b4b083", +"TT_test_protection_levels.py::test_signtx": "34bf2f2ea4785b67f7a54694561a36de8ebb8f4917f925cb254cdcdf37f6cc9b", +"TT_test_protection_levels.py::test_unlocked": "0fecce3548787a35f6097dfa6bffe33f2556e74b8c87eb8a980df6f42e1ef699", +"TT_test_protection_levels.py::test_verify_message_t2": "53ea15abf8442db2f2ce153e31f3882b9ce346da57fbb42a49751d8f6bb59a93", +"TT_test_protection_levels.py::test_wipe_device": "1e5a4991f496f4f11536480fc1c3ba58476851ebe27b1f4f6234b95b906293f6", +"TT_test_sdcard.py::test_sd_format": "a9ff5054ca7b1db85bf082e194794d9999527de809d77aacb49da99b8edd9c19", +"TT_test_sdcard.py::test_sd_no_format": "fd63178ef232fba05690e41ea9f99a1bc5ead8911c1217e78c5908a662d9636b", +"TT_test_sdcard.py::test_sd_protect_unlock": "88d0561f6aac06d8ee0aa69d766bb7cb05e980b02d056691595f57f48a8b77dd", +"TT_test_session.py::test_cannot_resume_ended_session": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_session.py::test_clear_session": "eec2c167f3d2f01889f1f067a18d261a43d7ed46e123d8a7663d340996d8ee17", +"TT_test_session.py::test_derive_cardano_empty_session": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_session.py::test_derive_cardano_running_session": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_session.py::test_end_session": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_session.py::test_end_session_only_current": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_session.py::test_session_recycling": "3fa672dea8dbc49444ba9decf85d59c939159c0fac3b187b95ad4390c2054b5d", +"TT_test_session_id_and_passphrase.py::test_cardano_passphrase": "645883ad7913d430a2f52c09fc57cc20d3a5a938430b3bd4677a6a87d92b3f22", +"TT_test_session_id_and_passphrase.py::test_max_sessions_with_passphrases": "9eab999cd09826f92aa09b91e2ffa206035e7f1912e7e5f7cc30a38a773f44b9", +"TT_test_session_id_and_passphrase.py::test_multiple_passphrases": "38b3351aad25dcfc77d064a539a44eaa07c3e6c4ff81d2654c4130ecd1f31f5d", +"TT_test_session_id_and_passphrase.py::test_multiple_sessions": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_test_session_id_and_passphrase.py::test_passphrase_ack_mismatch": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_session_id_and_passphrase.py::test_passphrase_always_on_device": "850a7783bd172c5e7527a6abd8384029db4e714c6f8e1e5fdc02a7628e24cd26", +"TT_test_session_id_and_passphrase.py::test_passphrase_length": "2eb25999516c9cafa4d19448533dc6ee2ed769ff3463ee4a828e14297605f1be", +"TT_test_session_id_and_passphrase.py::test_passphrase_missing": "d08c7576b47d42aa5e783813905f0ce837f2b26bf1f99dd34f9e369229955643", +"TT_test_session_id_and_passphrase.py::test_passphrase_on_device": "8a9ec89a1ea90f182102120f739b86021e7c355cb6ea06f48c2b1d283077f912", +"TT_test_session_id_and_passphrase.py::test_session_enable_passphrase": "d914c86883a5401163f3683aaa7cb7234961a17f736b3bcd43a2b87b68a264a5", +"TT_test_session_id_and_passphrase.py::test_session_with_passphrase": "abf67a53e3f051777f855d5b5b3ff51f36078e63bcb8a3ac9924f5846adc040d", +"TT_tezos-test_getaddress.py::test_tezos_get_address": "cbf74dc74ca2a05f49080a282828d9021a1bc22bb0d950f38834a13c77528ccc", +"TT_tezos-test_getpublickey.py::test_tezos_get_public_key": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f", +"TT_tezos-test_sign_tx.py::test_tezos_kt_remove_delegation": "f090850372484bf610f3f3b2c45155d208f5f00f8883e76dd18f06ff4246bc3c", +"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_delegation": "6e1d0ef66b75545e10bc6191b5e7ac50340a2cdd6b26e8fffcd786afd60b9312", +"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_multiple_proposals": "b0fd4ad5337ae1134f08c0e9011b5add0738a5e41fdd9fa31a78d84006a50139", +"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_origination": "b14e17da77b9a2e62de7d39cbe717983537632f666e96d5367b9c758c4beadd9", +"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_proposal": "cdbf7f365f947a819cf8e67d69c8b6b885f56181a4f1ae56b87214af5e0b0673", +"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_reveal": "71b4b26265bd3df41de590dacc888ce88cdb9a84fcf7c2dfeb0d5f9f676e543d", +"TT_tezos-test_sign_tx.py::test_tezos_sign_tx_tranasaction": "a91a0192e160a86291d26a6d69948325153e59a87f31bfdd14888b602bf825fb", +"TT_tezos-test_sign_tx.py::test_tezos_sing_tx_ballot_nay": "1a5c3a89d3b361eb3eac496824b2b085090e2f100a9afb4c0c8f21627f048cd0", +"TT_tezos-test_sign_tx.py::test_tezos_sing_tx_ballot_pass": "87af51b294ea65630b8265353b1d365585e5dcf5b476365fe335c3c250b3f16c", +"TT_tezos-test_sign_tx.py::test_tezos_sing_tx_ballot_yay": "adcc5dd18a08e47ba4cacd40f5f46abf28210120bdd7168885ca27eadbaa566a", +"TT_tezos-test_sign_tx.py::test_tezos_smart_contract_delegation": "8e87bb8ce0de9197f04e9059feeff5397be454b4cba6ca70ba2d6814f2583f14", +"TT_tezos-test_sign_tx.py::test_tezos_smart_contract_transfer": "ce56ce9d3ae4d75cc14d4897352938ff52e9cf68f14dba1407a32c94c4110ca3", +"TT_tezos-test_sign_tx.py::test_tezos_smart_contract_transfer_to_contract": "5776f71c1f1f6ccc81cfa941c82e544fa8f4c29cea7622d38bd82edd513137a6", +"TT_webauthn-test_msg_webauthn.py::test_add_remove": "eba0b7596430b530df1440f35a33a713192da8e0433a53d3cc30b98a12dc2841", +"TT_webauthn-test_u2f_counter.py::test_u2f_counter": "6bf6db360292afbda963a1133152100a98378d05796a10fb505d757b39ede2aa", +"TT_zcash-test_sign_tx.py::test_external_presigned": "cdb1416def8474959540b6312d77199ce7cd42ae2a2a44957eaaa977b8f21e23", +"TT_zcash-test_sign_tx.py::test_one_two": "7f6911261bdd703469b0a32ed3d9d4e6abfdc6ba186b2975d6a12f130292ed18", +"TT_zcash-test_sign_tx.py::test_refuse_replacement_tx": "3d8ccb95dab0251757887d5fac8bfec1aa81945200a18a6a35f1e12cec3e8ee8", +"TT_zcash-test_sign_tx.py::test_send_to_multisig": "df69fc6a8b52bb3bac0308c3519bd0d03d7820d2bb20c7ec646da9ff5b2c0f62", +"TT_zcash-test_sign_tx.py::test_spend_multisig": "04c8b36fe778f56b4350c2e813b89e39529d6dd2239cae76cd3f028ab9309863", +"TT_zcash-test_sign_tx.py::test_spend_v4_input": "81089495f42715d05922c5f72006c27bc72d30d8b7295aa001efec941ddb2b26", +"TT_zcash-test_sign_tx.py::test_spend_v5_input": "4cccd5de69be87668062861184df0026bda56dc468008ec21cc0882035e3b271", +"TT_zcash-test_sign_tx.py::test_unified_address": "909433abd9cd455069672c2df501a0fa044de7cca9f1616218982020f4d28c99", +"TT_zcash-test_sign_tx.py::test_version_group_id_missing": "e0db5107ba371eb8d7039e6ad3138f6bbb731c779f405b75c2e14128dfad756f" }