#![allow(unknown_lints)]
#![allow(clippy::all)]
#![allow(unused_attributes)]
#![cfg_attr(rustfmt, rustfmt::skip)]
#![allow(box_pointers)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unused_imports)]
#![allow(unused_results)]
#[derive(PartialEq,Clone,Default)]
pub struct Initialize {
session_id: ::protobuf::SingularField<::std::vec::Vec<u8>>,
_skip_passphrase: ::std::option::Option<bool>,
derive_cardano: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Initialize {
fn default() -> &'a Initialize {
<Initialize as ::protobuf::Message>::default_instance()
}
}
impl Initialize {
pub fn new() -> Initialize {
::std::default::Default::default()
}
pub fn get_session_id(&self) -> &[u8] {
match self.session_id.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_session_id(&mut self) {
self.session_id.clear();
}
pub fn has_session_id(&self) -> bool {
self.session_id.is_some()
}
pub fn set_session_id(&mut self, v: ::std::vec::Vec<u8>) {
self.session_id = ::protobuf::SingularField::some(v);
}
pub fn mut_session_id(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.session_id.is_none() {
self.session_id.set_default();
}
self.session_id.as_mut().unwrap()
}
pub fn take_session_id(&mut self) -> ::std::vec::Vec<u8> {
self.session_id.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get__skip_passphrase(&self) -> bool {
self._skip_passphrase.unwrap_or(false)
}
pub fn clear__skip_passphrase(&mut self) {
self._skip_passphrase = ::std::option::Option::None;
}
pub fn has__skip_passphrase(&self) -> bool {
self._skip_passphrase.is_some()
}
pub fn set__skip_passphrase(&mut self, v: bool) {
self._skip_passphrase = ::std::option::Option::Some(v);
}
pub fn get_derive_cardano(&self) -> bool {
self.derive_cardano.unwrap_or(false)
}
pub fn clear_derive_cardano(&mut self) {
self.derive_cardano = ::std::option::Option::None;
}
pub fn has_derive_cardano(&self) -> bool {
self.derive_cardano.is_some()
}
pub fn set_derive_cardano(&mut self, v: bool) {
self.derive_cardano = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for Initialize {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.session_id)?;
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self._skip_passphrase = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.derive_cardano = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.session_id.as_ref() {
my_size += ::protobuf::rt::bytes_size(1, &v);
}
if let Some(v) = self._skip_passphrase {
my_size += 2;
}
if let Some(v) = self.derive_cardano {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.session_id.as_ref() {
os.write_bytes(1, &v)?;
}
if let Some(v) = self._skip_passphrase {
os.write_bool(2, v)?;
}
if let Some(v) = self.derive_cardano {
os.write_bool(3, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Initialize {
Initialize::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"session_id",
|m: &Initialize| { &m.session_id },
|m: &mut Initialize| { &mut m.session_id },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"_skip_passphrase",
|m: &Initialize| { &m._skip_passphrase },
|m: &mut Initialize| { &mut m._skip_passphrase },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"derive_cardano",
|m: &Initialize| { &m.derive_cardano },
|m: &mut Initialize| { &mut m.derive_cardano },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Initialize>(
"Initialize",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Initialize {
static instance: ::protobuf::rt::LazyV2<Initialize> = ::protobuf::rt::LazyV2::INIT;
instance.get(Initialize::new)
}
}
impl ::protobuf::Clear for Initialize {
fn clear(&mut self) {
self.session_id.clear();
self._skip_passphrase = ::std::option::Option::None;
self.derive_cardano = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Initialize {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Initialize {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct GetFeatures {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a GetFeatures {
fn default() -> &'a GetFeatures {
<GetFeatures as ::protobuf::Message>::default_instance()
}
}
impl GetFeatures {
pub fn new() -> GetFeatures {
::std::default::Default::default()
}
}
impl ::protobuf::Message for GetFeatures {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> GetFeatures {
GetFeatures::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<GetFeatures>(
"GetFeatures",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static GetFeatures {
static instance: ::protobuf::rt::LazyV2<GetFeatures> = ::protobuf::rt::LazyV2::INIT;
instance.get(GetFeatures::new)
}
}
impl ::protobuf::Clear for GetFeatures {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for GetFeatures {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for GetFeatures {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Features {
vendor: ::protobuf::SingularField<::std::string::String>,
major_version: ::std::option::Option<u32>,
minor_version: ::std::option::Option<u32>,
patch_version: ::std::option::Option<u32>,
bootloader_mode: ::std::option::Option<bool>,
device_id: ::protobuf::SingularField<::std::string::String>,
pin_protection: ::std::option::Option<bool>,
passphrase_protection: ::std::option::Option<bool>,
language: ::protobuf::SingularField<::std::string::String>,
label: ::protobuf::SingularField<::std::string::String>,
initialized: ::std::option::Option<bool>,
revision: ::protobuf::SingularField<::std::vec::Vec<u8>>,
bootloader_hash: ::protobuf::SingularField<::std::vec::Vec<u8>>,
imported: ::std::option::Option<bool>,
unlocked: ::std::option::Option<bool>,
_passphrase_cached: ::std::option::Option<bool>,
firmware_present: ::std::option::Option<bool>,
needs_backup: ::std::option::Option<bool>,
flags: ::std::option::Option<u32>,
model: ::protobuf::SingularField<::std::string::String>,
fw_major: ::std::option::Option<u32>,
fw_minor: ::std::option::Option<u32>,
fw_patch: ::std::option::Option<u32>,
fw_vendor: ::protobuf::SingularField<::std::string::String>,
fw_vendor_keys: ::protobuf::SingularField<::std::vec::Vec<u8>>,
unfinished_backup: ::std::option::Option<bool>,
no_backup: ::std::option::Option<bool>,
recovery_mode: ::std::option::Option<bool>,
pub capabilities: ::std::vec::Vec<Features_Capability>,
backup_type: ::std::option::Option<BackupType>,
sd_card_present: ::std::option::Option<bool>,
sd_protection: ::std::option::Option<bool>,
wipe_code_protection: ::std::option::Option<bool>,
session_id: ::protobuf::SingularField<::std::vec::Vec<u8>>,
passphrase_always_on_device: ::std::option::Option<bool>,
safety_checks: ::std::option::Option<SafetyCheckLevel>,
auto_lock_delay_ms: ::std::option::Option<u32>,
display_rotation: ::std::option::Option<u32>,
experimental_features: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Features {
fn default() -> &'a Features {
<Features as ::protobuf::Message>::default_instance()
}
}
impl Features {
pub fn new() -> Features {
::std::default::Default::default()
}
pub fn get_vendor(&self) -> &str {
match self.vendor.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_vendor(&mut self) {
self.vendor.clear();
}
pub fn has_vendor(&self) -> bool {
self.vendor.is_some()
}
pub fn set_vendor(&mut self, v: ::std::string::String) {
self.vendor = ::protobuf::SingularField::some(v);
}
pub fn mut_vendor(&mut self) -> &mut ::std::string::String {
if self.vendor.is_none() {
self.vendor.set_default();
}
self.vendor.as_mut().unwrap()
}
pub fn take_vendor(&mut self) -> ::std::string::String {
self.vendor.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_major_version(&self) -> u32 {
self.major_version.unwrap_or(0)
}
pub fn clear_major_version(&mut self) {
self.major_version = ::std::option::Option::None;
}
pub fn has_major_version(&self) -> bool {
self.major_version.is_some()
}
pub fn set_major_version(&mut self, v: u32) {
self.major_version = ::std::option::Option::Some(v);
}
pub fn get_minor_version(&self) -> u32 {
self.minor_version.unwrap_or(0)
}
pub fn clear_minor_version(&mut self) {
self.minor_version = ::std::option::Option::None;
}
pub fn has_minor_version(&self) -> bool {
self.minor_version.is_some()
}
pub fn set_minor_version(&mut self, v: u32) {
self.minor_version = ::std::option::Option::Some(v);
}
pub fn get_patch_version(&self) -> u32 {
self.patch_version.unwrap_or(0)
}
pub fn clear_patch_version(&mut self) {
self.patch_version = ::std::option::Option::None;
}
pub fn has_patch_version(&self) -> bool {
self.patch_version.is_some()
}
pub fn set_patch_version(&mut self, v: u32) {
self.patch_version = ::std::option::Option::Some(v);
}
pub fn get_bootloader_mode(&self) -> bool {
self.bootloader_mode.unwrap_or(false)
}
pub fn clear_bootloader_mode(&mut self) {
self.bootloader_mode = ::std::option::Option::None;
}
pub fn has_bootloader_mode(&self) -> bool {
self.bootloader_mode.is_some()
}
pub fn set_bootloader_mode(&mut self, v: bool) {
self.bootloader_mode = ::std::option::Option::Some(v);
}
pub fn get_device_id(&self) -> &str {
match self.device_id.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_device_id(&mut self) {
self.device_id.clear();
}
pub fn has_device_id(&self) -> bool {
self.device_id.is_some()
}
pub fn set_device_id(&mut self, v: ::std::string::String) {
self.device_id = ::protobuf::SingularField::some(v);
}
pub fn mut_device_id(&mut self) -> &mut ::std::string::String {
if self.device_id.is_none() {
self.device_id.set_default();
}
self.device_id.as_mut().unwrap()
}
pub fn take_device_id(&mut self) -> ::std::string::String {
self.device_id.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_pin_protection(&self) -> bool {
self.pin_protection.unwrap_or(false)
}
pub fn clear_pin_protection(&mut self) {
self.pin_protection = ::std::option::Option::None;
}
pub fn has_pin_protection(&self) -> bool {
self.pin_protection.is_some()
}
pub fn set_pin_protection(&mut self, v: bool) {
self.pin_protection = ::std::option::Option::Some(v);
}
pub fn get_passphrase_protection(&self) -> bool {
self.passphrase_protection.unwrap_or(false)
}
pub fn clear_passphrase_protection(&mut self) {
self.passphrase_protection = ::std::option::Option::None;
}
pub fn has_passphrase_protection(&self) -> bool {
self.passphrase_protection.is_some()
}
pub fn set_passphrase_protection(&mut self, v: bool) {
self.passphrase_protection = ::std::option::Option::Some(v);
}
pub fn get_language(&self) -> &str {
match self.language.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_language(&mut self) {
self.language.clear();
}
pub fn has_language(&self) -> bool {
self.language.is_some()
}
pub fn set_language(&mut self, v: ::std::string::String) {
self.language = ::protobuf::SingularField::some(v);
}
pub fn mut_language(&mut self) -> &mut ::std::string::String {
if self.language.is_none() {
self.language.set_default();
}
self.language.as_mut().unwrap()
}
pub fn take_language(&mut self) -> ::std::string::String {
self.language.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_label(&self) -> &str {
match self.label.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_label(&mut self) {
self.label.clear();
}
pub fn has_label(&self) -> bool {
self.label.is_some()
}
pub fn set_label(&mut self, v: ::std::string::String) {
self.label = ::protobuf::SingularField::some(v);
}
pub fn mut_label(&mut self) -> &mut ::std::string::String {
if self.label.is_none() {
self.label.set_default();
}
self.label.as_mut().unwrap()
}
pub fn take_label(&mut self) -> ::std::string::String {
self.label.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_initialized(&self) -> bool {
self.initialized.unwrap_or(false)
}
pub fn clear_initialized(&mut self) {
self.initialized = ::std::option::Option::None;
}
pub fn has_initialized(&self) -> bool {
self.initialized.is_some()
}
pub fn set_initialized(&mut self, v: bool) {
self.initialized = ::std::option::Option::Some(v);
}
pub fn get_revision(&self) -> &[u8] {
match self.revision.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_revision(&mut self) {
self.revision.clear();
}
pub fn has_revision(&self) -> bool {
self.revision.is_some()
}
pub fn set_revision(&mut self, v: ::std::vec::Vec<u8>) {
self.revision = ::protobuf::SingularField::some(v);
}
pub fn mut_revision(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.revision.is_none() {
self.revision.set_default();
}
self.revision.as_mut().unwrap()
}
pub fn take_revision(&mut self) -> ::std::vec::Vec<u8> {
self.revision.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get_bootloader_hash(&self) -> &[u8] {
match self.bootloader_hash.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_bootloader_hash(&mut self) {
self.bootloader_hash.clear();
}
pub fn has_bootloader_hash(&self) -> bool {
self.bootloader_hash.is_some()
}
pub fn set_bootloader_hash(&mut self, v: ::std::vec::Vec<u8>) {
self.bootloader_hash = ::protobuf::SingularField::some(v);
}
pub fn mut_bootloader_hash(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.bootloader_hash.is_none() {
self.bootloader_hash.set_default();
}
self.bootloader_hash.as_mut().unwrap()
}
pub fn take_bootloader_hash(&mut self) -> ::std::vec::Vec<u8> {
self.bootloader_hash.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get_imported(&self) -> bool {
self.imported.unwrap_or(false)
}
pub fn clear_imported(&mut self) {
self.imported = ::std::option::Option::None;
}
pub fn has_imported(&self) -> bool {
self.imported.is_some()
}
pub fn set_imported(&mut self, v: bool) {
self.imported = ::std::option::Option::Some(v);
}
pub fn get_unlocked(&self) -> bool {
self.unlocked.unwrap_or(false)
}
pub fn clear_unlocked(&mut self) {
self.unlocked = ::std::option::Option::None;
}
pub fn has_unlocked(&self) -> bool {
self.unlocked.is_some()
}
pub fn set_unlocked(&mut self, v: bool) {
self.unlocked = ::std::option::Option::Some(v);
}
pub fn get__passphrase_cached(&self) -> bool {
self._passphrase_cached.unwrap_or(false)
}
pub fn clear__passphrase_cached(&mut self) {
self._passphrase_cached = ::std::option::Option::None;
}
pub fn has__passphrase_cached(&self) -> bool {
self._passphrase_cached.is_some()
}
pub fn set__passphrase_cached(&mut self, v: bool) {
self._passphrase_cached = ::std::option::Option::Some(v);
}
pub fn get_firmware_present(&self) -> bool {
self.firmware_present.unwrap_or(false)
}
pub fn clear_firmware_present(&mut self) {
self.firmware_present = ::std::option::Option::None;
}
pub fn has_firmware_present(&self) -> bool {
self.firmware_present.is_some()
}
pub fn set_firmware_present(&mut self, v: bool) {
self.firmware_present = ::std::option::Option::Some(v);
}
pub fn get_needs_backup(&self) -> bool {
self.needs_backup.unwrap_or(false)
}
pub fn clear_needs_backup(&mut self) {
self.needs_backup = ::std::option::Option::None;
}
pub fn has_needs_backup(&self) -> bool {
self.needs_backup.is_some()
}
pub fn set_needs_backup(&mut self, v: bool) {
self.needs_backup = ::std::option::Option::Some(v);
}
pub fn get_flags(&self) -> u32 {
self.flags.unwrap_or(0)
}
pub fn clear_flags(&mut self) {
self.flags = ::std::option::Option::None;
}
pub fn has_flags(&self) -> bool {
self.flags.is_some()
}
pub fn set_flags(&mut self, v: u32) {
self.flags = ::std::option::Option::Some(v);
}
pub fn get_model(&self) -> &str {
match self.model.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_model(&mut self) {
self.model.clear();
}
pub fn has_model(&self) -> bool {
self.model.is_some()
}
pub fn set_model(&mut self, v: ::std::string::String) {
self.model = ::protobuf::SingularField::some(v);
}
pub fn mut_model(&mut self) -> &mut ::std::string::String {
if self.model.is_none() {
self.model.set_default();
}
self.model.as_mut().unwrap()
}
pub fn take_model(&mut self) -> ::std::string::String {
self.model.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_fw_major(&self) -> u32 {
self.fw_major.unwrap_or(0)
}
pub fn clear_fw_major(&mut self) {
self.fw_major = ::std::option::Option::None;
}
pub fn has_fw_major(&self) -> bool {
self.fw_major.is_some()
}
pub fn set_fw_major(&mut self, v: u32) {
self.fw_major = ::std::option::Option::Some(v);
}
pub fn get_fw_minor(&self) -> u32 {
self.fw_minor.unwrap_or(0)
}
pub fn clear_fw_minor(&mut self) {
self.fw_minor = ::std::option::Option::None;
}
pub fn has_fw_minor(&self) -> bool {
self.fw_minor.is_some()
}
pub fn set_fw_minor(&mut self, v: u32) {
self.fw_minor = ::std::option::Option::Some(v);
}
pub fn get_fw_patch(&self) -> u32 {
self.fw_patch.unwrap_or(0)
}
pub fn clear_fw_patch(&mut self) {
self.fw_patch = ::std::option::Option::None;
}
pub fn has_fw_patch(&self) -> bool {
self.fw_patch.is_some()
}
pub fn set_fw_patch(&mut self, v: u32) {
self.fw_patch = ::std::option::Option::Some(v);
}
pub fn get_fw_vendor(&self) -> &str {
match self.fw_vendor.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_fw_vendor(&mut self) {
self.fw_vendor.clear();
}
pub fn has_fw_vendor(&self) -> bool {
self.fw_vendor.is_some()
}
pub fn set_fw_vendor(&mut self, v: ::std::string::String) {
self.fw_vendor = ::protobuf::SingularField::some(v);
}
pub fn mut_fw_vendor(&mut self) -> &mut ::std::string::String {
if self.fw_vendor.is_none() {
self.fw_vendor.set_default();
}
self.fw_vendor.as_mut().unwrap()
}
pub fn take_fw_vendor(&mut self) -> ::std::string::String {
self.fw_vendor.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_fw_vendor_keys(&self) -> &[u8] {
match self.fw_vendor_keys.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_fw_vendor_keys(&mut self) {
self.fw_vendor_keys.clear();
}
pub fn has_fw_vendor_keys(&self) -> bool {
self.fw_vendor_keys.is_some()
}
pub fn set_fw_vendor_keys(&mut self, v: ::std::vec::Vec<u8>) {
self.fw_vendor_keys = ::protobuf::SingularField::some(v);
}
pub fn mut_fw_vendor_keys(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.fw_vendor_keys.is_none() {
self.fw_vendor_keys.set_default();
}
self.fw_vendor_keys.as_mut().unwrap()
}
pub fn take_fw_vendor_keys(&mut self) -> ::std::vec::Vec<u8> {
self.fw_vendor_keys.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get_unfinished_backup(&self) -> bool {
self.unfinished_backup.unwrap_or(false)
}
pub fn clear_unfinished_backup(&mut self) {
self.unfinished_backup = ::std::option::Option::None;
}
pub fn has_unfinished_backup(&self) -> bool {
self.unfinished_backup.is_some()
}
pub fn set_unfinished_backup(&mut self, v: bool) {
self.unfinished_backup = ::std::option::Option::Some(v);
}
pub fn get_no_backup(&self) -> bool {
self.no_backup.unwrap_or(false)
}
pub fn clear_no_backup(&mut self) {
self.no_backup = ::std::option::Option::None;
}
pub fn has_no_backup(&self) -> bool {
self.no_backup.is_some()
}
pub fn set_no_backup(&mut self, v: bool) {
self.no_backup = ::std::option::Option::Some(v);
}
pub fn get_recovery_mode(&self) -> bool {
self.recovery_mode.unwrap_or(false)
}
pub fn clear_recovery_mode(&mut self) {
self.recovery_mode = ::std::option::Option::None;
}
pub fn has_recovery_mode(&self) -> bool {
self.recovery_mode.is_some()
}
pub fn set_recovery_mode(&mut self, v: bool) {
self.recovery_mode = ::std::option::Option::Some(v);
}
pub fn get_capabilities(&self) -> &[Features_Capability] {
&self.capabilities
}
pub fn clear_capabilities(&mut self) {
self.capabilities.clear();
}
pub fn set_capabilities(&mut self, v: ::std::vec::Vec<Features_Capability>) {
self.capabilities = v;
}
pub fn mut_capabilities(&mut self) -> &mut ::std::vec::Vec<Features_Capability> {
&mut self.capabilities
}
pub fn take_capabilities(&mut self) -> ::std::vec::Vec<Features_Capability> {
::std::mem::replace(&mut self.capabilities, ::std::vec::Vec::new())
}
pub fn get_backup_type(&self) -> BackupType {
self.backup_type.unwrap_or(BackupType::Bip39)
}
pub fn clear_backup_type(&mut self) {
self.backup_type = ::std::option::Option::None;
}
pub fn has_backup_type(&self) -> bool {
self.backup_type.is_some()
}
pub fn set_backup_type(&mut self, v: BackupType) {
self.backup_type = ::std::option::Option::Some(v);
}
pub fn get_sd_card_present(&self) -> bool {
self.sd_card_present.unwrap_or(false)
}
pub fn clear_sd_card_present(&mut self) {
self.sd_card_present = ::std::option::Option::None;
}
pub fn has_sd_card_present(&self) -> bool {
self.sd_card_present.is_some()
}
pub fn set_sd_card_present(&mut self, v: bool) {
self.sd_card_present = ::std::option::Option::Some(v);
}
pub fn get_sd_protection(&self) -> bool {
self.sd_protection.unwrap_or(false)
}
pub fn clear_sd_protection(&mut self) {
self.sd_protection = ::std::option::Option::None;
}
pub fn has_sd_protection(&self) -> bool {
self.sd_protection.is_some()
}
pub fn set_sd_protection(&mut self, v: bool) {
self.sd_protection = ::std::option::Option::Some(v);
}
pub fn get_wipe_code_protection(&self) -> bool {
self.wipe_code_protection.unwrap_or(false)
}
pub fn clear_wipe_code_protection(&mut self) {
self.wipe_code_protection = ::std::option::Option::None;
}
pub fn has_wipe_code_protection(&self) -> bool {
self.wipe_code_protection.is_some()
}
pub fn set_wipe_code_protection(&mut self, v: bool) {
self.wipe_code_protection = ::std::option::Option::Some(v);
}
pub fn get_session_id(&self) -> &[u8] {
match self.session_id.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_session_id(&mut self) {
self.session_id.clear();
}
pub fn has_session_id(&self) -> bool {
self.session_id.is_some()
}
pub fn set_session_id(&mut self, v: ::std::vec::Vec<u8>) {
self.session_id = ::protobuf::SingularField::some(v);
}
pub fn mut_session_id(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.session_id.is_none() {
self.session_id.set_default();
}
self.session_id.as_mut().unwrap()
}
pub fn take_session_id(&mut self) -> ::std::vec::Vec<u8> {
self.session_id.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get_passphrase_always_on_device(&self) -> bool {
self.passphrase_always_on_device.unwrap_or(false)
}
pub fn clear_passphrase_always_on_device(&mut self) {
self.passphrase_always_on_device = ::std::option::Option::None;
}
pub fn has_passphrase_always_on_device(&self) -> bool {
self.passphrase_always_on_device.is_some()
}
pub fn set_passphrase_always_on_device(&mut self, v: bool) {
self.passphrase_always_on_device = ::std::option::Option::Some(v);
}
pub fn get_safety_checks(&self) -> SafetyCheckLevel {
self.safety_checks.unwrap_or(SafetyCheckLevel::Strict)
}
pub fn clear_safety_checks(&mut self) {
self.safety_checks = ::std::option::Option::None;
}
pub fn has_safety_checks(&self) -> bool {
self.safety_checks.is_some()
}
pub fn set_safety_checks(&mut self, v: SafetyCheckLevel) {
self.safety_checks = ::std::option::Option::Some(v);
}
pub fn get_auto_lock_delay_ms(&self) -> u32 {
self.auto_lock_delay_ms.unwrap_or(0)
}
pub fn clear_auto_lock_delay_ms(&mut self) {
self.auto_lock_delay_ms = ::std::option::Option::None;
}
pub fn has_auto_lock_delay_ms(&self) -> bool {
self.auto_lock_delay_ms.is_some()
}
pub fn set_auto_lock_delay_ms(&mut self, v: u32) {
self.auto_lock_delay_ms = ::std::option::Option::Some(v);
}
pub fn get_display_rotation(&self) -> u32 {
self.display_rotation.unwrap_or(0)
}
pub fn clear_display_rotation(&mut self) {
self.display_rotation = ::std::option::Option::None;
}
pub fn has_display_rotation(&self) -> bool {
self.display_rotation.is_some()
}
pub fn set_display_rotation(&mut self, v: u32) {
self.display_rotation = ::std::option::Option::Some(v);
}
pub fn get_experimental_features(&self) -> bool {
self.experimental_features.unwrap_or(false)
}
pub fn clear_experimental_features(&mut self) {
self.experimental_features = ::std::option::Option::None;
}
pub fn has_experimental_features(&self) -> bool {
self.experimental_features.is_some()
}
pub fn set_experimental_features(&mut self, v: bool) {
self.experimental_features = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for Features {
fn is_initialized(&self) -> bool {
if self.major_version.is_none() {
return false;
}
if self.minor_version.is_none() {
return false;
}
if self.patch_version.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.vendor)?;
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.major_version = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.minor_version = ::std::option::Option::Some(tmp);
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.patch_version = ::std::option::Option::Some(tmp);
},
5 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.bootloader_mode = ::std::option::Option::Some(tmp);
},
6 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.device_id)?;
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.pin_protection = ::std::option::Option::Some(tmp);
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.passphrase_protection = ::std::option::Option::Some(tmp);
},
9 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.language)?;
},
10 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.label)?;
},
12 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.initialized = ::std::option::Option::Some(tmp);
},
13 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.revision)?;
},
14 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.bootloader_hash)?;
},
15 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.imported = ::std::option::Option::Some(tmp);
},
16 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.unlocked = ::std::option::Option::Some(tmp);
},
17 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self._passphrase_cached = ::std::option::Option::Some(tmp);
},
18 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.firmware_present = ::std::option::Option::Some(tmp);
},
19 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.needs_backup = ::std::option::Option::Some(tmp);
},
20 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.flags = ::std::option::Option::Some(tmp);
},
21 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.model)?;
},
22 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.fw_major = ::std::option::Option::Some(tmp);
},
23 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.fw_minor = ::std::option::Option::Some(tmp);
},
24 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.fw_patch = ::std::option::Option::Some(tmp);
},
25 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.fw_vendor)?;
},
26 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.fw_vendor_keys)?;
},
27 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.unfinished_backup = ::std::option::Option::Some(tmp);
},
28 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.no_backup = ::std::option::Option::Some(tmp);
},
29 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.recovery_mode = ::std::option::Option::Some(tmp);
},
30 => {
::protobuf::rt::read_repeated_enum_with_unknown_fields_into(wire_type, is, &mut self.capabilities, 30, &mut self.unknown_fields)?
},
31 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.backup_type, 31, &mut self.unknown_fields)?
},
32 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.sd_card_present = ::std::option::Option::Some(tmp);
},
33 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.sd_protection = ::std::option::Option::Some(tmp);
},
34 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.wipe_code_protection = ::std::option::Option::Some(tmp);
},
35 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.session_id)?;
},
36 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.passphrase_always_on_device = ::std::option::Option::Some(tmp);
},
37 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.safety_checks, 37, &mut self.unknown_fields)?
},
38 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.auto_lock_delay_ms = ::std::option::Option::Some(tmp);
},
39 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.display_rotation = ::std::option::Option::Some(tmp);
},
40 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.experimental_features = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.vendor.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.major_version {
my_size += ::protobuf::rt::value_size(2, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.minor_version {
my_size += ::protobuf::rt::value_size(3, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.patch_version {
my_size += ::protobuf::rt::value_size(4, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.bootloader_mode {
my_size += 2;
}
if let Some(ref v) = self.device_id.as_ref() {
my_size += ::protobuf::rt::string_size(6, &v);
}
if let Some(v) = self.pin_protection {
my_size += 2;
}
if let Some(v) = self.passphrase_protection {
my_size += 2;
}
if let Some(ref v) = self.language.as_ref() {
my_size += ::protobuf::rt::string_size(9, &v);
}
if let Some(ref v) = self.label.as_ref() {
my_size += ::protobuf::rt::string_size(10, &v);
}
if let Some(v) = self.initialized {
my_size += 2;
}
if let Some(ref v) = self.revision.as_ref() {
my_size += ::protobuf::rt::bytes_size(13, &v);
}
if let Some(ref v) = self.bootloader_hash.as_ref() {
my_size += ::protobuf::rt::bytes_size(14, &v);
}
if let Some(v) = self.imported {
my_size += 2;
}
if let Some(v) = self.unlocked {
my_size += 3;
}
if let Some(v) = self._passphrase_cached {
my_size += 3;
}
if let Some(v) = self.firmware_present {
my_size += 3;
}
if let Some(v) = self.needs_backup {
my_size += 3;
}
if let Some(v) = self.flags {
my_size += ::protobuf::rt::value_size(20, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(ref v) = self.model.as_ref() {
my_size += ::protobuf::rt::string_size(21, &v);
}
if let Some(v) = self.fw_major {
my_size += ::protobuf::rt::value_size(22, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.fw_minor {
my_size += ::protobuf::rt::value_size(23, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.fw_patch {
my_size += ::protobuf::rt::value_size(24, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(ref v) = self.fw_vendor.as_ref() {
my_size += ::protobuf::rt::string_size(25, &v);
}
if let Some(ref v) = self.fw_vendor_keys.as_ref() {
my_size += ::protobuf::rt::bytes_size(26, &v);
}
if let Some(v) = self.unfinished_backup {
my_size += 3;
}
if let Some(v) = self.no_backup {
my_size += 3;
}
if let Some(v) = self.recovery_mode {
my_size += 3;
}
for value in &self.capabilities {
my_size += ::protobuf::rt::enum_size(30, *value);
};
if let Some(v) = self.backup_type {
my_size += ::protobuf::rt::enum_size(31, v);
}
if let Some(v) = self.sd_card_present {
my_size += 3;
}
if let Some(v) = self.sd_protection {
my_size += 3;
}
if let Some(v) = self.wipe_code_protection {
my_size += 3;
}
if let Some(ref v) = self.session_id.as_ref() {
my_size += ::protobuf::rt::bytes_size(35, &v);
}
if let Some(v) = self.passphrase_always_on_device {
my_size += 3;
}
if let Some(v) = self.safety_checks {
my_size += ::protobuf::rt::enum_size(37, v);
}
if let Some(v) = self.auto_lock_delay_ms {
my_size += ::protobuf::rt::value_size(38, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.display_rotation {
my_size += ::protobuf::rt::value_size(39, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.experimental_features {
my_size += 3;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.vendor.as_ref() {
os.write_string(1, &v)?;
}
if let Some(v) = self.major_version {
os.write_uint32(2, v)?;
}
if let Some(v) = self.minor_version {
os.write_uint32(3, v)?;
}
if let Some(v) = self.patch_version {
os.write_uint32(4, v)?;
}
if let Some(v) = self.bootloader_mode {
os.write_bool(5, v)?;
}
if let Some(ref v) = self.device_id.as_ref() {
os.write_string(6, &v)?;
}
if let Some(v) = self.pin_protection {
os.write_bool(7, v)?;
}
if let Some(v) = self.passphrase_protection {
os.write_bool(8, v)?;
}
if let Some(ref v) = self.language.as_ref() {
os.write_string(9, &v)?;
}
if let Some(ref v) = self.label.as_ref() {
os.write_string(10, &v)?;
}
if let Some(v) = self.initialized {
os.write_bool(12, v)?;
}
if let Some(ref v) = self.revision.as_ref() {
os.write_bytes(13, &v)?;
}
if let Some(ref v) = self.bootloader_hash.as_ref() {
os.write_bytes(14, &v)?;
}
if let Some(v) = self.imported {
os.write_bool(15, v)?;
}
if let Some(v) = self.unlocked {
os.write_bool(16, v)?;
}
if let Some(v) = self._passphrase_cached {
os.write_bool(17, v)?;
}
if let Some(v) = self.firmware_present {
os.write_bool(18, v)?;
}
if let Some(v) = self.needs_backup {
os.write_bool(19, v)?;
}
if let Some(v) = self.flags {
os.write_uint32(20, v)?;
}
if let Some(ref v) = self.model.as_ref() {
os.write_string(21, &v)?;
}
if let Some(v) = self.fw_major {
os.write_uint32(22, v)?;
}
if let Some(v) = self.fw_minor {
os.write_uint32(23, v)?;
}
if let Some(v) = self.fw_patch {
os.write_uint32(24, v)?;
}
if let Some(ref v) = self.fw_vendor.as_ref() {
os.write_string(25, &v)?;
}
if let Some(ref v) = self.fw_vendor_keys.as_ref() {
os.write_bytes(26, &v)?;
}
if let Some(v) = self.unfinished_backup {
os.write_bool(27, v)?;
}
if let Some(v) = self.no_backup {
os.write_bool(28, v)?;
}
if let Some(v) = self.recovery_mode {
os.write_bool(29, v)?;
}
for v in &self.capabilities {
os.write_enum(30, ::protobuf::ProtobufEnum::value(v))?;
};
if let Some(v) = self.backup_type {
os.write_enum(31, ::protobuf::ProtobufEnum::value(&v))?;
}
if let Some(v) = self.sd_card_present {
os.write_bool(32, v)?;
}
if let Some(v) = self.sd_protection {
os.write_bool(33, v)?;
}
if let Some(v) = self.wipe_code_protection {
os.write_bool(34, v)?;
}
if let Some(ref v) = self.session_id.as_ref() {
os.write_bytes(35, &v)?;
}
if let Some(v) = self.passphrase_always_on_device {
os.write_bool(36, v)?;
}
if let Some(v) = self.safety_checks {
os.write_enum(37, ::protobuf::ProtobufEnum::value(&v))?;
}
if let Some(v) = self.auto_lock_delay_ms {
os.write_uint32(38, v)?;
}
if let Some(v) = self.display_rotation {
os.write_uint32(39, v)?;
}
if let Some(v) = self.experimental_features {
os.write_bool(40, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Features {
Features::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"vendor",
|m: &Features| { &m.vendor },
|m: &mut Features| { &mut m.vendor },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"major_version",
|m: &Features| { &m.major_version },
|m: &mut Features| { &mut m.major_version },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"minor_version",
|m: &Features| { &m.minor_version },
|m: &mut Features| { &mut m.minor_version },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"patch_version",
|m: &Features| { &m.patch_version },
|m: &mut Features| { &mut m.patch_version },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"bootloader_mode",
|m: &Features| { &m.bootloader_mode },
|m: &mut Features| { &mut m.bootloader_mode },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"device_id",
|m: &Features| { &m.device_id },
|m: &mut Features| { &mut m.device_id },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"pin_protection",
|m: &Features| { &m.pin_protection },
|m: &mut Features| { &mut m.pin_protection },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"passphrase_protection",
|m: &Features| { &m.passphrase_protection },
|m: &mut Features| { &mut m.passphrase_protection },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"language",
|m: &Features| { &m.language },
|m: &mut Features| { &mut m.language },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"label",
|m: &Features| { &m.label },
|m: &mut Features| { &mut m.label },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"initialized",
|m: &Features| { &m.initialized },
|m: &mut Features| { &mut m.initialized },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"revision",
|m: &Features| { &m.revision },
|m: &mut Features| { &mut m.revision },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"bootloader_hash",
|m: &Features| { &m.bootloader_hash },
|m: &mut Features| { &mut m.bootloader_hash },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"imported",
|m: &Features| { &m.imported },
|m: &mut Features| { &mut m.imported },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"unlocked",
|m: &Features| { &m.unlocked },
|m: &mut Features| { &mut m.unlocked },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"_passphrase_cached",
|m: &Features| { &m._passphrase_cached },
|m: &mut Features| { &mut m._passphrase_cached },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"firmware_present",
|m: &Features| { &m.firmware_present },
|m: &mut Features| { &mut m.firmware_present },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"needs_backup",
|m: &Features| { &m.needs_backup },
|m: &mut Features| { &mut m.needs_backup },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"flags",
|m: &Features| { &m.flags },
|m: &mut Features| { &mut m.flags },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"model",
|m: &Features| { &m.model },
|m: &mut Features| { &mut m.model },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"fw_major",
|m: &Features| { &m.fw_major },
|m: &mut Features| { &mut m.fw_major },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"fw_minor",
|m: &Features| { &m.fw_minor },
|m: &mut Features| { &mut m.fw_minor },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"fw_patch",
|m: &Features| { &m.fw_patch },
|m: &mut Features| { &mut m.fw_patch },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"fw_vendor",
|m: &Features| { &m.fw_vendor },
|m: &mut Features| { &mut m.fw_vendor },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"fw_vendor_keys",
|m: &Features| { &m.fw_vendor_keys },
|m: &mut Features| { &mut m.fw_vendor_keys },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"unfinished_backup",
|m: &Features| { &m.unfinished_backup },
|m: &mut Features| { &mut m.unfinished_backup },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"no_backup",
|m: &Features| { &m.no_backup },
|m: &mut Features| { &mut m.no_backup },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"recovery_mode",
|m: &Features| { &m.recovery_mode },
|m: &mut Features| { &mut m.recovery_mode },
));
fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum<Features_Capability>>(
"capabilities",
|m: &Features| { &m.capabilities },
|m: &mut Features| { &mut m.capabilities },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<BackupType>>(
"backup_type",
|m: &Features| { &m.backup_type },
|m: &mut Features| { &mut m.backup_type },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"sd_card_present",
|m: &Features| { &m.sd_card_present },
|m: &mut Features| { &mut m.sd_card_present },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"sd_protection",
|m: &Features| { &m.sd_protection },
|m: &mut Features| { &mut m.sd_protection },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"wipe_code_protection",
|m: &Features| { &m.wipe_code_protection },
|m: &mut Features| { &mut m.wipe_code_protection },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"session_id",
|m: &Features| { &m.session_id },
|m: &mut Features| { &mut m.session_id },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"passphrase_always_on_device",
|m: &Features| { &m.passphrase_always_on_device },
|m: &mut Features| { &mut m.passphrase_always_on_device },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<SafetyCheckLevel>>(
"safety_checks",
|m: &Features| { &m.safety_checks },
|m: &mut Features| { &mut m.safety_checks },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"auto_lock_delay_ms",
|m: &Features| { &m.auto_lock_delay_ms },
|m: &mut Features| { &mut m.auto_lock_delay_ms },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"display_rotation",
|m: &Features| { &m.display_rotation },
|m: &mut Features| { &mut m.display_rotation },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"experimental_features",
|m: &Features| { &m.experimental_features },
|m: &mut Features| { &mut m.experimental_features },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Features>(
"Features",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Features {
static instance: ::protobuf::rt::LazyV2<Features> = ::protobuf::rt::LazyV2::INIT;
instance.get(Features::new)
}
}
impl ::protobuf::Clear for Features {
fn clear(&mut self) {
self.vendor.clear();
self.major_version = ::std::option::Option::None;
self.minor_version = ::std::option::Option::None;
self.patch_version = ::std::option::Option::None;
self.bootloader_mode = ::std::option::Option::None;
self.device_id.clear();
self.pin_protection = ::std::option::Option::None;
self.passphrase_protection = ::std::option::Option::None;
self.language.clear();
self.label.clear();
self.initialized = ::std::option::Option::None;
self.revision.clear();
self.bootloader_hash.clear();
self.imported = ::std::option::Option::None;
self.unlocked = ::std::option::Option::None;
self._passphrase_cached = ::std::option::Option::None;
self.firmware_present = ::std::option::Option::None;
self.needs_backup = ::std::option::Option::None;
self.flags = ::std::option::Option::None;
self.model.clear();
self.fw_major = ::std::option::Option::None;
self.fw_minor = ::std::option::Option::None;
self.fw_patch = ::std::option::Option::None;
self.fw_vendor.clear();
self.fw_vendor_keys.clear();
self.unfinished_backup = ::std::option::Option::None;
self.no_backup = ::std::option::Option::None;
self.recovery_mode = ::std::option::Option::None;
self.capabilities.clear();
self.backup_type = ::std::option::Option::None;
self.sd_card_present = ::std::option::Option::None;
self.sd_protection = ::std::option::Option::None;
self.wipe_code_protection = ::std::option::Option::None;
self.session_id.clear();
self.passphrase_always_on_device = ::std::option::Option::None;
self.safety_checks = ::std::option::Option::None;
self.auto_lock_delay_ms = ::std::option::Option::None;
self.display_rotation = ::std::option::Option::None;
self.experimental_features = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Features {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Features {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum Features_Capability {
Capability_Bitcoin = 1,
Capability_Bitcoin_like = 2,
Capability_Binance = 3,
Capability_Cardano = 4,
Capability_Crypto = 5,
Capability_EOS = 6,
Capability_Ethereum = 7,
Capability_Lisk = 8,
Capability_Monero = 9,
Capability_NEM = 10,
Capability_Ripple = 11,
Capability_Stellar = 12,
Capability_Tezos = 13,
Capability_U2F = 14,
Capability_Shamir = 15,
Capability_ShamirGroups = 16,
Capability_PassphraseEntry = 17,
}
impl ::protobuf::ProtobufEnum for Features_Capability {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<Features_Capability> {
match value {
1 => ::std::option::Option::Some(Features_Capability::Capability_Bitcoin),
2 => ::std::option::Option::Some(Features_Capability::Capability_Bitcoin_like),
3 => ::std::option::Option::Some(Features_Capability::Capability_Binance),
4 => ::std::option::Option::Some(Features_Capability::Capability_Cardano),
5 => ::std::option::Option::Some(Features_Capability::Capability_Crypto),
6 => ::std::option::Option::Some(Features_Capability::Capability_EOS),
7 => ::std::option::Option::Some(Features_Capability::Capability_Ethereum),
8 => ::std::option::Option::Some(Features_Capability::Capability_Lisk),
9 => ::std::option::Option::Some(Features_Capability::Capability_Monero),
10 => ::std::option::Option::Some(Features_Capability::Capability_NEM),
11 => ::std::option::Option::Some(Features_Capability::Capability_Ripple),
12 => ::std::option::Option::Some(Features_Capability::Capability_Stellar),
13 => ::std::option::Option::Some(Features_Capability::Capability_Tezos),
14 => ::std::option::Option::Some(Features_Capability::Capability_U2F),
15 => ::std::option::Option::Some(Features_Capability::Capability_Shamir),
16 => ::std::option::Option::Some(Features_Capability::Capability_ShamirGroups),
17 => ::std::option::Option::Some(Features_Capability::Capability_PassphraseEntry),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [Features_Capability] = &[
Features_Capability::Capability_Bitcoin,
Features_Capability::Capability_Bitcoin_like,
Features_Capability::Capability_Binance,
Features_Capability::Capability_Cardano,
Features_Capability::Capability_Crypto,
Features_Capability::Capability_EOS,
Features_Capability::Capability_Ethereum,
Features_Capability::Capability_Lisk,
Features_Capability::Capability_Monero,
Features_Capability::Capability_NEM,
Features_Capability::Capability_Ripple,
Features_Capability::Capability_Stellar,
Features_Capability::Capability_Tezos,
Features_Capability::Capability_U2F,
Features_Capability::Capability_Shamir,
Features_Capability::Capability_ShamirGroups,
Features_Capability::Capability_PassphraseEntry,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<Features_Capability>("Features.Capability", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for Features_Capability {
}
impl ::std::default::Default for Features_Capability {
fn default() -> Self {
Features_Capability::Capability_Bitcoin
}
}
impl ::protobuf::reflect::ProtobufValue for Features_Capability {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct LockDevice {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a LockDevice {
fn default() -> &'a LockDevice {
<LockDevice as ::protobuf::Message>::default_instance()
}
}
impl LockDevice {
pub fn new() -> LockDevice {
::std::default::Default::default()
}
}
impl ::protobuf::Message for LockDevice {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> LockDevice {
LockDevice::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<LockDevice>(
"LockDevice",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static LockDevice {
static instance: ::protobuf::rt::LazyV2<LockDevice> = ::protobuf::rt::LazyV2::INIT;
instance.get(LockDevice::new)
}
}
impl ::protobuf::Clear for LockDevice {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for LockDevice {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for LockDevice {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct EndSession {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a EndSession {
fn default() -> &'a EndSession {
<EndSession as ::protobuf::Message>::default_instance()
}
}
impl EndSession {
pub fn new() -> EndSession {
::std::default::Default::default()
}
}
impl ::protobuf::Message for EndSession {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> EndSession {
EndSession::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<EndSession>(
"EndSession",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static EndSession {
static instance: ::protobuf::rt::LazyV2<EndSession> = ::protobuf::rt::LazyV2::INIT;
instance.get(EndSession::new)
}
}
impl ::protobuf::Clear for EndSession {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for EndSession {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for EndSession {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ApplySettings {
language: ::protobuf::SingularField<::std::string::String>,
label: ::protobuf::SingularField<::std::string::String>,
use_passphrase: ::std::option::Option<bool>,
homescreen: ::protobuf::SingularField<::std::vec::Vec<u8>>,
_passphrase_source: ::std::option::Option<u32>,
auto_lock_delay_ms: ::std::option::Option<u32>,
display_rotation: ::std::option::Option<u32>,
passphrase_always_on_device: ::std::option::Option<bool>,
safety_checks: ::std::option::Option<SafetyCheckLevel>,
experimental_features: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ApplySettings {
fn default() -> &'a ApplySettings {
<ApplySettings as ::protobuf::Message>::default_instance()
}
}
impl ApplySettings {
pub fn new() -> ApplySettings {
::std::default::Default::default()
}
pub fn get_language(&self) -> &str {
match self.language.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_language(&mut self) {
self.language.clear();
}
pub fn has_language(&self) -> bool {
self.language.is_some()
}
pub fn set_language(&mut self, v: ::std::string::String) {
self.language = ::protobuf::SingularField::some(v);
}
pub fn mut_language(&mut self) -> &mut ::std::string::String {
if self.language.is_none() {
self.language.set_default();
}
self.language.as_mut().unwrap()
}
pub fn take_language(&mut self) -> ::std::string::String {
self.language.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_label(&self) -> &str {
match self.label.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_label(&mut self) {
self.label.clear();
}
pub fn has_label(&self) -> bool {
self.label.is_some()
}
pub fn set_label(&mut self, v: ::std::string::String) {
self.label = ::protobuf::SingularField::some(v);
}
pub fn mut_label(&mut self) -> &mut ::std::string::String {
if self.label.is_none() {
self.label.set_default();
}
self.label.as_mut().unwrap()
}
pub fn take_label(&mut self) -> ::std::string::String {
self.label.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_use_passphrase(&self) -> bool {
self.use_passphrase.unwrap_or(false)
}
pub fn clear_use_passphrase(&mut self) {
self.use_passphrase = ::std::option::Option::None;
}
pub fn has_use_passphrase(&self) -> bool {
self.use_passphrase.is_some()
}
pub fn set_use_passphrase(&mut self, v: bool) {
self.use_passphrase = ::std::option::Option::Some(v);
}
pub fn get_homescreen(&self) -> &[u8] {
match self.homescreen.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_homescreen(&mut self) {
self.homescreen.clear();
}
pub fn has_homescreen(&self) -> bool {
self.homescreen.is_some()
}
pub fn set_homescreen(&mut self, v: ::std::vec::Vec<u8>) {
self.homescreen = ::protobuf::SingularField::some(v);
}
pub fn mut_homescreen(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.homescreen.is_none() {
self.homescreen.set_default();
}
self.homescreen.as_mut().unwrap()
}
pub fn take_homescreen(&mut self) -> ::std::vec::Vec<u8> {
self.homescreen.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
pub fn get__passphrase_source(&self) -> u32 {
self._passphrase_source.unwrap_or(0)
}
pub fn clear__passphrase_source(&mut self) {
self._passphrase_source = ::std::option::Option::None;
}
pub fn has__passphrase_source(&self) -> bool {
self._passphrase_source.is_some()
}
pub fn set__passphrase_source(&mut self, v: u32) {
self._passphrase_source = ::std::option::Option::Some(v);
}
pub fn get_auto_lock_delay_ms(&self) -> u32 {
self.auto_lock_delay_ms.unwrap_or(0)
}
pub fn clear_auto_lock_delay_ms(&mut self) {
self.auto_lock_delay_ms = ::std::option::Option::None;
}
pub fn has_auto_lock_delay_ms(&self) -> bool {
self.auto_lock_delay_ms.is_some()
}
pub fn set_auto_lock_delay_ms(&mut self, v: u32) {
self.auto_lock_delay_ms = ::std::option::Option::Some(v);
}
pub fn get_display_rotation(&self) -> u32 {
self.display_rotation.unwrap_or(0)
}
pub fn clear_display_rotation(&mut self) {
self.display_rotation = ::std::option::Option::None;
}
pub fn has_display_rotation(&self) -> bool {
self.display_rotation.is_some()
}
pub fn set_display_rotation(&mut self, v: u32) {
self.display_rotation = ::std::option::Option::Some(v);
}
pub fn get_passphrase_always_on_device(&self) -> bool {
self.passphrase_always_on_device.unwrap_or(false)
}
pub fn clear_passphrase_always_on_device(&mut self) {
self.passphrase_always_on_device = ::std::option::Option::None;
}
pub fn has_passphrase_always_on_device(&self) -> bool {
self.passphrase_always_on_device.is_some()
}
pub fn set_passphrase_always_on_device(&mut self, v: bool) {
self.passphrase_always_on_device = ::std::option::Option::Some(v);
}
pub fn get_safety_checks(&self) -> SafetyCheckLevel {
self.safety_checks.unwrap_or(SafetyCheckLevel::Strict)
}
pub fn clear_safety_checks(&mut self) {
self.safety_checks = ::std::option::Option::None;
}
pub fn has_safety_checks(&self) -> bool {
self.safety_checks.is_some()
}
pub fn set_safety_checks(&mut self, v: SafetyCheckLevel) {
self.safety_checks = ::std::option::Option::Some(v);
}
pub fn get_experimental_features(&self) -> bool {
self.experimental_features.unwrap_or(false)
}
pub fn clear_experimental_features(&mut self) {
self.experimental_features = ::std::option::Option::None;
}
pub fn has_experimental_features(&self) -> bool {
self.experimental_features.is_some()
}
pub fn set_experimental_features(&mut self, v: bool) {
self.experimental_features = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for ApplySettings {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.language)?;
},
2 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.label)?;
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.use_passphrase = ::std::option::Option::Some(tmp);
},
4 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.homescreen)?;
},
5 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self._passphrase_source = ::std::option::Option::Some(tmp);
},
6 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.auto_lock_delay_ms = ::std::option::Option::Some(tmp);
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.display_rotation = ::std::option::Option::Some(tmp);
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.passphrase_always_on_device = ::std::option::Option::Some(tmp);
},
9 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.safety_checks, 9, &mut self.unknown_fields)?
},
10 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.experimental_features = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.language.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(ref v) = self.label.as_ref() {
my_size += ::protobuf::rt::string_size(2, &v);
}
if let Some(v) = self.use_passphrase {
my_size += 2;
}
if let Some(ref v) = self.homescreen.as_ref() {
my_size += ::protobuf::rt::bytes_size(4, &v);
}
if let Some(v) = self._passphrase_source {
my_size += ::protobuf::rt::value_size(5, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.auto_lock_delay_ms {
my_size += ::protobuf::rt::value_size(6, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.display_rotation {
my_size += ::protobuf::rt::value_size(7, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.passphrase_always_on_device {
my_size += 2;
}
if let Some(v) = self.safety_checks {
my_size += ::protobuf::rt::enum_size(9, v);
}
if let Some(v) = self.experimental_features {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.language.as_ref() {
os.write_string(1, &v)?;
}
if let Some(ref v) = self.label.as_ref() {
os.write_string(2, &v)?;
}
if let Some(v) = self.use_passphrase {
os.write_bool(3, v)?;
}
if let Some(ref v) = self.homescreen.as_ref() {
os.write_bytes(4, &v)?;
}
if let Some(v) = self._passphrase_source {
os.write_uint32(5, v)?;
}
if let Some(v) = self.auto_lock_delay_ms {
os.write_uint32(6, v)?;
}
if let Some(v) = self.display_rotation {
os.write_uint32(7, v)?;
}
if let Some(v) = self.passphrase_always_on_device {
os.write_bool(8, v)?;
}
if let Some(v) = self.safety_checks {
os.write_enum(9, ::protobuf::ProtobufEnum::value(&v))?;
}
if let Some(v) = self.experimental_features {
os.write_bool(10, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ApplySettings {
ApplySettings::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"language",
|m: &ApplySettings| { &m.language },
|m: &mut ApplySettings| { &mut m.language },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"label",
|m: &ApplySettings| { &m.label },
|m: &mut ApplySettings| { &mut m.label },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"use_passphrase",
|m: &ApplySettings| { &m.use_passphrase },
|m: &mut ApplySettings| { &mut m.use_passphrase },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"homescreen",
|m: &ApplySettings| { &m.homescreen },
|m: &mut ApplySettings| { &mut m.homescreen },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"_passphrase_source",
|m: &ApplySettings| { &m._passphrase_source },
|m: &mut ApplySettings| { &mut m._passphrase_source },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"auto_lock_delay_ms",
|m: &ApplySettings| { &m.auto_lock_delay_ms },
|m: &mut ApplySettings| { &mut m.auto_lock_delay_ms },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"display_rotation",
|m: &ApplySettings| { &m.display_rotation },
|m: &mut ApplySettings| { &mut m.display_rotation },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"passphrase_always_on_device",
|m: &ApplySettings| { &m.passphrase_always_on_device },
|m: &mut ApplySettings| { &mut m.passphrase_always_on_device },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<SafetyCheckLevel>>(
"safety_checks",
|m: &ApplySettings| { &m.safety_checks },
|m: &mut ApplySettings| { &mut m.safety_checks },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"experimental_features",
|m: &ApplySettings| { &m.experimental_features },
|m: &mut ApplySettings| { &mut m.experimental_features },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ApplySettings>(
"ApplySettings",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ApplySettings {
static instance: ::protobuf::rt::LazyV2<ApplySettings> = ::protobuf::rt::LazyV2::INIT;
instance.get(ApplySettings::new)
}
}
impl ::protobuf::Clear for ApplySettings {
fn clear(&mut self) {
self.language.clear();
self.label.clear();
self.use_passphrase = ::std::option::Option::None;
self.homescreen.clear();
self._passphrase_source = ::std::option::Option::None;
self.auto_lock_delay_ms = ::std::option::Option::None;
self.display_rotation = ::std::option::Option::None;
self.passphrase_always_on_device = ::std::option::Option::None;
self.safety_checks = ::std::option::Option::None;
self.experimental_features = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ApplySettings {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ApplySettings {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ApplyFlags {
flags: ::std::option::Option<u32>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ApplyFlags {
fn default() -> &'a ApplyFlags {
<ApplyFlags as ::protobuf::Message>::default_instance()
}
}
impl ApplyFlags {
pub fn new() -> ApplyFlags {
::std::default::Default::default()
}
pub fn get_flags(&self) -> u32 {
self.flags.unwrap_or(0)
}
pub fn clear_flags(&mut self) {
self.flags = ::std::option::Option::None;
}
pub fn has_flags(&self) -> bool {
self.flags.is_some()
}
pub fn set_flags(&mut self, v: u32) {
self.flags = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for ApplyFlags {
fn is_initialized(&self) -> bool {
if self.flags.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.flags = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.flags {
my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.flags {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ApplyFlags {
ApplyFlags::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"flags",
|m: &ApplyFlags| { &m.flags },
|m: &mut ApplyFlags| { &mut m.flags },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ApplyFlags>(
"ApplyFlags",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ApplyFlags {
static instance: ::protobuf::rt::LazyV2<ApplyFlags> = ::protobuf::rt::LazyV2::INIT;
instance.get(ApplyFlags::new)
}
}
impl ::protobuf::Clear for ApplyFlags {
fn clear(&mut self) {
self.flags = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ApplyFlags {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ApplyFlags {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ChangePin {
remove: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ChangePin {
fn default() -> &'a ChangePin {
<ChangePin as ::protobuf::Message>::default_instance()
}
}
impl ChangePin {
pub fn new() -> ChangePin {
::std::default::Default::default()
}
pub fn get_remove(&self) -> bool {
self.remove.unwrap_or(false)
}
pub fn clear_remove(&mut self) {
self.remove = ::std::option::Option::None;
}
pub fn has_remove(&self) -> bool {
self.remove.is_some()
}
pub fn set_remove(&mut self, v: bool) {
self.remove = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for ChangePin {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.remove = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.remove {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.remove {
os.write_bool(1, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ChangePin {
ChangePin::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"remove",
|m: &ChangePin| { &m.remove },
|m: &mut ChangePin| { &mut m.remove },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ChangePin>(
"ChangePin",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ChangePin {
static instance: ::protobuf::rt::LazyV2<ChangePin> = ::protobuf::rt::LazyV2::INIT;
instance.get(ChangePin::new)
}
}
impl ::protobuf::Clear for ChangePin {
fn clear(&mut self) {
self.remove = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ChangePin {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ChangePin {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ChangeWipeCode {
remove: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ChangeWipeCode {
fn default() -> &'a ChangeWipeCode {
<ChangeWipeCode as ::protobuf::Message>::default_instance()
}
}
impl ChangeWipeCode {
pub fn new() -> ChangeWipeCode {
::std::default::Default::default()
}
pub fn get_remove(&self) -> bool {
self.remove.unwrap_or(false)
}
pub fn clear_remove(&mut self) {
self.remove = ::std::option::Option::None;
}
pub fn has_remove(&self) -> bool {
self.remove.is_some()
}
pub fn set_remove(&mut self, v: bool) {
self.remove = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for ChangeWipeCode {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.remove = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.remove {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.remove {
os.write_bool(1, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ChangeWipeCode {
ChangeWipeCode::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"remove",
|m: &ChangeWipeCode| { &m.remove },
|m: &mut ChangeWipeCode| { &mut m.remove },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ChangeWipeCode>(
"ChangeWipeCode",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ChangeWipeCode {
static instance: ::protobuf::rt::LazyV2<ChangeWipeCode> = ::protobuf::rt::LazyV2::INIT;
instance.get(ChangeWipeCode::new)
}
}
impl ::protobuf::Clear for ChangeWipeCode {
fn clear(&mut self) {
self.remove = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ChangeWipeCode {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ChangeWipeCode {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct SdProtect {
operation: ::std::option::Option<SdProtect_SdProtectOperationType>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a SdProtect {
fn default() -> &'a SdProtect {
<SdProtect as ::protobuf::Message>::default_instance()
}
}
impl SdProtect {
pub fn new() -> SdProtect {
::std::default::Default::default()
}
pub fn get_operation(&self) -> SdProtect_SdProtectOperationType {
self.operation.unwrap_or(SdProtect_SdProtectOperationType::DISABLE)
}
pub fn clear_operation(&mut self) {
self.operation = ::std::option::Option::None;
}
pub fn has_operation(&self) -> bool {
self.operation.is_some()
}
pub fn set_operation(&mut self, v: SdProtect_SdProtectOperationType) {
self.operation = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for SdProtect {
fn is_initialized(&self) -> bool {
if self.operation.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.operation, 1, &mut self.unknown_fields)?
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.operation {
my_size += ::protobuf::rt::enum_size(1, v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.operation {
os.write_enum(1, ::protobuf::ProtobufEnum::value(&v))?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> SdProtect {
SdProtect::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<SdProtect_SdProtectOperationType>>(
"operation",
|m: &SdProtect| { &m.operation },
|m: &mut SdProtect| { &mut m.operation },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<SdProtect>(
"SdProtect",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static SdProtect {
static instance: ::protobuf::rt::LazyV2<SdProtect> = ::protobuf::rt::LazyV2::INIT;
instance.get(SdProtect::new)
}
}
impl ::protobuf::Clear for SdProtect {
fn clear(&mut self) {
self.operation = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for SdProtect {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for SdProtect {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum SdProtect_SdProtectOperationType {
DISABLE = 0,
ENABLE = 1,
REFRESH = 2,
}
impl ::protobuf::ProtobufEnum for SdProtect_SdProtectOperationType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<SdProtect_SdProtectOperationType> {
match value {
0 => ::std::option::Option::Some(SdProtect_SdProtectOperationType::DISABLE),
1 => ::std::option::Option::Some(SdProtect_SdProtectOperationType::ENABLE),
2 => ::std::option::Option::Some(SdProtect_SdProtectOperationType::REFRESH),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [SdProtect_SdProtectOperationType] = &[
SdProtect_SdProtectOperationType::DISABLE,
SdProtect_SdProtectOperationType::ENABLE,
SdProtect_SdProtectOperationType::REFRESH,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<SdProtect_SdProtectOperationType>("SdProtect.SdProtectOperationType", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for SdProtect_SdProtectOperationType {
}
impl ::std::default::Default for SdProtect_SdProtectOperationType {
fn default() -> Self {
SdProtect_SdProtectOperationType::DISABLE
}
}
impl ::protobuf::reflect::ProtobufValue for SdProtect_SdProtectOperationType {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Ping {
message: ::protobuf::SingularField<::std::string::String>,
button_protection: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Ping {
fn default() -> &'a Ping {
<Ping as ::protobuf::Message>::default_instance()
}
}
impl Ping {
pub fn new() -> Ping {
::std::default::Default::default()
}
pub fn get_message(&self) -> &str {
match self.message.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_message(&mut self) {
self.message.clear();
}
pub fn has_message(&self) -> bool {
self.message.is_some()
}
pub fn set_message(&mut self, v: ::std::string::String) {
self.message = ::protobuf::SingularField::some(v);
}
pub fn mut_message(&mut self) -> &mut ::std::string::String {
if self.message.is_none() {
self.message.set_default();
}
self.message.as_mut().unwrap()
}
pub fn take_message(&mut self) -> ::std::string::String {
self.message.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_button_protection(&self) -> bool {
self.button_protection.unwrap_or(false)
}
pub fn clear_button_protection(&mut self) {
self.button_protection = ::std::option::Option::None;
}
pub fn has_button_protection(&self) -> bool {
self.button_protection.is_some()
}
pub fn set_button_protection(&mut self, v: bool) {
self.button_protection = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for Ping {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.message)?;
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.button_protection = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.message.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
if let Some(v) = self.button_protection {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.message.as_ref() {
os.write_string(1, &v)?;
}
if let Some(v) = self.button_protection {
os.write_bool(2, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Ping {
Ping::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"message",
|m: &Ping| { &m.message },
|m: &mut Ping| { &mut m.message },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"button_protection",
|m: &Ping| { &m.button_protection },
|m: &mut Ping| { &mut m.button_protection },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Ping>(
"Ping",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Ping {
static instance: ::protobuf::rt::LazyV2<Ping> = ::protobuf::rt::LazyV2::INIT;
instance.get(Ping::new)
}
}
impl ::protobuf::Clear for Ping {
fn clear(&mut self) {
self.message.clear();
self.button_protection = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Ping {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Ping {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Cancel {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Cancel {
fn default() -> &'a Cancel {
<Cancel as ::protobuf::Message>::default_instance()
}
}
impl Cancel {
pub fn new() -> Cancel {
::std::default::Default::default()
}
}
impl ::protobuf::Message for Cancel {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Cancel {
Cancel::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<Cancel>(
"Cancel",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Cancel {
static instance: ::protobuf::rt::LazyV2<Cancel> = ::protobuf::rt::LazyV2::INIT;
instance.get(Cancel::new)
}
}
impl ::protobuf::Clear for Cancel {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Cancel {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Cancel {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct GetEntropy {
size: ::std::option::Option<u32>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a GetEntropy {
fn default() -> &'a GetEntropy {
<GetEntropy as ::protobuf::Message>::default_instance()
}
}
impl GetEntropy {
pub fn new() -> GetEntropy {
::std::default::Default::default()
}
pub fn get_size(&self) -> u32 {
self.size.unwrap_or(0)
}
pub fn clear_size(&mut self) {
self.size = ::std::option::Option::None;
}
pub fn has_size(&self) -> bool {
self.size.is_some()
}
pub fn set_size(&mut self, v: u32) {
self.size = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for GetEntropy {
fn is_initialized(&self) -> bool {
if self.size.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.size = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.size {
my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.size {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> GetEntropy {
GetEntropy::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"size",
|m: &GetEntropy| { &m.size },
|m: &mut GetEntropy| { &mut m.size },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<GetEntropy>(
"GetEntropy",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static GetEntropy {
static instance: ::protobuf::rt::LazyV2<GetEntropy> = ::protobuf::rt::LazyV2::INIT;
instance.get(GetEntropy::new)
}
}
impl ::protobuf::Clear for GetEntropy {
fn clear(&mut self) {
self.size = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for GetEntropy {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for GetEntropy {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct Entropy {
entropy: ::protobuf::SingularField<::std::vec::Vec<u8>>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a Entropy {
fn default() -> &'a Entropy {
<Entropy as ::protobuf::Message>::default_instance()
}
}
impl Entropy {
pub fn new() -> Entropy {
::std::default::Default::default()
}
pub fn get_entropy(&self) -> &[u8] {
match self.entropy.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_entropy(&mut self) {
self.entropy.clear();
}
pub fn has_entropy(&self) -> bool {
self.entropy.is_some()
}
pub fn set_entropy(&mut self, v: ::std::vec::Vec<u8>) {
self.entropy = ::protobuf::SingularField::some(v);
}
pub fn mut_entropy(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.entropy.is_none() {
self.entropy.set_default();
}
self.entropy.as_mut().unwrap()
}
pub fn take_entropy(&mut self) -> ::std::vec::Vec<u8> {
self.entropy.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
}
impl ::protobuf::Message for Entropy {
fn is_initialized(&self) -> bool {
if self.entropy.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.entropy)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.entropy.as_ref() {
my_size += ::protobuf::rt::bytes_size(1, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.entropy.as_ref() {
os.write_bytes(1, &v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> Entropy {
Entropy::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"entropy",
|m: &Entropy| { &m.entropy },
|m: &mut Entropy| { &mut m.entropy },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<Entropy>(
"Entropy",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static Entropy {
static instance: ::protobuf::rt::LazyV2<Entropy> = ::protobuf::rt::LazyV2::INIT;
instance.get(Entropy::new)
}
}
impl ::protobuf::Clear for Entropy {
fn clear(&mut self) {
self.entropy.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for Entropy {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for Entropy {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct WipeDevice {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a WipeDevice {
fn default() -> &'a WipeDevice {
<WipeDevice as ::protobuf::Message>::default_instance()
}
}
impl WipeDevice {
pub fn new() -> WipeDevice {
::std::default::Default::default()
}
}
impl ::protobuf::Message for WipeDevice {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> WipeDevice {
WipeDevice::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<WipeDevice>(
"WipeDevice",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static WipeDevice {
static instance: ::protobuf::rt::LazyV2<WipeDevice> = ::protobuf::rt::LazyV2::INIT;
instance.get(WipeDevice::new)
}
}
impl ::protobuf::Clear for WipeDevice {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for WipeDevice {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for WipeDevice {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct LoadDevice {
pub mnemonics: ::protobuf::RepeatedField<::std::string::String>,
pin: ::protobuf::SingularField<::std::string::String>,
passphrase_protection: ::std::option::Option<bool>,
language: ::protobuf::SingularField<::std::string::String>,
label: ::protobuf::SingularField<::std::string::String>,
skip_checksum: ::std::option::Option<bool>,
u2f_counter: ::std::option::Option<u32>,
needs_backup: ::std::option::Option<bool>,
no_backup: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a LoadDevice {
fn default() -> &'a LoadDevice {
<LoadDevice as ::protobuf::Message>::default_instance()
}
}
impl LoadDevice {
pub fn new() -> LoadDevice {
::std::default::Default::default()
}
pub fn get_mnemonics(&self) -> &[::std::string::String] {
&self.mnemonics
}
pub fn clear_mnemonics(&mut self) {
self.mnemonics.clear();
}
pub fn set_mnemonics(&mut self, v: ::protobuf::RepeatedField<::std::string::String>) {
self.mnemonics = v;
}
pub fn mut_mnemonics(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> {
&mut self.mnemonics
}
pub fn take_mnemonics(&mut self) -> ::protobuf::RepeatedField<::std::string::String> {
::std::mem::replace(&mut self.mnemonics, ::protobuf::RepeatedField::new())
}
pub fn get_pin(&self) -> &str {
match self.pin.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_pin(&mut self) {
self.pin.clear();
}
pub fn has_pin(&self) -> bool {
self.pin.is_some()
}
pub fn set_pin(&mut self, v: ::std::string::String) {
self.pin = ::protobuf::SingularField::some(v);
}
pub fn mut_pin(&mut self) -> &mut ::std::string::String {
if self.pin.is_none() {
self.pin.set_default();
}
self.pin.as_mut().unwrap()
}
pub fn take_pin(&mut self) -> ::std::string::String {
self.pin.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_passphrase_protection(&self) -> bool {
self.passphrase_protection.unwrap_or(false)
}
pub fn clear_passphrase_protection(&mut self) {
self.passphrase_protection = ::std::option::Option::None;
}
pub fn has_passphrase_protection(&self) -> bool {
self.passphrase_protection.is_some()
}
pub fn set_passphrase_protection(&mut self, v: bool) {
self.passphrase_protection = ::std::option::Option::Some(v);
}
pub fn get_language(&self) -> &str {
match self.language.as_ref() {
Some(v) => &v,
None => "en-US",
}
}
pub fn clear_language(&mut self) {
self.language.clear();
}
pub fn has_language(&self) -> bool {
self.language.is_some()
}
pub fn set_language(&mut self, v: ::std::string::String) {
self.language = ::protobuf::SingularField::some(v);
}
pub fn mut_language(&mut self) -> &mut ::std::string::String {
if self.language.is_none() {
self.language.set_default();
}
self.language.as_mut().unwrap()
}
pub fn take_language(&mut self) -> ::std::string::String {
self.language.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_label(&self) -> &str {
match self.label.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_label(&mut self) {
self.label.clear();
}
pub fn has_label(&self) -> bool {
self.label.is_some()
}
pub fn set_label(&mut self, v: ::std::string::String) {
self.label = ::protobuf::SingularField::some(v);
}
pub fn mut_label(&mut self) -> &mut ::std::string::String {
if self.label.is_none() {
self.label.set_default();
}
self.label.as_mut().unwrap()
}
pub fn take_label(&mut self) -> ::std::string::String {
self.label.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_skip_checksum(&self) -> bool {
self.skip_checksum.unwrap_or(false)
}
pub fn clear_skip_checksum(&mut self) {
self.skip_checksum = ::std::option::Option::None;
}
pub fn has_skip_checksum(&self) -> bool {
self.skip_checksum.is_some()
}
pub fn set_skip_checksum(&mut self, v: bool) {
self.skip_checksum = ::std::option::Option::Some(v);
}
pub fn get_u2f_counter(&self) -> u32 {
self.u2f_counter.unwrap_or(0)
}
pub fn clear_u2f_counter(&mut self) {
self.u2f_counter = ::std::option::Option::None;
}
pub fn has_u2f_counter(&self) -> bool {
self.u2f_counter.is_some()
}
pub fn set_u2f_counter(&mut self, v: u32) {
self.u2f_counter = ::std::option::Option::Some(v);
}
pub fn get_needs_backup(&self) -> bool {
self.needs_backup.unwrap_or(false)
}
pub fn clear_needs_backup(&mut self) {
self.needs_backup = ::std::option::Option::None;
}
pub fn has_needs_backup(&self) -> bool {
self.needs_backup.is_some()
}
pub fn set_needs_backup(&mut self, v: bool) {
self.needs_backup = ::std::option::Option::Some(v);
}
pub fn get_no_backup(&self) -> bool {
self.no_backup.unwrap_or(false)
}
pub fn clear_no_backup(&mut self) {
self.no_backup = ::std::option::Option::None;
}
pub fn has_no_backup(&self) -> bool {
self.no_backup.is_some()
}
pub fn set_no_backup(&mut self, v: bool) {
self.no_backup = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for LoadDevice {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.mnemonics)?;
},
3 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.pin)?;
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.passphrase_protection = ::std::option::Option::Some(tmp);
},
5 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.language)?;
},
6 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.label)?;
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.skip_checksum = ::std::option::Option::Some(tmp);
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.u2f_counter = ::std::option::Option::Some(tmp);
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.needs_backup = ::std::option::Option::Some(tmp);
},
10 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.no_backup = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
for value in &self.mnemonics {
my_size += ::protobuf::rt::string_size(1, &value);
};
if let Some(ref v) = self.pin.as_ref() {
my_size += ::protobuf::rt::string_size(3, &v);
}
if let Some(v) = self.passphrase_protection {
my_size += 2;
}
if let Some(ref v) = self.language.as_ref() {
my_size += ::protobuf::rt::string_size(5, &v);
}
if let Some(ref v) = self.label.as_ref() {
my_size += ::protobuf::rt::string_size(6, &v);
}
if let Some(v) = self.skip_checksum {
my_size += 2;
}
if let Some(v) = self.u2f_counter {
my_size += ::protobuf::rt::value_size(8, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.needs_backup {
my_size += 2;
}
if let Some(v) = self.no_backup {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
for v in &self.mnemonics {
os.write_string(1, &v)?;
};
if let Some(ref v) = self.pin.as_ref() {
os.write_string(3, &v)?;
}
if let Some(v) = self.passphrase_protection {
os.write_bool(4, v)?;
}
if let Some(ref v) = self.language.as_ref() {
os.write_string(5, &v)?;
}
if let Some(ref v) = self.label.as_ref() {
os.write_string(6, &v)?;
}
if let Some(v) = self.skip_checksum {
os.write_bool(7, v)?;
}
if let Some(v) = self.u2f_counter {
os.write_uint32(8, v)?;
}
if let Some(v) = self.needs_backup {
os.write_bool(9, v)?;
}
if let Some(v) = self.no_backup {
os.write_bool(10, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> LoadDevice {
LoadDevice::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"mnemonics",
|m: &LoadDevice| { &m.mnemonics },
|m: &mut LoadDevice| { &mut m.mnemonics },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"pin",
|m: &LoadDevice| { &m.pin },
|m: &mut LoadDevice| { &mut m.pin },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"passphrase_protection",
|m: &LoadDevice| { &m.passphrase_protection },
|m: &mut LoadDevice| { &mut m.passphrase_protection },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"language",
|m: &LoadDevice| { &m.language },
|m: &mut LoadDevice| { &mut m.language },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"label",
|m: &LoadDevice| { &m.label },
|m: &mut LoadDevice| { &mut m.label },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"skip_checksum",
|m: &LoadDevice| { &m.skip_checksum },
|m: &mut LoadDevice| { &mut m.skip_checksum },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"u2f_counter",
|m: &LoadDevice| { &m.u2f_counter },
|m: &mut LoadDevice| { &mut m.u2f_counter },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"needs_backup",
|m: &LoadDevice| { &m.needs_backup },
|m: &mut LoadDevice| { &mut m.needs_backup },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"no_backup",
|m: &LoadDevice| { &m.no_backup },
|m: &mut LoadDevice| { &mut m.no_backup },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<LoadDevice>(
"LoadDevice",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static LoadDevice {
static instance: ::protobuf::rt::LazyV2<LoadDevice> = ::protobuf::rt::LazyV2::INIT;
instance.get(LoadDevice::new)
}
}
impl ::protobuf::Clear for LoadDevice {
fn clear(&mut self) {
self.mnemonics.clear();
self.pin.clear();
self.passphrase_protection = ::std::option::Option::None;
self.language.clear();
self.label.clear();
self.skip_checksum = ::std::option::Option::None;
self.u2f_counter = ::std::option::Option::None;
self.needs_backup = ::std::option::Option::None;
self.no_backup = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for LoadDevice {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for LoadDevice {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct ResetDevice {
display_random: ::std::option::Option<bool>,
strength: ::std::option::Option<u32>,
passphrase_protection: ::std::option::Option<bool>,
pin_protection: ::std::option::Option<bool>,
language: ::protobuf::SingularField<::std::string::String>,
label: ::protobuf::SingularField<::std::string::String>,
u2f_counter: ::std::option::Option<u32>,
skip_backup: ::std::option::Option<bool>,
no_backup: ::std::option::Option<bool>,
backup_type: ::std::option::Option<BackupType>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a ResetDevice {
fn default() -> &'a ResetDevice {
<ResetDevice as ::protobuf::Message>::default_instance()
}
}
impl ResetDevice {
pub fn new() -> ResetDevice {
::std::default::Default::default()
}
pub fn get_display_random(&self) -> bool {
self.display_random.unwrap_or(false)
}
pub fn clear_display_random(&mut self) {
self.display_random = ::std::option::Option::None;
}
pub fn has_display_random(&self) -> bool {
self.display_random.is_some()
}
pub fn set_display_random(&mut self, v: bool) {
self.display_random = ::std::option::Option::Some(v);
}
pub fn get_strength(&self) -> u32 {
self.strength.unwrap_or(256u32)
}
pub fn clear_strength(&mut self) {
self.strength = ::std::option::Option::None;
}
pub fn has_strength(&self) -> bool {
self.strength.is_some()
}
pub fn set_strength(&mut self, v: u32) {
self.strength = ::std::option::Option::Some(v);
}
pub fn get_passphrase_protection(&self) -> bool {
self.passphrase_protection.unwrap_or(false)
}
pub fn clear_passphrase_protection(&mut self) {
self.passphrase_protection = ::std::option::Option::None;
}
pub fn has_passphrase_protection(&self) -> bool {
self.passphrase_protection.is_some()
}
pub fn set_passphrase_protection(&mut self, v: bool) {
self.passphrase_protection = ::std::option::Option::Some(v);
}
pub fn get_pin_protection(&self) -> bool {
self.pin_protection.unwrap_or(false)
}
pub fn clear_pin_protection(&mut self) {
self.pin_protection = ::std::option::Option::None;
}
pub fn has_pin_protection(&self) -> bool {
self.pin_protection.is_some()
}
pub fn set_pin_protection(&mut self, v: bool) {
self.pin_protection = ::std::option::Option::Some(v);
}
pub fn get_language(&self) -> &str {
match self.language.as_ref() {
Some(v) => &v,
None => "en-US",
}
}
pub fn clear_language(&mut self) {
self.language.clear();
}
pub fn has_language(&self) -> bool {
self.language.is_some()
}
pub fn set_language(&mut self, v: ::std::string::String) {
self.language = ::protobuf::SingularField::some(v);
}
pub fn mut_language(&mut self) -> &mut ::std::string::String {
if self.language.is_none() {
self.language.set_default();
}
self.language.as_mut().unwrap()
}
pub fn take_language(&mut self) -> ::std::string::String {
self.language.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_label(&self) -> &str {
match self.label.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_label(&mut self) {
self.label.clear();
}
pub fn has_label(&self) -> bool {
self.label.is_some()
}
pub fn set_label(&mut self, v: ::std::string::String) {
self.label = ::protobuf::SingularField::some(v);
}
pub fn mut_label(&mut self) -> &mut ::std::string::String {
if self.label.is_none() {
self.label.set_default();
}
self.label.as_mut().unwrap()
}
pub fn take_label(&mut self) -> ::std::string::String {
self.label.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_u2f_counter(&self) -> u32 {
self.u2f_counter.unwrap_or(0)
}
pub fn clear_u2f_counter(&mut self) {
self.u2f_counter = ::std::option::Option::None;
}
pub fn has_u2f_counter(&self) -> bool {
self.u2f_counter.is_some()
}
pub fn set_u2f_counter(&mut self, v: u32) {
self.u2f_counter = ::std::option::Option::Some(v);
}
pub fn get_skip_backup(&self) -> bool {
self.skip_backup.unwrap_or(false)
}
pub fn clear_skip_backup(&mut self) {
self.skip_backup = ::std::option::Option::None;
}
pub fn has_skip_backup(&self) -> bool {
self.skip_backup.is_some()
}
pub fn set_skip_backup(&mut self, v: bool) {
self.skip_backup = ::std::option::Option::Some(v);
}
pub fn get_no_backup(&self) -> bool {
self.no_backup.unwrap_or(false)
}
pub fn clear_no_backup(&mut self) {
self.no_backup = ::std::option::Option::None;
}
pub fn has_no_backup(&self) -> bool {
self.no_backup.is_some()
}
pub fn set_no_backup(&mut self, v: bool) {
self.no_backup = ::std::option::Option::Some(v);
}
pub fn get_backup_type(&self) -> BackupType {
self.backup_type.unwrap_or(BackupType::Bip39)
}
pub fn clear_backup_type(&mut self) {
self.backup_type = ::std::option::Option::None;
}
pub fn has_backup_type(&self) -> bool {
self.backup_type.is_some()
}
pub fn set_backup_type(&mut self, v: BackupType) {
self.backup_type = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for ResetDevice {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.display_random = ::std::option::Option::Some(tmp);
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.strength = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.passphrase_protection = ::std::option::Option::Some(tmp);
},
4 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.pin_protection = ::std::option::Option::Some(tmp);
},
5 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.language)?;
},
6 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.label)?;
},
7 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.u2f_counter = ::std::option::Option::Some(tmp);
},
8 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.skip_backup = ::std::option::Option::Some(tmp);
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.no_backup = ::std::option::Option::Some(tmp);
},
10 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.backup_type, 10, &mut self.unknown_fields)?
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.display_random {
my_size += 2;
}
if let Some(v) = self.strength {
my_size += ::protobuf::rt::value_size(2, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.passphrase_protection {
my_size += 2;
}
if let Some(v) = self.pin_protection {
my_size += 2;
}
if let Some(ref v) = self.language.as_ref() {
my_size += ::protobuf::rt::string_size(5, &v);
}
if let Some(ref v) = self.label.as_ref() {
my_size += ::protobuf::rt::string_size(6, &v);
}
if let Some(v) = self.u2f_counter {
my_size += ::protobuf::rt::value_size(7, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.skip_backup {
my_size += 2;
}
if let Some(v) = self.no_backup {
my_size += 2;
}
if let Some(v) = self.backup_type {
my_size += ::protobuf::rt::enum_size(10, v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.display_random {
os.write_bool(1, v)?;
}
if let Some(v) = self.strength {
os.write_uint32(2, v)?;
}
if let Some(v) = self.passphrase_protection {
os.write_bool(3, v)?;
}
if let Some(v) = self.pin_protection {
os.write_bool(4, v)?;
}
if let Some(ref v) = self.language.as_ref() {
os.write_string(5, &v)?;
}
if let Some(ref v) = self.label.as_ref() {
os.write_string(6, &v)?;
}
if let Some(v) = self.u2f_counter {
os.write_uint32(7, v)?;
}
if let Some(v) = self.skip_backup {
os.write_bool(8, v)?;
}
if let Some(v) = self.no_backup {
os.write_bool(9, v)?;
}
if let Some(v) = self.backup_type {
os.write_enum(10, ::protobuf::ProtobufEnum::value(&v))?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> ResetDevice {
ResetDevice::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"display_random",
|m: &ResetDevice| { &m.display_random },
|m: &mut ResetDevice| { &mut m.display_random },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"strength",
|m: &ResetDevice| { &m.strength },
|m: &mut ResetDevice| { &mut m.strength },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"passphrase_protection",
|m: &ResetDevice| { &m.passphrase_protection },
|m: &mut ResetDevice| { &mut m.passphrase_protection },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"pin_protection",
|m: &ResetDevice| { &m.pin_protection },
|m: &mut ResetDevice| { &mut m.pin_protection },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"language",
|m: &ResetDevice| { &m.language },
|m: &mut ResetDevice| { &mut m.language },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"label",
|m: &ResetDevice| { &m.label },
|m: &mut ResetDevice| { &mut m.label },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"u2f_counter",
|m: &ResetDevice| { &m.u2f_counter },
|m: &mut ResetDevice| { &mut m.u2f_counter },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"skip_backup",
|m: &ResetDevice| { &m.skip_backup },
|m: &mut ResetDevice| { &mut m.skip_backup },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"no_backup",
|m: &ResetDevice| { &m.no_backup },
|m: &mut ResetDevice| { &mut m.no_backup },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<BackupType>>(
"backup_type",
|m: &ResetDevice| { &m.backup_type },
|m: &mut ResetDevice| { &mut m.backup_type },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<ResetDevice>(
"ResetDevice",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static ResetDevice {
static instance: ::protobuf::rt::LazyV2<ResetDevice> = ::protobuf::rt::LazyV2::INIT;
instance.get(ResetDevice::new)
}
}
impl ::protobuf::Clear for ResetDevice {
fn clear(&mut self) {
self.display_random = ::std::option::Option::None;
self.strength = ::std::option::Option::None;
self.passphrase_protection = ::std::option::Option::None;
self.pin_protection = ::std::option::Option::None;
self.language.clear();
self.label.clear();
self.u2f_counter = ::std::option::Option::None;
self.skip_backup = ::std::option::Option::None;
self.no_backup = ::std::option::Option::None;
self.backup_type = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for ResetDevice {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for ResetDevice {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct BackupDevice {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a BackupDevice {
fn default() -> &'a BackupDevice {
<BackupDevice as ::protobuf::Message>::default_instance()
}
}
impl BackupDevice {
pub fn new() -> BackupDevice {
::std::default::Default::default()
}
}
impl ::protobuf::Message for BackupDevice {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> BackupDevice {
BackupDevice::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<BackupDevice>(
"BackupDevice",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static BackupDevice {
static instance: ::protobuf::rt::LazyV2<BackupDevice> = ::protobuf::rt::LazyV2::INIT;
instance.get(BackupDevice::new)
}
}
impl ::protobuf::Clear for BackupDevice {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for BackupDevice {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for BackupDevice {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct EntropyRequest {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a EntropyRequest {
fn default() -> &'a EntropyRequest {
<EntropyRequest as ::protobuf::Message>::default_instance()
}
}
impl EntropyRequest {
pub fn new() -> EntropyRequest {
::std::default::Default::default()
}
}
impl ::protobuf::Message for EntropyRequest {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> EntropyRequest {
EntropyRequest::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<EntropyRequest>(
"EntropyRequest",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static EntropyRequest {
static instance: ::protobuf::rt::LazyV2<EntropyRequest> = ::protobuf::rt::LazyV2::INIT;
instance.get(EntropyRequest::new)
}
}
impl ::protobuf::Clear for EntropyRequest {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for EntropyRequest {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for EntropyRequest {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct EntropyAck {
entropy: ::protobuf::SingularField<::std::vec::Vec<u8>>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a EntropyAck {
fn default() -> &'a EntropyAck {
<EntropyAck as ::protobuf::Message>::default_instance()
}
}
impl EntropyAck {
pub fn new() -> EntropyAck {
::std::default::Default::default()
}
pub fn get_entropy(&self) -> &[u8] {
match self.entropy.as_ref() {
Some(v) => &v,
None => &[],
}
}
pub fn clear_entropy(&mut self) {
self.entropy.clear();
}
pub fn has_entropy(&self) -> bool {
self.entropy.is_some()
}
pub fn set_entropy(&mut self, v: ::std::vec::Vec<u8>) {
self.entropy = ::protobuf::SingularField::some(v);
}
pub fn mut_entropy(&mut self) -> &mut ::std::vec::Vec<u8> {
if self.entropy.is_none() {
self.entropy.set_default();
}
self.entropy.as_mut().unwrap()
}
pub fn take_entropy(&mut self) -> ::std::vec::Vec<u8> {
self.entropy.take().unwrap_or_else(|| ::std::vec::Vec::new())
}
}
impl ::protobuf::Message for EntropyAck {
fn is_initialized(&self) -> bool {
if self.entropy.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.entropy)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.entropy.as_ref() {
my_size += ::protobuf::rt::bytes_size(1, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.entropy.as_ref() {
os.write_bytes(1, &v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> EntropyAck {
EntropyAck::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>(
"entropy",
|m: &EntropyAck| { &m.entropy },
|m: &mut EntropyAck| { &mut m.entropy },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<EntropyAck>(
"EntropyAck",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static EntropyAck {
static instance: ::protobuf::rt::LazyV2<EntropyAck> = ::protobuf::rt::LazyV2::INIT;
instance.get(EntropyAck::new)
}
}
impl ::protobuf::Clear for EntropyAck {
fn clear(&mut self) {
self.entropy.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for EntropyAck {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for EntropyAck {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct RecoveryDevice {
word_count: ::std::option::Option<u32>,
passphrase_protection: ::std::option::Option<bool>,
pin_protection: ::std::option::Option<bool>,
language: ::protobuf::SingularField<::std::string::String>,
label: ::protobuf::SingularField<::std::string::String>,
enforce_wordlist: ::std::option::Option<bool>,
field_type: ::std::option::Option<RecoveryDevice_RecoveryDeviceType>,
u2f_counter: ::std::option::Option<u32>,
dry_run: ::std::option::Option<bool>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a RecoveryDevice {
fn default() -> &'a RecoveryDevice {
<RecoveryDevice as ::protobuf::Message>::default_instance()
}
}
impl RecoveryDevice {
pub fn new() -> RecoveryDevice {
::std::default::Default::default()
}
pub fn get_word_count(&self) -> u32 {
self.word_count.unwrap_or(0)
}
pub fn clear_word_count(&mut self) {
self.word_count = ::std::option::Option::None;
}
pub fn has_word_count(&self) -> bool {
self.word_count.is_some()
}
pub fn set_word_count(&mut self, v: u32) {
self.word_count = ::std::option::Option::Some(v);
}
pub fn get_passphrase_protection(&self) -> bool {
self.passphrase_protection.unwrap_or(false)
}
pub fn clear_passphrase_protection(&mut self) {
self.passphrase_protection = ::std::option::Option::None;
}
pub fn has_passphrase_protection(&self) -> bool {
self.passphrase_protection.is_some()
}
pub fn set_passphrase_protection(&mut self, v: bool) {
self.passphrase_protection = ::std::option::Option::Some(v);
}
pub fn get_pin_protection(&self) -> bool {
self.pin_protection.unwrap_or(false)
}
pub fn clear_pin_protection(&mut self) {
self.pin_protection = ::std::option::Option::None;
}
pub fn has_pin_protection(&self) -> bool {
self.pin_protection.is_some()
}
pub fn set_pin_protection(&mut self, v: bool) {
self.pin_protection = ::std::option::Option::Some(v);
}
pub fn get_language(&self) -> &str {
match self.language.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_language(&mut self) {
self.language.clear();
}
pub fn has_language(&self) -> bool {
self.language.is_some()
}
pub fn set_language(&mut self, v: ::std::string::String) {
self.language = ::protobuf::SingularField::some(v);
}
pub fn mut_language(&mut self) -> &mut ::std::string::String {
if self.language.is_none() {
self.language.set_default();
}
self.language.as_mut().unwrap()
}
pub fn take_language(&mut self) -> ::std::string::String {
self.language.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_label(&self) -> &str {
match self.label.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_label(&mut self) {
self.label.clear();
}
pub fn has_label(&self) -> bool {
self.label.is_some()
}
pub fn set_label(&mut self, v: ::std::string::String) {
self.label = ::protobuf::SingularField::some(v);
}
pub fn mut_label(&mut self) -> &mut ::std::string::String {
if self.label.is_none() {
self.label.set_default();
}
self.label.as_mut().unwrap()
}
pub fn take_label(&mut self) -> ::std::string::String {
self.label.take().unwrap_or_else(|| ::std::string::String::new())
}
pub fn get_enforce_wordlist(&self) -> bool {
self.enforce_wordlist.unwrap_or(false)
}
pub fn clear_enforce_wordlist(&mut self) {
self.enforce_wordlist = ::std::option::Option::None;
}
pub fn has_enforce_wordlist(&self) -> bool {
self.enforce_wordlist.is_some()
}
pub fn set_enforce_wordlist(&mut self, v: bool) {
self.enforce_wordlist = ::std::option::Option::Some(v);
}
pub fn get_field_type(&self) -> RecoveryDevice_RecoveryDeviceType {
self.field_type.unwrap_or(RecoveryDevice_RecoveryDeviceType::RecoveryDeviceType_ScrambledWords)
}
pub fn clear_field_type(&mut self) {
self.field_type = ::std::option::Option::None;
}
pub fn has_field_type(&self) -> bool {
self.field_type.is_some()
}
pub fn set_field_type(&mut self, v: RecoveryDevice_RecoveryDeviceType) {
self.field_type = ::std::option::Option::Some(v);
}
pub fn get_u2f_counter(&self) -> u32 {
self.u2f_counter.unwrap_or(0)
}
pub fn clear_u2f_counter(&mut self) {
self.u2f_counter = ::std::option::Option::None;
}
pub fn has_u2f_counter(&self) -> bool {
self.u2f_counter.is_some()
}
pub fn set_u2f_counter(&mut self, v: u32) {
self.u2f_counter = ::std::option::Option::Some(v);
}
pub fn get_dry_run(&self) -> bool {
self.dry_run.unwrap_or(false)
}
pub fn clear_dry_run(&mut self) {
self.dry_run = ::std::option::Option::None;
}
pub fn has_dry_run(&self) -> bool {
self.dry_run.is_some()
}
pub fn set_dry_run(&mut self, v: bool) {
self.dry_run = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for RecoveryDevice {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.word_count = ::std::option::Option::Some(tmp);
},
2 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.passphrase_protection = ::std::option::Option::Some(tmp);
},
3 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.pin_protection = ::std::option::Option::Some(tmp);
},
4 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.language)?;
},
5 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.label)?;
},
6 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.enforce_wordlist = ::std::option::Option::Some(tmp);
},
8 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.field_type, 8, &mut self.unknown_fields)?
},
9 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.u2f_counter = ::std::option::Option::Some(tmp);
},
10 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_bool()?;
self.dry_run = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.word_count {
my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.passphrase_protection {
my_size += 2;
}
if let Some(v) = self.pin_protection {
my_size += 2;
}
if let Some(ref v) = self.language.as_ref() {
my_size += ::protobuf::rt::string_size(4, &v);
}
if let Some(ref v) = self.label.as_ref() {
my_size += ::protobuf::rt::string_size(5, &v);
}
if let Some(v) = self.enforce_wordlist {
my_size += 2;
}
if let Some(v) = self.field_type {
my_size += ::protobuf::rt::enum_size(8, v);
}
if let Some(v) = self.u2f_counter {
my_size += ::protobuf::rt::value_size(9, v, ::protobuf::wire_format::WireTypeVarint);
}
if let Some(v) = self.dry_run {
my_size += 2;
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.word_count {
os.write_uint32(1, v)?;
}
if let Some(v) = self.passphrase_protection {
os.write_bool(2, v)?;
}
if let Some(v) = self.pin_protection {
os.write_bool(3, v)?;
}
if let Some(ref v) = self.language.as_ref() {
os.write_string(4, &v)?;
}
if let Some(ref v) = self.label.as_ref() {
os.write_string(5, &v)?;
}
if let Some(v) = self.enforce_wordlist {
os.write_bool(6, v)?;
}
if let Some(v) = self.field_type {
os.write_enum(8, ::protobuf::ProtobufEnum::value(&v))?;
}
if let Some(v) = self.u2f_counter {
os.write_uint32(9, v)?;
}
if let Some(v) = self.dry_run {
os.write_bool(10, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> RecoveryDevice {
RecoveryDevice::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"word_count",
|m: &RecoveryDevice| { &m.word_count },
|m: &mut RecoveryDevice| { &mut m.word_count },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"passphrase_protection",
|m: &RecoveryDevice| { &m.passphrase_protection },
|m: &mut RecoveryDevice| { &mut m.passphrase_protection },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"pin_protection",
|m: &RecoveryDevice| { &m.pin_protection },
|m: &mut RecoveryDevice| { &mut m.pin_protection },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"language",
|m: &RecoveryDevice| { &m.language },
|m: &mut RecoveryDevice| { &mut m.language },
));
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"label",
|m: &RecoveryDevice| { &m.label },
|m: &mut RecoveryDevice| { &mut m.label },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"enforce_wordlist",
|m: &RecoveryDevice| { &m.enforce_wordlist },
|m: &mut RecoveryDevice| { &mut m.enforce_wordlist },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<RecoveryDevice_RecoveryDeviceType>>(
"type",
|m: &RecoveryDevice| { &m.field_type },
|m: &mut RecoveryDevice| { &mut m.field_type },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"u2f_counter",
|m: &RecoveryDevice| { &m.u2f_counter },
|m: &mut RecoveryDevice| { &mut m.u2f_counter },
));
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>(
"dry_run",
|m: &RecoveryDevice| { &m.dry_run },
|m: &mut RecoveryDevice| { &mut m.dry_run },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<RecoveryDevice>(
"RecoveryDevice",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static RecoveryDevice {
static instance: ::protobuf::rt::LazyV2<RecoveryDevice> = ::protobuf::rt::LazyV2::INIT;
instance.get(RecoveryDevice::new)
}
}
impl ::protobuf::Clear for RecoveryDevice {
fn clear(&mut self) {
self.word_count = ::std::option::Option::None;
self.passphrase_protection = ::std::option::Option::None;
self.pin_protection = ::std::option::Option::None;
self.language.clear();
self.label.clear();
self.enforce_wordlist = ::std::option::Option::None;
self.field_type = ::std::option::Option::None;
self.u2f_counter = ::std::option::Option::None;
self.dry_run = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for RecoveryDevice {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for RecoveryDevice {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum RecoveryDevice_RecoveryDeviceType {
RecoveryDeviceType_ScrambledWords = 0,
RecoveryDeviceType_Matrix = 1,
}
impl ::protobuf::ProtobufEnum for RecoveryDevice_RecoveryDeviceType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<RecoveryDevice_RecoveryDeviceType> {
match value {
0 => ::std::option::Option::Some(RecoveryDevice_RecoveryDeviceType::RecoveryDeviceType_ScrambledWords),
1 => ::std::option::Option::Some(RecoveryDevice_RecoveryDeviceType::RecoveryDeviceType_Matrix),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [RecoveryDevice_RecoveryDeviceType] = &[
RecoveryDevice_RecoveryDeviceType::RecoveryDeviceType_ScrambledWords,
RecoveryDevice_RecoveryDeviceType::RecoveryDeviceType_Matrix,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<RecoveryDevice_RecoveryDeviceType>("RecoveryDevice.RecoveryDeviceType", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for RecoveryDevice_RecoveryDeviceType {
}
impl ::std::default::Default for RecoveryDevice_RecoveryDeviceType {
fn default() -> Self {
RecoveryDevice_RecoveryDeviceType::RecoveryDeviceType_ScrambledWords
}
}
impl ::protobuf::reflect::ProtobufValue for RecoveryDevice_RecoveryDeviceType {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct WordRequest {
field_type: ::std::option::Option<WordRequest_WordRequestType>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a WordRequest {
fn default() -> &'a WordRequest {
<WordRequest as ::protobuf::Message>::default_instance()
}
}
impl WordRequest {
pub fn new() -> WordRequest {
::std::default::Default::default()
}
pub fn get_field_type(&self) -> WordRequest_WordRequestType {
self.field_type.unwrap_or(WordRequest_WordRequestType::WordRequestType_Plain)
}
pub fn clear_field_type(&mut self) {
self.field_type = ::std::option::Option::None;
}
pub fn has_field_type(&self) -> bool {
self.field_type.is_some()
}
pub fn set_field_type(&mut self, v: WordRequest_WordRequestType) {
self.field_type = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for WordRequest {
fn is_initialized(&self) -> bool {
if self.field_type.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.field_type, 1, &mut self.unknown_fields)?
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.field_type {
my_size += ::protobuf::rt::enum_size(1, v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.field_type {
os.write_enum(1, ::protobuf::ProtobufEnum::value(&v))?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> WordRequest {
WordRequest::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum<WordRequest_WordRequestType>>(
"type",
|m: &WordRequest| { &m.field_type },
|m: &mut WordRequest| { &mut m.field_type },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<WordRequest>(
"WordRequest",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static WordRequest {
static instance: ::protobuf::rt::LazyV2<WordRequest> = ::protobuf::rt::LazyV2::INIT;
instance.get(WordRequest::new)
}
}
impl ::protobuf::Clear for WordRequest {
fn clear(&mut self) {
self.field_type = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for WordRequest {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for WordRequest {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum WordRequest_WordRequestType {
WordRequestType_Plain = 0,
WordRequestType_Matrix9 = 1,
WordRequestType_Matrix6 = 2,
}
impl ::protobuf::ProtobufEnum for WordRequest_WordRequestType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<WordRequest_WordRequestType> {
match value {
0 => ::std::option::Option::Some(WordRequest_WordRequestType::WordRequestType_Plain),
1 => ::std::option::Option::Some(WordRequest_WordRequestType::WordRequestType_Matrix9),
2 => ::std::option::Option::Some(WordRequest_WordRequestType::WordRequestType_Matrix6),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [WordRequest_WordRequestType] = &[
WordRequest_WordRequestType::WordRequestType_Plain,
WordRequest_WordRequestType::WordRequestType_Matrix9,
WordRequest_WordRequestType::WordRequestType_Matrix6,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<WordRequest_WordRequestType>("WordRequest.WordRequestType", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for WordRequest_WordRequestType {
}
impl ::std::default::Default for WordRequest_WordRequestType {
fn default() -> Self {
WordRequest_WordRequestType::WordRequestType_Plain
}
}
impl ::protobuf::reflect::ProtobufValue for WordRequest_WordRequestType {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(PartialEq,Clone,Default)]
pub struct WordAck {
word: ::protobuf::SingularField<::std::string::String>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a WordAck {
fn default() -> &'a WordAck {
<WordAck as ::protobuf::Message>::default_instance()
}
}
impl WordAck {
pub fn new() -> WordAck {
::std::default::Default::default()
}
pub fn get_word(&self) -> &str {
match self.word.as_ref() {
Some(v) => &v,
None => "",
}
}
pub fn clear_word(&mut self) {
self.word.clear();
}
pub fn has_word(&self) -> bool {
self.word.is_some()
}
pub fn set_word(&mut self, v: ::std::string::String) {
self.word = ::protobuf::SingularField::some(v);
}
pub fn mut_word(&mut self) -> &mut ::std::string::String {
if self.word.is_none() {
self.word.set_default();
}
self.word.as_mut().unwrap()
}
pub fn take_word(&mut self) -> ::std::string::String {
self.word.take().unwrap_or_else(|| ::std::string::String::new())
}
}
impl ::protobuf::Message for WordAck {
fn is_initialized(&self) -> bool {
if self.word.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.word)?;
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(ref v) = self.word.as_ref() {
my_size += ::protobuf::rt::string_size(1, &v);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(ref v) = self.word.as_ref() {
os.write_string(1, &v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> WordAck {
WordAck::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>(
"word",
|m: &WordAck| { &m.word },
|m: &mut WordAck| { &mut m.word },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<WordAck>(
"WordAck",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static WordAck {
static instance: ::protobuf::rt::LazyV2<WordAck> = ::protobuf::rt::LazyV2::INIT;
instance.get(WordAck::new)
}
}
impl ::protobuf::Clear for WordAck {
fn clear(&mut self) {
self.word.clear();
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for WordAck {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for WordAck {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct SetU2FCounter {
u2f_counter: ::std::option::Option<u32>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a SetU2FCounter {
fn default() -> &'a SetU2FCounter {
<SetU2FCounter as ::protobuf::Message>::default_instance()
}
}
impl SetU2FCounter {
pub fn new() -> SetU2FCounter {
::std::default::Default::default()
}
pub fn get_u2f_counter(&self) -> u32 {
self.u2f_counter.unwrap_or(0)
}
pub fn clear_u2f_counter(&mut self) {
self.u2f_counter = ::std::option::Option::None;
}
pub fn has_u2f_counter(&self) -> bool {
self.u2f_counter.is_some()
}
pub fn set_u2f_counter(&mut self, v: u32) {
self.u2f_counter = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for SetU2FCounter {
fn is_initialized(&self) -> bool {
if self.u2f_counter.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.u2f_counter = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.u2f_counter {
my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.u2f_counter {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> SetU2FCounter {
SetU2FCounter::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"u2f_counter",
|m: &SetU2FCounter| { &m.u2f_counter },
|m: &mut SetU2FCounter| { &mut m.u2f_counter },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<SetU2FCounter>(
"SetU2FCounter",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static SetU2FCounter {
static instance: ::protobuf::rt::LazyV2<SetU2FCounter> = ::protobuf::rt::LazyV2::INIT;
instance.get(SetU2FCounter::new)
}
}
impl ::protobuf::Clear for SetU2FCounter {
fn clear(&mut self) {
self.u2f_counter = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for SetU2FCounter {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for SetU2FCounter {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct GetNextU2FCounter {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a GetNextU2FCounter {
fn default() -> &'a GetNextU2FCounter {
<GetNextU2FCounter as ::protobuf::Message>::default_instance()
}
}
impl GetNextU2FCounter {
pub fn new() -> GetNextU2FCounter {
::std::default::Default::default()
}
}
impl ::protobuf::Message for GetNextU2FCounter {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> GetNextU2FCounter {
GetNextU2FCounter::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<GetNextU2FCounter>(
"GetNextU2FCounter",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static GetNextU2FCounter {
static instance: ::protobuf::rt::LazyV2<GetNextU2FCounter> = ::protobuf::rt::LazyV2::INIT;
instance.get(GetNextU2FCounter::new)
}
}
impl ::protobuf::Clear for GetNextU2FCounter {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for GetNextU2FCounter {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for GetNextU2FCounter {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct NextU2FCounter {
u2f_counter: ::std::option::Option<u32>,
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a NextU2FCounter {
fn default() -> &'a NextU2FCounter {
<NextU2FCounter as ::protobuf::Message>::default_instance()
}
}
impl NextU2FCounter {
pub fn new() -> NextU2FCounter {
::std::default::Default::default()
}
pub fn get_u2f_counter(&self) -> u32 {
self.u2f_counter.unwrap_or(0)
}
pub fn clear_u2f_counter(&mut self) {
self.u2f_counter = ::std::option::Option::None;
}
pub fn has_u2f_counter(&self) -> bool {
self.u2f_counter.is_some()
}
pub fn set_u2f_counter(&mut self, v: u32) {
self.u2f_counter = ::std::option::Option::Some(v);
}
}
impl ::protobuf::Message for NextU2FCounter {
fn is_initialized(&self) -> bool {
if self.u2f_counter.is_none() {
return false;
}
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
1 => {
if wire_type != ::protobuf::wire_format::WireTypeVarint {
return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type));
}
let tmp = is.read_uint32()?;
self.u2f_counter = ::std::option::Option::Some(tmp);
},
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
if let Some(v) = self.u2f_counter {
my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint);
}
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
if let Some(v) = self.u2f_counter {
os.write_uint32(1, v)?;
}
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> NextU2FCounter {
NextU2FCounter::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let mut fields = ::std::vec::Vec::new();
fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>(
"u2f_counter",
|m: &NextU2FCounter| { &m.u2f_counter },
|m: &mut NextU2FCounter| { &mut m.u2f_counter },
));
::protobuf::reflect::MessageDescriptor::new_pb_name::<NextU2FCounter>(
"NextU2FCounter",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static NextU2FCounter {
static instance: ::protobuf::rt::LazyV2<NextU2FCounter> = ::protobuf::rt::LazyV2::INIT;
instance.get(NextU2FCounter::new)
}
}
impl ::protobuf::Clear for NextU2FCounter {
fn clear(&mut self) {
self.u2f_counter = ::std::option::Option::None;
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for NextU2FCounter {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for NextU2FCounter {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct DoPreauthorized {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a DoPreauthorized {
fn default() -> &'a DoPreauthorized {
<DoPreauthorized as ::protobuf::Message>::default_instance()
}
}
impl DoPreauthorized {
pub fn new() -> DoPreauthorized {
::std::default::Default::default()
}
}
impl ::protobuf::Message for DoPreauthorized {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> DoPreauthorized {
DoPreauthorized::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<DoPreauthorized>(
"DoPreauthorized",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static DoPreauthorized {
static instance: ::protobuf::rt::LazyV2<DoPreauthorized> = ::protobuf::rt::LazyV2::INIT;
instance.get(DoPreauthorized::new)
}
}
impl ::protobuf::Clear for DoPreauthorized {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for DoPreauthorized {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for DoPreauthorized {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct PreauthorizedRequest {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a PreauthorizedRequest {
fn default() -> &'a PreauthorizedRequest {
<PreauthorizedRequest as ::protobuf::Message>::default_instance()
}
}
impl PreauthorizedRequest {
pub fn new() -> PreauthorizedRequest {
::std::default::Default::default()
}
}
impl ::protobuf::Message for PreauthorizedRequest {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> PreauthorizedRequest {
PreauthorizedRequest::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<PreauthorizedRequest>(
"PreauthorizedRequest",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static PreauthorizedRequest {
static instance: ::protobuf::rt::LazyV2<PreauthorizedRequest> = ::protobuf::rt::LazyV2::INIT;
instance.get(PreauthorizedRequest::new)
}
}
impl ::protobuf::Clear for PreauthorizedRequest {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for PreauthorizedRequest {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for PreauthorizedRequest {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct CancelAuthorization {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a CancelAuthorization {
fn default() -> &'a CancelAuthorization {
<CancelAuthorization as ::protobuf::Message>::default_instance()
}
}
impl CancelAuthorization {
pub fn new() -> CancelAuthorization {
::std::default::Default::default()
}
}
impl ::protobuf::Message for CancelAuthorization {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> CancelAuthorization {
CancelAuthorization::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<CancelAuthorization>(
"CancelAuthorization",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static CancelAuthorization {
static instance: ::protobuf::rt::LazyV2<CancelAuthorization> = ::protobuf::rt::LazyV2::INIT;
instance.get(CancelAuthorization::new)
}
}
impl ::protobuf::Clear for CancelAuthorization {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for CancelAuthorization {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for CancelAuthorization {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(PartialEq,Clone,Default)]
pub struct RebootToBootloader {
pub unknown_fields: ::protobuf::UnknownFields,
pub cached_size: ::protobuf::CachedSize,
}
impl<'a> ::std::default::Default for &'a RebootToBootloader {
fn default() -> &'a RebootToBootloader {
<RebootToBootloader as ::protobuf::Message>::default_instance()
}
}
impl RebootToBootloader {
pub fn new() -> RebootToBootloader {
::std::default::Default::default()
}
}
impl ::protobuf::Message for RebootToBootloader {
fn is_initialized(&self) -> bool {
true
}
fn merge_from(&mut self, is: &mut ::protobuf::CodedInputStream<'_>) -> ::protobuf::ProtobufResult<()> {
while !is.eof()? {
let (field_number, wire_type) = is.read_tag_unpack()?;
match field_number {
_ => {
::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?;
},
};
}
::std::result::Result::Ok(())
}
#[allow(unused_variables)]
fn compute_size(&self) -> u32 {
let mut my_size = 0;
my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields());
self.cached_size.set(my_size);
my_size
}
fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream<'_>) -> ::protobuf::ProtobufResult<()> {
os.write_unknown_fields(self.get_unknown_fields())?;
::std::result::Result::Ok(())
}
fn get_cached_size(&self) -> u32 {
self.cached_size.get()
}
fn get_unknown_fields(&self) -> &::protobuf::UnknownFields {
&self.unknown_fields
}
fn mut_unknown_fields(&mut self) -> &mut ::protobuf::UnknownFields {
&mut self.unknown_fields
}
fn as_any(&self) -> &dyn (::std::any::Any) {
self as &dyn (::std::any::Any)
}
fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) {
self as &mut dyn (::std::any::Any)
}
fn into_any(self: ::std::boxed::Box<Self>) -> ::std::boxed::Box<dyn (::std::any::Any)> {
self
}
fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor {
Self::descriptor_static()
}
fn new() -> RebootToBootloader {
RebootToBootloader::new()
}
fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::MessageDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
let fields = ::std::vec::Vec::new();
::protobuf::reflect::MessageDescriptor::new_pb_name::<RebootToBootloader>(
"RebootToBootloader",
fields,
file_descriptor_proto()
)
})
}
fn default_instance() -> &'static RebootToBootloader {
static instance: ::protobuf::rt::LazyV2<RebootToBootloader> = ::protobuf::rt::LazyV2::INIT;
instance.get(RebootToBootloader::new)
}
}
impl ::protobuf::Clear for RebootToBootloader {
fn clear(&mut self) {
self.unknown_fields.clear();
}
}
impl ::std::fmt::Debug for RebootToBootloader {
fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
::protobuf::text_format::fmt(self, f)
}
}
impl ::protobuf::reflect::ProtobufValue for RebootToBootloader {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Message(self)
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum BackupType {
Bip39 = 0,
Slip39_Basic = 1,
Slip39_Advanced = 2,
}
impl ::protobuf::ProtobufEnum for BackupType {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<BackupType> {
match value {
0 => ::std::option::Option::Some(BackupType::Bip39),
1 => ::std::option::Option::Some(BackupType::Slip39_Basic),
2 => ::std::option::Option::Some(BackupType::Slip39_Advanced),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [BackupType] = &[
BackupType::Bip39,
BackupType::Slip39_Basic,
BackupType::Slip39_Advanced,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<BackupType>("BackupType", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for BackupType {
}
impl ::std::default::Default for BackupType {
fn default() -> Self {
BackupType::Bip39
}
}
impl ::protobuf::reflect::ProtobufValue for BackupType {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum SafetyCheckLevel {
Strict = 0,
PromptAlways = 1,
PromptTemporarily = 2,
}
impl ::protobuf::ProtobufEnum for SafetyCheckLevel {
fn value(&self) -> i32 {
*self as i32
}
fn from_i32(value: i32) -> ::std::option::Option<SafetyCheckLevel> {
match value {
0 => ::std::option::Option::Some(SafetyCheckLevel::Strict),
1 => ::std::option::Option::Some(SafetyCheckLevel::PromptAlways),
2 => ::std::option::Option::Some(SafetyCheckLevel::PromptTemporarily),
_ => ::std::option::Option::None
}
}
fn values() -> &'static [Self] {
static values: &'static [SafetyCheckLevel] = &[
SafetyCheckLevel::Strict,
SafetyCheckLevel::PromptAlways,
SafetyCheckLevel::PromptTemporarily,
];
values
}
fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
static descriptor: ::protobuf::rt::LazyV2<::protobuf::reflect::EnumDescriptor> = ::protobuf::rt::LazyV2::INIT;
descriptor.get(|| {
::protobuf::reflect::EnumDescriptor::new_pb_name::<SafetyCheckLevel>("SafetyCheckLevel", file_descriptor_proto())
})
}
}
impl ::std::marker::Copy for SafetyCheckLevel {
}
impl ::std::default::Default for SafetyCheckLevel {
fn default() -> Self {
SafetyCheckLevel::Strict
}
}
impl ::protobuf::reflect::ProtobufValue for SafetyCheckLevel {
fn as_ref(&self) -> ::protobuf::reflect::ReflectValueRef {
::protobuf::reflect::ReflectValueRef::Enum(::protobuf::ProtobufEnum::descriptor(self))
}
}
static file_descriptor_proto_data: &'static [u8] = b"\
\n\x19messages-management.proto\x12\x1dhw.trezor.messages.management\x1a\
\x0emessages.proto\"\x80\x01\n\nInitialize\x12\x1d\n\nsession_id\x18\x01\
\x20\x01(\x0cR\tsessionId\x12,\n\x10_skip_passphrase\x18\x02\x20\x01(\
\x08R\x0eSkipPassphraseB\x02\x18\x01\x12%\n\x0ederive_cardano\x18\x03\
\x20\x01(\x08R\rderiveCardano\"\r\n\x0bGetFeatures\"\xe4\x0f\n\x08Featur\
es\x12\x16\n\x06vendor\x18\x01\x20\x01(\tR\x06vendor\x12#\n\rmajor_versi\
on\x18\x02\x20\x02(\rR\x0cmajorVersion\x12#\n\rminor_version\x18\x03\x20\
\x02(\rR\x0cminorVersion\x12#\n\rpatch_version\x18\x04\x20\x02(\rR\x0cpa\
tchVersion\x12'\n\x0fbootloader_mode\x18\x05\x20\x01(\x08R\x0ebootloader\
Mode\x12\x1b\n\tdevice_id\x18\x06\x20\x01(\tR\x08deviceId\x12%\n\x0epin_\
protection\x18\x07\x20\x01(\x08R\rpinProtection\x123\n\x15passphrase_pro\
tection\x18\x08\x20\x01(\x08R\x14passphraseProtection\x12\x1a\n\x08langu\
age\x18\t\x20\x01(\tR\x08language\x12\x14\n\x05label\x18\n\x20\x01(\tR\
\x05label\x12\x20\n\x0binitialized\x18\x0c\x20\x01(\x08R\x0binitialized\
\x12\x1a\n\x08revision\x18\r\x20\x01(\x0cR\x08revision\x12'\n\x0fbootloa\
der_hash\x18\x0e\x20\x01(\x0cR\x0ebootloaderHash\x12\x1a\n\x08imported\
\x18\x0f\x20\x01(\x08R\x08imported\x12\x1a\n\x08unlocked\x18\x10\x20\x01\
(\x08R\x08unlocked\x120\n\x12_passphrase_cached\x18\x11\x20\x01(\x08R\
\x10PassphraseCachedB\x02\x18\x01\x12)\n\x10firmware_present\x18\x12\x20\
\x01(\x08R\x0ffirmwarePresent\x12!\n\x0cneeds_backup\x18\x13\x20\x01(\
\x08R\x0bneedsBackup\x12\x14\n\x05flags\x18\x14\x20\x01(\rR\x05flags\x12\
\x14\n\x05model\x18\x15\x20\x01(\tR\x05model\x12\x19\n\x08fw_major\x18\
\x16\x20\x01(\rR\x07fwMajor\x12\x19\n\x08fw_minor\x18\x17\x20\x01(\rR\
\x07fwMinor\x12\x19\n\x08fw_patch\x18\x18\x20\x01(\rR\x07fwPatch\x12\x1b\
\n\tfw_vendor\x18\x19\x20\x01(\tR\x08fwVendor\x12$\n\x0efw_vendor_keys\
\x18\x1a\x20\x01(\x0cR\x0cfwVendorKeys\x12+\n\x11unfinished_backup\x18\
\x1b\x20\x01(\x08R\x10unfinishedBackup\x12\x1b\n\tno_backup\x18\x1c\x20\
\x01(\x08R\x08noBackup\x12#\n\rrecovery_mode\x18\x1d\x20\x01(\x08R\x0cre\
coveryMode\x12V\n\x0ccapabilities\x18\x1e\x20\x03(\x0e22.hw.trezor.messa\
ges.management.Features.CapabilityR\x0ccapabilities\x12J\n\x0bbackup_typ\
e\x18\x1f\x20\x01(\x0e2).hw.trezor.messages.management.BackupTypeR\nback\
upType\x12&\n\x0fsd_card_present\x18\x20\x20\x01(\x08R\rsdCardPresent\
\x12#\n\rsd_protection\x18!\x20\x01(\x08R\x0csdProtection\x120\n\x14wipe\
_code_protection\x18\"\x20\x01(\x08R\x12wipeCodeProtection\x12\x1d\n\nse\
ssion_id\x18#\x20\x01(\x0cR\tsessionId\x12=\n\x1bpassphrase_always_on_de\
vice\x18$\x20\x01(\x08R\x18passphraseAlwaysOnDevice\x12T\n\rsafety_check\
s\x18%\x20\x01(\x0e2/.hw.trezor.messages.management.SafetyCheckLevelR\
\x0csafetyChecks\x12+\n\x12auto_lock_delay_ms\x18&\x20\x01(\rR\x0fautoLo\
ckDelayMs\x12)\n\x10display_rotation\x18'\x20\x01(\rR\x0fdisplayRotation\
\x123\n\x15experimental_features\x18(\x20\x01(\x08R\x14experimentalFeatu\
res\"\xca\x03\n\nCapability\x12\x1c\n\x12Capability_Bitcoin\x10\x01\x1a\
\x04\x80\xa6\x1d\x01\x12\x1b\n\x17Capability_Bitcoin_like\x10\x02\x12\
\x16\n\x12Capability_Binance\x10\x03\x12\x16\n\x12Capability_Cardano\x10\
\x04\x12\x1b\n\x11Capability_Crypto\x10\x05\x1a\x04\x80\xa6\x1d\x01\x12\
\x12\n\x0eCapability_EOS\x10\x06\x12\x17\n\x13Capability_Ethereum\x10\
\x07\x12\x17\n\x0fCapability_Lisk\x10\x08\x1a\x02\x08\x01\x12\x15\n\x11C\
apability_Monero\x10\t\x12\x12\n\x0eCapability_NEM\x10\n\x12\x15\n\x11Ca\
pability_Ripple\x10\x0b\x12\x16\n\x12Capability_Stellar\x10\x0c\x12\x14\
\n\x10Capability_Tezos\x10\r\x12\x12\n\x0eCapability_U2F\x10\x0e\x12\x1b\
\n\x11Capability_Shamir\x10\x0f\x1a\x04\x80\xa6\x1d\x01\x12!\n\x17Capabi\
lity_ShamirGroups\x10\x10\x1a\x04\x80\xa6\x1d\x01\x12$\n\x1aCapability_P\
assphraseEntry\x10\x11\x1a\x04\x80\xa6\x1d\x01\x1a\x04\xc8\xf3\x18\x01\"\
\x0c\n\nLockDevice\"\x0c\n\nEndSession\"\xdc\x03\n\rApplySettings\x12\
\x1a\n\x08language\x18\x01\x20\x01(\tR\x08language\x12\x14\n\x05label\
\x18\x02\x20\x01(\tR\x05label\x12%\n\x0euse_passphrase\x18\x03\x20\x01(\
\x08R\rusePassphrase\x12\x1e\n\nhomescreen\x18\x04\x20\x01(\x0cR\nhomesc\
reen\x120\n\x12_passphrase_source\x18\x05\x20\x01(\rR\x10PassphraseSourc\
eB\x02\x18\x01\x12+\n\x12auto_lock_delay_ms\x18\x06\x20\x01(\rR\x0fautoL\
ockDelayMs\x12)\n\x10display_rotation\x18\x07\x20\x01(\rR\x0fdisplayRota\
tion\x12=\n\x1bpassphrase_always_on_device\x18\x08\x20\x01(\x08R\x18pass\
phraseAlwaysOnDevice\x12T\n\rsafety_checks\x18\t\x20\x01(\x0e2/.hw.trezo\
r.messages.management.SafetyCheckLevelR\x0csafetyChecks\x123\n\x15experi\
mental_features\x18\n\x20\x01(\x08R\x14experimentalFeatures\"\"\n\nApply\
Flags\x12\x14\n\x05flags\x18\x01\x20\x02(\rR\x05flags\"#\n\tChangePin\
\x12\x16\n\x06remove\x18\x01\x20\x01(\x08R\x06remove\"(\n\x0eChangeWipeC\
ode\x12\x16\n\x06remove\x18\x01\x20\x01(\x08R\x06remove\"\xaa\x01\n\tSdP\
rotect\x12]\n\toperation\x18\x01\x20\x02(\x0e2?.hw.trezor.messages.manag\
ement.SdProtect.SdProtectOperationTypeR\toperation\">\n\x16SdProtectOper\
ationType\x12\x0b\n\x07DISABLE\x10\0\x12\n\n\x06ENABLE\x10\x01\x12\x0b\n\
\x07REFRESH\x10\x02\"O\n\x04Ping\x12\x1a\n\x07message\x18\x01\x20\x01(\t\
:\0R\x07message\x12+\n\x11button_protection\x18\x02\x20\x01(\x08R\x10but\
tonProtection\"\x08\n\x06Cancel\"\x20\n\nGetEntropy\x12\x12\n\x04size\
\x18\x01\x20\x02(\rR\x04size\"#\n\x07Entropy\x12\x18\n\x07entropy\x18\
\x01\x20\x02(\x0cR\x07entropy\"\x0c\n\nWipeDevice\"\xb0\x02\n\nLoadDevic\
e\x12\x1c\n\tmnemonics\x18\x01\x20\x03(\tR\tmnemonics\x12\x10\n\x03pin\
\x18\x03\x20\x01(\tR\x03pin\x123\n\x15passphrase_protection\x18\x04\x20\
\x01(\x08R\x14passphraseProtection\x12!\n\x08language\x18\x05\x20\x01(\t\
:\x05en-USR\x08language\x12\x14\n\x05label\x18\x06\x20\x01(\tR\x05label\
\x12#\n\rskip_checksum\x18\x07\x20\x01(\x08R\x0cskipChecksum\x12\x1f\n\
\x0bu2f_counter\x18\x08\x20\x01(\rR\nu2fCounter\x12!\n\x0cneeds_backup\
\x18\t\x20\x01(\x08R\x0bneedsBackup\x12\x1b\n\tno_backup\x18\n\x20\x01(\
\x08R\x08noBackup\"\x9c\x03\n\x0bResetDevice\x12%\n\x0edisplay_random\
\x18\x01\x20\x01(\x08R\rdisplayRandom\x12\x1f\n\x08strength\x18\x02\x20\
\x01(\r:\x03256R\x08strength\x123\n\x15passphrase_protection\x18\x03\x20\
\x01(\x08R\x14passphraseProtection\x12%\n\x0epin_protection\x18\x04\x20\
\x01(\x08R\rpinProtection\x12!\n\x08language\x18\x05\x20\x01(\t:\x05en-U\
SR\x08language\x12\x14\n\x05label\x18\x06\x20\x01(\tR\x05label\x12\x1f\n\
\x0bu2f_counter\x18\x07\x20\x01(\rR\nu2fCounter\x12\x1f\n\x0bskip_backup\
\x18\x08\x20\x01(\x08R\nskipBackup\x12\x1b\n\tno_backup\x18\t\x20\x01(\
\x08R\x08noBackup\x12Q\n\x0bbackup_type\x18\n\x20\x01(\x0e2).hw.trezor.m\
essages.management.BackupType:\x05Bip39R\nbackupType\"\x0e\n\x0cBackupDe\
vice\"\x10\n\x0eEntropyRequest\"&\n\nEntropyAck\x12\x18\n\x07entropy\x18\
\x01\x20\x02(\x0cR\x07entropy\"\xd4\x03\n\x0eRecoveryDevice\x12\x1d\n\nw\
ord_count\x18\x01\x20\x01(\rR\twordCount\x123\n\x15passphrase_protection\
\x18\x02\x20\x01(\x08R\x14passphraseProtection\x12%\n\x0epin_protection\
\x18\x03\x20\x01(\x08R\rpinProtection\x12\x1a\n\x08language\x18\x04\x20\
\x01(\tR\x08language\x12\x14\n\x05label\x18\x05\x20\x01(\tR\x05label\x12\
)\n\x10enforce_wordlist\x18\x06\x20\x01(\x08R\x0fenforceWordlist\x12T\n\
\x04type\x18\x08\x20\x01(\x0e2@.hw.trezor.messages.management.RecoveryDe\
vice.RecoveryDeviceTypeR\x04type\x12\x1f\n\x0bu2f_counter\x18\t\x20\x01(\
\rR\nu2fCounter\x12\x17\n\x07dry_run\x18\n\x20\x01(\x08R\x06dryRun\"Z\n\
\x12RecoveryDeviceType\x12%\n!RecoveryDeviceType_ScrambledWords\x10\0\
\x12\x1d\n\x19RecoveryDeviceType_Matrix\x10\x01\"\xc5\x01\n\x0bWordReque\
st\x12N\n\x04type\x18\x01\x20\x02(\x0e2:.hw.trezor.messages.management.W\
ordRequest.WordRequestTypeR\x04type\"f\n\x0fWordRequestType\x12\x19\n\
\x15WordRequestType_Plain\x10\0\x12\x1b\n\x17WordRequestType_Matrix9\x10\
\x01\x12\x1b\n\x17WordRequestType_Matrix6\x10\x02\"\x1d\n\x07WordAck\x12\
\x12\n\x04word\x18\x01\x20\x02(\tR\x04word\"0\n\rSetU2FCounter\x12\x1f\n\
\x0bu2f_counter\x18\x01\x20\x02(\rR\nu2fCounter\"\x13\n\x11GetNextU2FCou\
nter\"1\n\x0eNextU2FCounter\x12\x1f\n\x0bu2f_counter\x18\x01\x20\x02(\rR\
\nu2fCounter\"\x11\n\x0fDoPreauthorized\"\x16\n\x14PreauthorizedRequest\
\"\x15\n\x13CancelAuthorization\"\x14\n\x12RebootToBootloader*>\n\nBacku\
pType\x12\t\n\x05Bip39\x10\0\x12\x10\n\x0cSlip39_Basic\x10\x01\x12\x13\n\
\x0fSlip39_Advanced\x10\x02*G\n\x10SafetyCheckLevel\x12\n\n\x06Strict\
\x10\0\x12\x10\n\x0cPromptAlways\x10\x01\x12\x15\n\x11PromptTemporarily\
\x10\x02BB\n#com.satoshilabs.trezor.lib.protobufB\x17TrezorMessageManage\
ment\x80\xa6\x1d\x01J\x91\x88\x01\n\x07\x12\x05\0\0\xa6\x03\x01\n\x08\n\
\x01\x0c\x12\x03\0\0\x12\n\x08\n\x01\x02\x12\x03\x01\0&\n\x08\n\x01\x08\
\x12\x03\x04\0<\n.\n\x02\x08\x01\x12\x03\x04\0<\x1a#\x20Sugar\x20for\x20\
easier\x20handling\x20in\x20Java\n\n\x08\n\x01\x08\x12\x03\x05\08\n\t\n\
\x02\x08\x08\x12\x03\x05\08\n\x08\n\x01\x08\x12\x03\x07\0(\n\x0b\n\x04\
\x08\xe0\xd4\x03\x12\x03\x07\0(\n\t\n\x02\x03\0\x12\x03\t\0\x18\n_\n\x02\
\x05\0\x12\x04\x0e\0\x12\x01\x1aS*\n\x20Type\x20of\x20the\x20mnemonic\
\x20backup\x20given/received\x20by\x20the\x20device\x20during\x20reset/r\
ecovery.\n\n\n\n\x03\x05\0\x01\x12\x03\x0e\x05\x0f\n8\n\x04\x05\0\x02\0\
\x12\x03\x0f\x04\x0e\"+\x20also\x20called\x20\"Single\x20Backup\",\x20se\
e\x20BIP-0039\n\n\x0c\n\x05\x05\0\x02\0\x01\x12\x03\x0f\x04\t\n\x0c\n\
\x05\x05\0\x02\0\x02\x12\x03\x0f\x0c\r\n9\n\x04\x05\0\x02\x01\x12\x03\
\x10\x04\x15\",\x20also\x20called\x20\"Shamir\x20Backup\",\x20see\x20SLI\
P-0039\n\n\x0c\n\x05\x05\0\x02\x01\x01\x12\x03\x10\x04\x10\n\x0c\n\x05\
\x05\0\x02\x01\x02\x12\x03\x10\x13\x14\na\n\x04\x05\0\x02\x02\x12\x03\
\x11\x04\x18\"T\x20also\x20called\x20\"Super\x20Shamir\"\x20or\x20\"Sham\
ir\x20with\x20Groups\",\x20see\x20SLIP-0039#two-level-scheme\n\n\x0c\n\
\x05\x05\0\x02\x02\x01\x12\x03\x11\x04\x13\n\x0c\n\x05\x05\0\x02\x02\x02\
\x12\x03\x11\x16\x17\n\x84\x01\n\x02\x05\x01\x12\x04\x17\0\x1b\x01\x1ax*\
\n\x20Level\x20of\x20safety\x20checks\x20for\x20unsafe\x20actions\x20lik\
e\x20spending\x20from\x20invalid\x20path\x20namespace\x20or\x20setting\
\x20high\x20transaction\x20fee.\n\n\n\n\x03\x05\x01\x01\x12\x03\x17\x05\
\x15\n;\n\x04\x05\x01\x02\0\x12\x03\x18\x04\x0f\".\x20disallow\x20unsafe\
\x20actions,\x20this\x20is\x20the\x20default\n\n\x0c\n\x05\x05\x01\x02\0\
\x01\x12\x03\x18\x04\n\n\x0c\n\x05\x05\x01\x02\0\x02\x12\x03\x18\r\x0e\n\
,\n\x04\x05\x01\x02\x01\x12\x03\x19\x04\x15\"\x1f\x20ask\x20user\x20befo\
re\x20unsafe\x20action\n\n\x0c\n\x05\x05\x01\x02\x01\x01\x12\x03\x19\x04\
\x10\n\x0c\n\x05\x05\x01\x02\x01\x02\x12\x03\x19\x13\x14\nC\n\x04\x05\
\x01\x02\x02\x12\x03\x1a\x04\x1a\"6\x20like\x20PromptAlways\x20but\x20re\
verts\x20to\x20Strict\x20after\x20reboot\n\n\x0c\n\x05\x05\x01\x02\x02\
\x01\x12\x03\x1a\x04\x15\n\x0c\n\x05\x05\x01\x02\x02\x02\x12\x03\x1a\x18\
\x19\ni\n\x02\x04\0\x12\x04\"\0&\x01\x1a]*\n\x20Request:\x20Reset\x20dev\
ice\x20to\x20default\x20state\x20and\x20ask\x20for\x20device\x20details\
\n\x20@start\n\x20@next\x20Features\n\n\n\n\x03\x04\0\x01\x12\x03\"\x08\
\x12\nZ\n\x04\x04\0\x02\0\x12\x03#\x04\"\"M\x20assumed\x20device\x20sess\
ion\x20id;\x20Trezor\x20clears\x20caches\x20if\x20it\x20is\x20different\
\x20or\x20empty\n\n\x0c\n\x05\x04\0\x02\0\x04\x12\x03#\x04\x0c\n\x0c\n\
\x05\x04\0\x02\0\x05\x12\x03#\r\x12\n\x0c\n\x05\x04\0\x02\0\x01\x12\x03#\
\x13\x1d\n\x0c\n\x05\x04\0\x02\0\x03\x12\x03#\x20!\n5\n\x04\x04\0\x02\
\x01\x12\x03$\x049\"(\x20removed\x20as\x20part\x20of\x20passphrase\x20re\
design\n\n\x0c\n\x05\x04\0\x02\x01\x04\x12\x03$\x04\x0c\n\x0c\n\x05\x04\
\0\x02\x01\x05\x12\x03$\r\x11\n\x0c\n\x05\x04\0\x02\x01\x01\x12\x03$\x12\
\"\n\x0c\n\x05\x04\0\x02\x01\x03\x12\x03$%&\n\x0c\n\x05\x04\0\x02\x01\
\x08\x12\x03$'8\n\r\n\x06\x04\0\x02\x01\x08\x03\x12\x03$(7\nI\n\x04\x04\
\0\x02\x02\x12\x03%\x04%\"<\x20whether\x20to\x20derive\x20Cardano\x20Ica\
rus\x20root\x20keys\x20in\x20this\x20session\n\n\x0c\n\x05\x04\0\x02\x02\
\x04\x12\x03%\x04\x0c\n\x0c\n\x05\x04\0\x02\x02\x05\x12\x03%\r\x11\n\x0c\
\n\x05\x04\0\x02\x02\x01\x12\x03%\x12\x20\n\x0c\n\x05\x04\0\x02\x02\x03\
\x12\x03%#$\nY\n\x02\x04\x01\x12\x04-\0.\x01\x1aM*\n\x20Request:\x20Ask\
\x20for\x20device\x20details\x20(no\x20device\x20reset)\n\x20@start\n\
\x20@next\x20Features\n\n\n\n\x03\x04\x01\x01\x12\x03-\x08\x13\nL\n\x02\
\x04\x02\x12\x044\0q\x01\x1a@*\n\x20Response:\x20Reports\x20various\x20i\
nformation\x20about\x20the\x20device\n\x20@end\n\n\n\n\x03\x04\x02\x01\
\x12\x034\x08\x10\n9\n\x04\x04\x02\x02\0\x12\x035\x04\x1f\",\x20name\x20\
of\x20the\x20manufacturer,\x20e.g.\x20\"trezor.io\"\n\n\x0c\n\x05\x04\
\x02\x02\0\x04\x12\x035\x04\x0c\n\x0c\n\x05\x04\x02\x02\0\x05\x12\x035\r\
\x13\n\x0c\n\x05\x04\x02\x02\0\x01\x12\x035\x14\x1a\n\x0c\n\x05\x04\x02\
\x02\0\x03\x12\x035\x1d\x1e\n?\n\x04\x04\x02\x02\x01\x12\x036\x04&\"2\
\x20major\x20version\x20of\x20the\x20firmware/bootloader,\x20e.g.\x201\n\
\n\x0c\n\x05\x04\x02\x02\x01\x04\x12\x036\x04\x0c\n\x0c\n\x05\x04\x02\
\x02\x01\x05\x12\x036\r\x13\n\x0c\n\x05\x04\x02\x02\x01\x01\x12\x036\x14\
!\n\x0c\n\x05\x04\x02\x02\x01\x03\x12\x036$%\n?\n\x04\x04\x02\x02\x02\
\x12\x037\x04&\"2\x20minor\x20version\x20of\x20the\x20firmware/bootloade\
r,\x20e.g.\x200\n\n\x0c\n\x05\x04\x02\x02\x02\x04\x12\x037\x04\x0c\n\x0c\
\n\x05\x04\x02\x02\x02\x05\x12\x037\r\x13\n\x0c\n\x05\x04\x02\x02\x02\
\x01\x12\x037\x14!\n\x0c\n\x05\x04\x02\x02\x02\x03\x12\x037$%\n?\n\x04\
\x04\x02\x02\x03\x12\x038\x04&\"2\x20patch\x20version\x20of\x20the\x20fi\
rmware/bootloader,\x20e.g.\x200\n\n\x0c\n\x05\x04\x02\x02\x03\x04\x12\
\x038\x04\x0c\n\x0c\n\x05\x04\x02\x02\x03\x05\x12\x038\r\x13\n\x0c\n\x05\
\x04\x02\x02\x03\x01\x12\x038\x14!\n\x0c\n\x05\x04\x02\x02\x03\x03\x12\
\x038$%\n,\n\x04\x04\x02\x02\x04\x12\x039\x04&\"\x1f\x20is\x20device\x20\
in\x20bootloader\x20mode?\n\n\x0c\n\x05\x04\x02\x02\x04\x04\x12\x039\x04\
\x0c\n\x0c\n\x05\x04\x02\x02\x04\x05\x12\x039\r\x11\n\x0c\n\x05\x04\x02\
\x02\x04\x01\x12\x039\x12!\n\x0c\n\x05\x04\x02\x02\x04\x03\x12\x039$%\n)\
\n\x04\x04\x02\x02\x05\x12\x03:\x04\"\"\x1c\x20device's\x20unique\x20ide\
ntifier\n\n\x0c\n\x05\x04\x02\x02\x05\x04\x12\x03:\x04\x0c\n\x0c\n\x05\
\x04\x02\x02\x05\x05\x12\x03:\r\x13\n\x0c\n\x05\x04\x02\x02\x05\x01\x12\
\x03:\x14\x1d\n\x0c\n\x05\x04\x02\x02\x05\x03\x12\x03:\x20!\n*\n\x04\x04\
\x02\x02\x06\x12\x03;\x04%\"\x1d\x20is\x20device\x20protected\x20by\x20P\
IN?\n\n\x0c\n\x05\x04\x02\x02\x06\x04\x12\x03;\x04\x0c\n\x0c\n\x05\x04\
\x02\x02\x06\x05\x12\x03;\r\x11\n\x0c\n\x05\x04\x02\x02\x06\x01\x12\x03;\
\x12\x20\n\x0c\n\x05\x04\x02\x02\x06\x03\x12\x03;#$\n;\n\x04\x04\x02\x02\
\x07\x12\x03<\x04,\".\x20is\x20node/mnemonic\x20encrypted\x20using\x20pa\
ssphrase?\n\n\x0c\n\x05\x04\x02\x02\x07\x04\x12\x03<\x04\x0c\n\x0c\n\x05\
\x04\x02\x02\x07\x05\x12\x03<\r\x11\n\x0c\n\x05\x04\x02\x02\x07\x01\x12\
\x03<\x12'\n\x0c\n\x05\x04\x02\x02\x07\x03\x12\x03<*+\n\x1e\n\x04\x04\
\x02\x02\x08\x12\x03=\x04!\"\x11\x20device\x20language\n\n\x0c\n\x05\x04\
\x02\x02\x08\x04\x12\x03=\x04\x0c\n\x0c\n\x05\x04\x02\x02\x08\x05\x12\
\x03=\r\x13\n\x0c\n\x05\x04\x02\x02\x08\x01\x12\x03=\x14\x1c\n\x0c\n\x05\
\x04\x02\x02\x08\x03\x12\x03=\x1f\x20\n'\n\x04\x04\x02\x02\t\x12\x03>\
\x04\x1f\"\x1a\x20device\x20description\x20label\n\n\x0c\n\x05\x04\x02\
\x02\t\x04\x12\x03>\x04\x0c\n\x0c\n\x05\x04\x02\x02\t\x05\x12\x03>\r\x13\
\n\x0c\n\x05\x04\x02\x02\t\x01\x12\x03>\x14\x19\n\x0c\n\x05\x04\x02\x02\
\t\x03\x12\x03>\x1c\x1e\n(\n\x04\x04\x02\x02\n\x12\x03?\x04#\"\x1b\x20do\
es\x20device\x20contain\x20seed?\n\n\x0c\n\x05\x04\x02\x02\n\x04\x12\x03\
?\x04\x0c\n\x0c\n\x05\x04\x02\x02\n\x05\x12\x03?\r\x11\n\x0c\n\x05\x04\
\x02\x02\n\x01\x12\x03?\x12\x1d\n\x0c\n\x05\x04\x02\x02\n\x03\x12\x03?\
\x20\"\n'\n\x04\x04\x02\x02\x0b\x12\x03@\x04!\"\x1a\x20SCM\x20revision\
\x20of\x20firmware\n\n\x0c\n\x05\x04\x02\x02\x0b\x04\x12\x03@\x04\x0c\n\
\x0c\n\x05\x04\x02\x02\x0b\x05\x12\x03@\r\x12\n\x0c\n\x05\x04\x02\x02\
\x0b\x01\x12\x03@\x13\x1b\n\x0c\n\x05\x04\x02\x02\x0b\x03\x12\x03@\x1e\
\x20\n%\n\x04\x04\x02\x02\x0c\x12\x03A\x04(\"\x18\x20hash\x20of\x20the\
\x20bootloader\n\n\x0c\n\x05\x04\x02\x02\x0c\x04\x12\x03A\x04\x0c\n\x0c\
\n\x05\x04\x02\x02\x0c\x05\x12\x03A\r\x12\n\x0c\n\x05\x04\x02\x02\x0c\
\x01\x12\x03A\x13\"\n\x0c\n\x05\x04\x02\x02\x0c\x03\x12\x03A%'\n<\n\x04\
\x04\x02\x02\r\x12\x03B\x04\x20\"/\x20was\x20storage\x20imported\x20from\
\x20an\x20external\x20source?\n\n\x0c\n\x05\x04\x02\x02\r\x04\x12\x03B\
\x04\x0c\n\x0c\n\x05\x04\x02\x02\r\x05\x12\x03B\r\x11\n\x0c\n\x05\x04\
\x02\x02\r\x01\x12\x03B\x12\x1a\n\x0c\n\x05\x04\x02\x02\r\x03\x12\x03B\
\x1d\x1f\nE\n\x04\x04\x02\x02\x0e\x12\x03C\x04\x20\"8\x20is\x20the\x20de\
vice\x20unlocked?\x20called\x20\"pin_cached\"\x20previously\n\n\x0c\n\
\x05\x04\x02\x02\x0e\x04\x12\x03C\x04\x0c\n\x0c\n\x05\x04\x02\x02\x0e\
\x05\x12\x03C\r\x11\n\x0c\n\x05\x04\x02\x02\x0e\x01\x12\x03C\x12\x1a\n\
\x0c\n\x05\x04\x02\x02\x0e\x03\x12\x03C\x1d\x1f\n7\n\x04\x04\x02\x02\x0f\
\x12\x03D\x04<\"*\x20is\x20passphrase\x20already\x20cached\x20in\x20sess\
ion?\n\n\x0c\n\x05\x04\x02\x02\x0f\x04\x12\x03D\x04\x0c\n\x0c\n\x05\x04\
\x02\x02\x0f\x05\x12\x03D\r\x11\n\x0c\n\x05\x04\x02\x02\x0f\x01\x12\x03D\
\x12$\n\x0c\n\x05\x04\x02\x02\x0f\x03\x12\x03D')\n\x0c\n\x05\x04\x02\x02\
\x0f\x08\x12\x03D*;\n\r\n\x06\x04\x02\x02\x0f\x08\x03\x12\x03D+:\n(\n\
\x04\x04\x02\x02\x10\x12\x03E\x04(\"\x1b\x20is\x20valid\x20firmware\x20l\
oaded?\n\n\x0c\n\x05\x04\x02\x02\x10\x04\x12\x03E\x04\x0c\n\x0c\n\x05\
\x04\x02\x02\x10\x05\x12\x03E\r\x11\n\x0c\n\x05\x04\x02\x02\x10\x01\x12\
\x03E\x12\"\n\x0c\n\x05\x04\x02\x02\x10\x03\x12\x03E%'\nI\n\x04\x04\x02\
\x02\x11\x12\x03F\x04$\"<\x20does\x20storage\x20need\x20backup?\x20(equa\
ls\x20to\x20Storage.needs_backup)\n\n\x0c\n\x05\x04\x02\x02\x11\x04\x12\
\x03F\x04\x0c\n\x0c\n\x05\x04\x02\x02\x11\x05\x12\x03F\r\x11\n\x0c\n\x05\
\x04\x02\x02\x11\x01\x12\x03F\x12\x1e\n\x0c\n\x05\x04\x02\x02\x11\x03\
\x12\x03F!#\n5\n\x04\x04\x02\x02\x12\x12\x03G\x04\x1f\"(\x20device\x20fl\
ags\x20(equals\x20to\x20Storage.flags)\n\n\x0c\n\x05\x04\x02\x02\x12\x04\
\x12\x03G\x04\x0c\n\x0c\n\x05\x04\x02\x02\x12\x05\x12\x03G\r\x13\n\x0c\n\
\x05\x04\x02\x02\x12\x01\x12\x03G\x14\x19\n\x0c\n\x05\x04\x02\x02\x12\
\x03\x12\x03G\x1c\x1e\n$\n\x04\x04\x02\x02\x13\x12\x03H\x04\x1f\"\x17\
\x20device\x20hardware\x20model\n\n\x0c\n\x05\x04\x02\x02\x13\x04\x12\
\x03H\x04\x0c\n\x0c\n\x05\x04\x02\x02\x13\x05\x12\x03H\r\x13\n\x0c\n\x05\
\x04\x02\x02\x13\x01\x12\x03H\x14\x19\n\x0c\n\x05\x04\x02\x02\x13\x03\
\x12\x03H\x1c\x1e\n>\n\x04\x04\x02\x02\x14\x12\x03I\x04\"\"1\x20reported\
\x20firmware\x20version\x20if\x20in\x20bootloader\x20mode\n\n\x0c\n\x05\
\x04\x02\x02\x14\x04\x12\x03I\x04\x0c\n\x0c\n\x05\x04\x02\x02\x14\x05\
\x12\x03I\r\x13\n\x0c\n\x05\x04\x02\x02\x14\x01\x12\x03I\x14\x1c\n\x0c\n\
\x05\x04\x02\x02\x14\x03\x12\x03I\x1f!\n>\n\x04\x04\x02\x02\x15\x12\x03J\
\x04\"\"1\x20reported\x20firmware\x20version\x20if\x20in\x20bootloader\
\x20mode\n\n\x0c\n\x05\x04\x02\x02\x15\x04\x12\x03J\x04\x0c\n\x0c\n\x05\
\x04\x02\x02\x15\x05\x12\x03J\r\x13\n\x0c\n\x05\x04\x02\x02\x15\x01\x12\
\x03J\x14\x1c\n\x0c\n\x05\x04\x02\x02\x15\x03\x12\x03J\x1f!\n>\n\x04\x04\
\x02\x02\x16\x12\x03K\x04\"\"1\x20reported\x20firmware\x20version\x20if\
\x20in\x20bootloader\x20mode\n\n\x0c\n\x05\x04\x02\x02\x16\x04\x12\x03K\
\x04\x0c\n\x0c\n\x05\x04\x02\x02\x16\x05\x12\x03K\r\x13\n\x0c\n\x05\x04\
\x02\x02\x16\x01\x12\x03K\x14\x1c\n\x0c\n\x05\x04\x02\x02\x16\x03\x12\
\x03K\x1f!\n=\n\x04\x04\x02\x02\x17\x12\x03L\x04#\"0\x20reported\x20firm\
ware\x20vendor\x20if\x20in\x20bootloader\x20mode\n\n\x0c\n\x05\x04\x02\
\x02\x17\x04\x12\x03L\x04\x0c\n\x0c\n\x05\x04\x02\x02\x17\x05\x12\x03L\r\
\x13\n\x0c\n\x05\x04\x02\x02\x17\x01\x12\x03L\x14\x1d\n\x0c\n\x05\x04\
\x02\x02\x17\x03\x12\x03L\x20\"\n9\n\x04\x04\x02\x02\x18\x12\x03M\x04'\"\
,\x20reported\x20firmware\x20vendor\x20keys\x20(their\x20hash)\n\n\x0c\n\
\x05\x04\x02\x02\x18\x04\x12\x03M\x04\x0c\n\x0c\n\x05\x04\x02\x02\x18\
\x05\x12\x03M\r\x12\n\x0c\n\x05\x04\x02\x02\x18\x01\x12\x03M\x13!\n\x0c\
\n\x05\x04\x02\x02\x18\x03\x12\x03M$&\nM\n\x04\x04\x02\x02\x19\x12\x03N\
\x04)\"@\x20report\x20unfinished\x20backup\x20(equals\x20to\x20Storage.u\
nfinished_backup)\n\n\x0c\n\x05\x04\x02\x02\x19\x04\x12\x03N\x04\x0c\n\
\x0c\n\x05\x04\x02\x02\x19\x05\x12\x03N\r\x11\n\x0c\n\x05\x04\x02\x02\
\x19\x01\x12\x03N\x12#\n\x0c\n\x05\x04\x02\x02\x19\x03\x12\x03N&(\n=\n\
\x04\x04\x02\x02\x1a\x12\x03O\x04!\"0\x20report\x20no\x20backup\x20(equa\
ls\x20to\x20Storage.no_backup)\n\n\x0c\n\x05\x04\x02\x02\x1a\x04\x12\x03\
O\x04\x0c\n\x0c\n\x05\x04\x02\x02\x1a\x05\x12\x03O\r\x11\n\x0c\n\x05\x04\
\x02\x02\x1a\x01\x12\x03O\x12\x1b\n\x0c\n\x05\x04\x02\x02\x1a\x03\x12\
\x03O\x1e\x20\n+\n\x04\x04\x02\x02\x1b\x12\x03P\x04%\"\x1e\x20is\x20reco\
very\x20mode\x20in\x20progress\n\n\x0c\n\x05\x04\x02\x02\x1b\x04\x12\x03\
P\x04\x0c\n\x0c\n\x05\x04\x02\x02\x1b\x05\x12\x03P\r\x11\n\x0c\n\x05\x04\
\x02\x02\x1b\x01\x12\x03P\x12\x1f\n\x0c\n\x05\x04\x02\x02\x1b\x03\x12\
\x03P\"$\n-\n\x04\x04\x02\x02\x1c\x12\x03Q\x04*\"\x20\x20list\x20of\x20s\
upported\x20capabilities\n\n\x0c\n\x05\x04\x02\x02\x1c\x04\x12\x03Q\x04\
\x0c\n\x0c\n\x05\x04\x02\x02\x1c\x06\x12\x03Q\r\x17\n\x0c\n\x05\x04\x02\
\x02\x1c\x01\x12\x03Q\x18$\n\x0c\n\x05\x04\x02\x02\x1c\x03\x12\x03Q')\n\
\x0c\n\x04\x04\x02\x04\0\x12\x04R\x04f\x05\n\x0c\n\x05\x04\x02\x04\0\x01\
\x12\x03R\t\x13\n\x0c\n\x05\x04\x02\x04\0\x03\x12\x03S\x080\n\x0f\n\x08\
\x04\x02\x04\0\x03\xb9\x8e\x03\x12\x03S\x080\n\r\n\x06\x04\x02\x04\0\x02\
\0\x12\x03U\x087\n\x0e\n\x07\x04\x02\x04\0\x02\0\x01\x12\x03U\x08\x1a\n\
\x0e\n\x07\x04\x02\x04\0\x02\0\x02\x12\x03U\x1d\x1e\n\x0e\n\x07\x04\x02\
\x04\0\x02\0\x03\x12\x03U\x1f6\n\x11\n\n\x04\x02\x04\0\x02\0\x03\xe0\xd4\
\x03\x12\x03U\x205\n:\n\x06\x04\x02\x04\0\x02\x01\x12\x03V\x08$\"+\x20Al\
tcoins\x20based\x20on\x20the\x20Bitcoin\x20source\x20code\n\n\x0e\n\x07\
\x04\x02\x04\0\x02\x01\x01\x12\x03V\x08\x1f\n\x0e\n\x07\x04\x02\x04\0\
\x02\x01\x02\x12\x03V\"#\n\r\n\x06\x04\x02\x04\0\x02\x02\x12\x03W\x08\
\x1f\n\x0e\n\x07\x04\x02\x04\0\x02\x02\x01\x12\x03W\x08\x1a\n\x0e\n\x07\
\x04\x02\x04\0\x02\x02\x02\x12\x03W\x1d\x1e\n\r\n\x06\x04\x02\x04\0\x02\
\x03\x12\x03X\x08\x1f\n\x0e\n\x07\x04\x02\x04\0\x02\x03\x01\x12\x03X\x08\
\x1a\n\x0e\n\x07\x04\x02\x04\0\x02\x03\x02\x12\x03X\x1d\x1e\n=\n\x06\x04\
\x02\x04\0\x02\x04\x12\x03Y\x086\".\x20generic\x20crypto\x20operations\
\x20for\x20GPG,\x20SSH,\x20etc.\n\n\x0e\n\x07\x04\x02\x04\0\x02\x04\x01\
\x12\x03Y\x08\x19\n\x0e\n\x07\x04\x02\x04\0\x02\x04\x02\x12\x03Y\x1c\x1d\
\n\x0e\n\x07\x04\x02\x04\0\x02\x04\x03\x12\x03Y\x1e5\n\x11\n\n\x04\x02\
\x04\0\x02\x04\x03\xe0\xd4\x03\x12\x03Y\x1f4\n\r\n\x06\x04\x02\x04\0\x02\
\x05\x12\x03Z\x08\x1b\n\x0e\n\x07\x04\x02\x04\0\x02\x05\x01\x12\x03Z\x08\
\x16\n\x0e\n\x07\x04\x02\x04\0\x02\x05\x02\x12\x03Z\x19\x1a\n\r\n\x06\
\x04\x02\x04\0\x02\x06\x12\x03[\x08\x20\n\x0e\n\x07\x04\x02\x04\0\x02\
\x06\x01\x12\x03[\x08\x1b\n\x0e\n\x07\x04\x02\x04\0\x02\x06\x02\x12\x03[\
\x1e\x1f\n\r\n\x06\x04\x02\x04\0\x02\x07\x12\x03\\\x080\n\x0e\n\x07\x04\
\x02\x04\0\x02\x07\x01\x12\x03\\\x08\x17\n\x0e\n\x07\x04\x02\x04\0\x02\
\x07\x02\x12\x03\\\x1a\x1b\n\x0e\n\x07\x04\x02\x04\0\x02\x07\x03\x12\x03\
\\\x1c/\n\x0f\n\x08\x04\x02\x04\0\x02\x07\x03\x01\x12\x03\\\x1d.\n\r\n\
\x06\x04\x02\x04\0\x02\x08\x12\x03]\x08\x1e\n\x0e\n\x07\x04\x02\x04\0\
\x02\x08\x01\x12\x03]\x08\x19\n\x0e\n\x07\x04\x02\x04\0\x02\x08\x02\x12\
\x03]\x1c\x1d\n\r\n\x06\x04\x02\x04\0\x02\t\x12\x03^\x08\x1c\n\x0e\n\x07\
\x04\x02\x04\0\x02\t\x01\x12\x03^\x08\x16\n\x0e\n\x07\x04\x02\x04\0\x02\
\t\x02\x12\x03^\x19\x1b\n\r\n\x06\x04\x02\x04\0\x02\n\x12\x03_\x08\x1f\n\
\x0e\n\x07\x04\x02\x04\0\x02\n\x01\x12\x03_\x08\x19\n\x0e\n\x07\x04\x02\
\x04\0\x02\n\x02\x12\x03_\x1c\x1e\n\r\n\x06\x04\x02\x04\0\x02\x0b\x12\
\x03`\x08\x20\n\x0e\n\x07\x04\x02\x04\0\x02\x0b\x01\x12\x03`\x08\x1a\n\
\x0e\n\x07\x04\x02\x04\0\x02\x0b\x02\x12\x03`\x1d\x1f\n\r\n\x06\x04\x02\
\x04\0\x02\x0c\x12\x03a\x08\x1e\n\x0e\n\x07\x04\x02\x04\0\x02\x0c\x01\
\x12\x03a\x08\x18\n\x0e\n\x07\x04\x02\x04\0\x02\x0c\x02\x12\x03a\x1b\x1d\
\n\r\n\x06\x04\x02\x04\0\x02\r\x12\x03b\x08\x1c\n\x0e\n\x07\x04\x02\x04\
\0\x02\r\x01\x12\x03b\x08\x16\n\x0e\n\x07\x04\x02\x04\0\x02\r\x02\x12\
\x03b\x19\x1b\n\r\n\x06\x04\x02\x04\0\x02\x0e\x12\x03c\x087\n\x0e\n\x07\
\x04\x02\x04\0\x02\x0e\x01\x12\x03c\x08\x19\n\x0e\n\x07\x04\x02\x04\0\
\x02\x0e\x02\x12\x03c\x1c\x1e\n\x0e\n\x07\x04\x02\x04\0\x02\x0e\x03\x12\
\x03c\x1f6\n\x11\n\n\x04\x02\x04\0\x02\x0e\x03\xe0\xd4\x03\x12\x03c\x205\
\n\r\n\x06\x04\x02\x04\0\x02\x0f\x12\x03d\x08=\n\x0e\n\x07\x04\x02\x04\0\
\x02\x0f\x01\x12\x03d\x08\x1f\n\x0e\n\x07\x04\x02\x04\0\x02\x0f\x02\x12\
\x03d\"$\n\x0e\n\x07\x04\x02\x04\0\x02\x0f\x03\x12\x03d%<\n\x11\n\n\x04\
\x02\x04\0\x02\x0f\x03\xe0\xd4\x03\x12\x03d&;\nQ\n\x06\x04\x02\x04\0\x02\
\x10\x12\x03e\x08@\"B\x20the\x20device\x20is\x20capable\x20of\x20passphr\
ase\x20entry\x20directly\x20on\x20the\x20device\n\n\x0e\n\x07\x04\x02\
\x04\0\x02\x10\x01\x12\x03e\x08\"\n\x0e\n\x07\x04\x02\x04\0\x02\x10\x02\
\x12\x03e%'\n\x0e\n\x07\x04\x02\x04\0\x02\x10\x03\x12\x03e(?\n\x11\n\n\
\x04\x02\x04\0\x02\x10\x03\xe0\xd4\x03\x12\x03e)>\nP\n\x04\x04\x02\x02\
\x1d\x12\x03g\x04)\"C\x20type\x20of\x20device\x20backup\x20(BIP-39\x20/\
\x20SLIP-39\x20basic\x20/\x20SLIP-39\x20advanced)\n\n\x0c\n\x05\x04\x02\
\x02\x1d\x04\x12\x03g\x04\x0c\n\x0c\n\x05\x04\x02\x02\x1d\x06\x12\x03g\r\
\x17\n\x0c\n\x05\x04\x02\x02\x1d\x01\x12\x03g\x18#\n\x0c\n\x05\x04\x02\
\x02\x1d\x03\x12\x03g&(\n!\n\x04\x04\x02\x02\x1e\x12\x03h\x04'\"\x14\x20\
is\x20SD\x20card\x20present\n\n\x0c\n\x05\x04\x02\x02\x1e\x04\x12\x03h\
\x04\x0c\n\x0c\n\x05\x04\x02\x02\x1e\x05\x12\x03h\r\x11\n\x0c\n\x05\x04\
\x02\x02\x1e\x01\x12\x03h\x12!\n\x0c\n\x05\x04\x02\x02\x1e\x03\x12\x03h$\
&\n$\n\x04\x04\x02\x02\x1f\x12\x03i\x04%\"\x17\x20is\x20SD\x20Protect\
\x20enabled\n\n\x0c\n\x05\x04\x02\x02\x1f\x04\x12\x03i\x04\x0c\n\x0c\n\
\x05\x04\x02\x02\x1f\x05\x12\x03i\r\x11\n\x0c\n\x05\x04\x02\x02\x1f\x01\
\x12\x03i\x12\x1f\n\x0c\n\x05\x04\x02\x02\x1f\x03\x12\x03i\"$\n.\n\x04\
\x04\x02\x02\x20\x12\x03j\x04,\"!\x20is\x20wipe\x20code\x20protection\
\x20enabled\n\n\x0c\n\x05\x04\x02\x02\x20\x04\x12\x03j\x04\x0c\n\x0c\n\
\x05\x04\x02\x02\x20\x05\x12\x03j\r\x11\n\x0c\n\x05\x04\x02\x02\x20\x01\
\x12\x03j\x12&\n\x0c\n\x05\x04\x02\x02\x20\x03\x12\x03j)+\n\x0b\n\x04\
\x04\x02\x02!\x12\x03k\x04#\n\x0c\n\x05\x04\x02\x02!\x04\x12\x03k\x04\
\x0c\n\x0c\n\x05\x04\x02\x02!\x05\x12\x03k\r\x12\n\x0c\n\x05\x04\x02\x02\
!\x01\x12\x03k\x13\x1d\n\x0c\n\x05\x04\x02\x02!\x03\x12\x03k\x20\"\n9\n\
\x04\x04\x02\x02\"\x12\x03l\x043\",\x20device\x20enforces\x20passphrase\
\x20entry\x20on\x20Trezor\n\n\x0c\n\x05\x04\x02\x02\"\x04\x12\x03l\x04\
\x0c\n\x0c\n\x05\x04\x02\x02\"\x05\x12\x03l\r\x11\n\x0c\n\x05\x04\x02\
\x02\"\x01\x12\x03l\x12-\n\x0c\n\x05\x04\x02\x02\"\x03\x12\x03l02\nT\n\
\x04\x04\x02\x02#\x12\x03m\x041\"G\x20safety\x20check\x20level,\x20set\
\x20to\x20Prompt\x20to\x20limit\x20path\x20namespace\x20enforcement\n\n\
\x0c\n\x05\x04\x02\x02#\x04\x12\x03m\x04\x0c\n\x0c\n\x05\x04\x02\x02#\
\x06\x12\x03m\r\x1d\n\x0c\n\x05\x04\x02\x02#\x01\x12\x03m\x1e+\n\x0c\n\
\x05\x04\x02\x02#\x03\x12\x03m.0\nI\n\x04\x04\x02\x02$\x12\x03n\x04,\"<\
\x20number\x20of\x20milliseconds\x20after\x20which\x20the\x20device\x20l\
ocks\x20itself\n\n\x0c\n\x05\x04\x02\x02$\x04\x12\x03n\x04\x0c\n\x0c\n\
\x05\x04\x02\x02$\x05\x12\x03n\r\x13\n\x0c\n\x05\x04\x02\x02$\x01\x12\
\x03n\x14&\n\x0c\n\x05\x04\x02\x02$\x03\x12\x03n)+\n$\n\x04\x04\x02\x02%\
\x12\x03o\x04*\"\x17\x20in\x20degrees\x20from\x20North\n\n\x0c\n\x05\x04\
\x02\x02%\x04\x12\x03o\x04\x0c\n\x0c\n\x05\x04\x02\x02%\x05\x12\x03o\r\
\x13\n\x0c\n\x05\x04\x02\x02%\x01\x12\x03o\x14$\n\x0c\n\x05\x04\x02\x02%\
\x03\x12\x03o')\n6\n\x04\x04\x02\x02&\x12\x03p\x04-\")\x20are\x20experim\
ental\x20message\x20types\x20enabled?\n\n\x0c\n\x05\x04\x02\x02&\x04\x12\
\x03p\x04\x0c\n\x0c\n\x05\x04\x02\x02&\x05\x12\x03p\r\x11\n\x0c\n\x05\
\x04\x02\x02&\x01\x12\x03p\x12'\n\x0c\n\x05\x04\x02\x02&\x03\x12\x03p*,\
\n\x84\x01\n\x02\x04\x03\x12\x04x\0y\x01\x1ax*\n\x20Request:\x20soft-loc\
k\x20the\x20device.\x20Following\x20actions\x20will\x20require\x20PIN.\
\x20Passphrases\x20remain\x20cached.\n\x20@start\n\x20@next\x20Success\n\
\n\n\n\x03\x04\x03\x01\x12\x03x\x08\x12\n\xde\x01\n\x02\x04\x04\x12\x06\
\x82\x01\0\x83\x01\x01\x1a\xcf\x01*\n\x20Request:\x20end\x20the\x20curre\
nt\x20sesson.\x20Following\x20actions\x20must\x20call\x20Initialize\x20a\
gain.\n\x20Cache\x20for\x20the\x20current\x20session\x20is\x20discarded,\
\x20other\x20sessions\x20remain\x20intact.\n\x20Device\x20is\x20not\x20P\
IN-locked.\n\x20@start\n\x20@next\x20Success\n\n\x0b\n\x03\x04\x04\x01\
\x12\x04\x82\x01\x08\x12\nk\n\x02\x04\x05\x12\x06\x8b\x01\0\x96\x01\x01\
\x1a]*\n\x20Request:\x20change\x20language\x20and/or\x20label\x20of\x20t\
he\x20device\n\x20@start\n\x20@next\x20Success\n\x20@next\x20Failure\n\n\
\x0b\n\x03\x04\x05\x01\x12\x04\x8b\x01\x08\x15\n\x0c\n\x04\x04\x05\x02\0\
\x12\x04\x8c\x01\x04!\n\r\n\x05\x04\x05\x02\0\x04\x12\x04\x8c\x01\x04\
\x0c\n\r\n\x05\x04\x05\x02\0\x05\x12\x04\x8c\x01\r\x13\n\r\n\x05\x04\x05\
\x02\0\x01\x12\x04\x8c\x01\x14\x1c\n\r\n\x05\x04\x05\x02\0\x03\x12\x04\
\x8c\x01\x1f\x20\n\x0c\n\x04\x04\x05\x02\x01\x12\x04\x8d\x01\x04\x1e\n\r\
\n\x05\x04\x05\x02\x01\x04\x12\x04\x8d\x01\x04\x0c\n\r\n\x05\x04\x05\x02\
\x01\x05\x12\x04\x8d\x01\r\x13\n\r\n\x05\x04\x05\x02\x01\x01\x12\x04\x8d\
\x01\x14\x19\n\r\n\x05\x04\x05\x02\x01\x03\x12\x04\x8d\x01\x1c\x1d\n\x0c\
\n\x04\x04\x05\x02\x02\x12\x04\x8e\x01\x04%\n\r\n\x05\x04\x05\x02\x02\
\x04\x12\x04\x8e\x01\x04\x0c\n\r\n\x05\x04\x05\x02\x02\x05\x12\x04\x8e\
\x01\r\x11\n\r\n\x05\x04\x05\x02\x02\x01\x12\x04\x8e\x01\x12\x20\n\r\n\
\x05\x04\x05\x02\x02\x03\x12\x04\x8e\x01#$\n\x0c\n\x04\x04\x05\x02\x03\
\x12\x04\x8f\x01\x04\"\n\r\n\x05\x04\x05\x02\x03\x04\x12\x04\x8f\x01\x04\
\x0c\n\r\n\x05\x04\x05\x02\x03\x05\x12\x04\x8f\x01\r\x12\n\r\n\x05\x04\
\x05\x02\x03\x01\x12\x04\x8f\x01\x13\x1d\n\r\n\x05\x04\x05\x02\x03\x03\
\x12\x04\x8f\x01\x20!\n.\n\x04\x04\x05\x02\x04\x12\x04\x90\x01\x04=\"\
\x20\x20ASK\x20=\x200;\x20DEVICE\x20=\x201;\x20HOST\x20=\x202;\n\n\r\n\
\x05\x04\x05\x02\x04\x04\x12\x04\x90\x01\x04\x0c\n\r\n\x05\x04\x05\x02\
\x04\x05\x12\x04\x90\x01\r\x13\n\r\n\x05\x04\x05\x02\x04\x01\x12\x04\x90\
\x01\x14&\n\r\n\x05\x04\x05\x02\x04\x03\x12\x04\x90\x01)*\n\r\n\x05\x04\
\x05\x02\x04\x08\x12\x04\x90\x01+<\n\x0e\n\x06\x04\x05\x02\x04\x08\x03\
\x12\x04\x90\x01,;\n\x0c\n\x04\x04\x05\x02\x05\x12\x04\x91\x01\x04+\n\r\
\n\x05\x04\x05\x02\x05\x04\x12\x04\x91\x01\x04\x0c\n\r\n\x05\x04\x05\x02\
\x05\x05\x12\x04\x91\x01\r\x13\n\r\n\x05\x04\x05\x02\x05\x01\x12\x04\x91\
\x01\x14&\n\r\n\x05\x04\x05\x02\x05\x03\x12\x04\x91\x01)*\n%\n\x04\x04\
\x05\x02\x06\x12\x04\x92\x01\x04)\"\x17\x20in\x20degrees\x20from\x20Nort\
h\n\n\r\n\x05\x04\x05\x02\x06\x04\x12\x04\x92\x01\x04\x0c\n\r\n\x05\x04\
\x05\x02\x06\x05\x12\x04\x92\x01\r\x13\n\r\n\x05\x04\x05\x02\x06\x01\x12\
\x04\x92\x01\x14$\n\r\n\x05\x04\x05\x02\x06\x03\x12\x04\x92\x01'(\nB\n\
\x04\x04\x05\x02\x07\x12\x04\x93\x01\x042\"4\x20do\x20not\x20prompt\x20f\
or\x20passphrase,\x20enforce\x20device\x20entry\n\n\r\n\x05\x04\x05\x02\
\x07\x04\x12\x04\x93\x01\x04\x0c\n\r\n\x05\x04\x05\x02\x07\x05\x12\x04\
\x93\x01\r\x11\n\r\n\x05\x04\x05\x02\x07\x01\x12\x04\x93\x01\x12-\n\r\n\
\x05\x04\x05\x02\x07\x03\x12\x04\x93\x0101\nU\n\x04\x04\x05\x02\x08\x12\
\x04\x94\x01\x040\"G\x20Safety\x20check\x20level,\x20set\x20to\x20Prompt\
\x20to\x20limit\x20path\x20namespace\x20enforcement\n\n\r\n\x05\x04\x05\
\x02\x08\x04\x12\x04\x94\x01\x04\x0c\n\r\n\x05\x04\x05\x02\x08\x06\x12\
\x04\x94\x01\r\x1d\n\r\n\x05\x04\x05\x02\x08\x01\x12\x04\x94\x01\x1e+\n\
\r\n\x05\x04\x05\x02\x08\x03\x12\x04\x94\x01./\n1\n\x04\x04\x05\x02\t\
\x12\x04\x95\x01\x04-\"#\x20enable\x20experimental\x20message\x20types\n\
\n\r\n\x05\x04\x05\x02\t\x04\x12\x04\x95\x01\x04\x0c\n\r\n\x05\x04\x05\
\x02\t\x05\x12\x04\x95\x01\r\x11\n\r\n\x05\x04\x05\x02\t\x01\x12\x04\x95\
\x01\x12'\n\r\n\x05\x04\x05\x02\t\x03\x12\x04\x95\x01*,\nX\n\x02\x04\x06\
\x12\x06\x9e\x01\0\xa0\x01\x01\x1aJ*\n\x20Request:\x20set\x20flags\x20of\
\x20the\x20device\n\x20@start\n\x20@next\x20Success\n\x20@next\x20Failur\
e\n\n\x0b\n\x03\x04\x06\x01\x12\x04\x9e\x01\x08\x12\n5\n\x04\x04\x06\x02\
\0\x12\x04\x9f\x01\x04\x1e\"'\x20bitmask,\x20can\x20only\x20set\x20bits,\
\x20not\x20unset\n\n\r\n\x05\x04\x06\x02\0\x04\x12\x04\x9f\x01\x04\x0c\n\
\r\n\x05\x04\x06\x02\0\x05\x12\x04\x9f\x01\r\x13\n\r\n\x05\x04\x06\x02\0\
\x01\x12\x04\x9f\x01\x14\x19\n\r\n\x05\x04\x06\x02\0\x03\x12\x04\x9f\x01\
\x1c\x1d\nv\n\x02\x04\x07\x12\x06\xa8\x01\0\xaa\x01\x01\x1ah*\n\x20Reque\
st:\x20Starts\x20workflow\x20for\x20setting/changing/removing\x20the\x20\
PIN\n\x20@start\n\x20@next\x20Success\n\x20@next\x20Failure\n\n\x0b\n\
\x03\x04\x07\x01\x12\x04\xa8\x01\x08\x11\n)\n\x04\x04\x07\x02\0\x12\x04\
\xa9\x01\x04\x1d\"\x1b\x20is\x20PIN\x20removal\x20requested?\n\n\r\n\x05\
\x04\x07\x02\0\x04\x12\x04\xa9\x01\x04\x0c\n\r\n\x05\x04\x07\x02\0\x05\
\x12\x04\xa9\x01\r\x11\n\r\n\x05\x04\x07\x02\0\x01\x12\x04\xa9\x01\x12\
\x18\n\r\n\x05\x04\x07\x02\0\x03\x12\x04\xa9\x01\x1b\x1c\ns\n\x02\x04\
\x08\x12\x06\xb2\x01\0\xb4\x01\x01\x1ae*\n\x20Request:\x20Starts\x20work\
flow\x20for\x20setting/removing\x20the\x20wipe\x20code\n\x20@start\n\x20\
@next\x20Success\n\x20@next\x20Failure\n\n\x0b\n\x03\x04\x08\x01\x12\x04\
\xb2\x01\x08\x16\n/\n\x04\x04\x08\x02\0\x12\x04\xb3\x01\x04\x1d\"!\x20is\
\x20wipe\x20code\x20removal\x20requested?\n\n\r\n\x05\x04\x08\x02\0\x04\
\x12\x04\xb3\x01\x04\x0c\n\r\n\x05\x04\x08\x02\0\x05\x12\x04\xb3\x01\r\
\x11\n\r\n\x05\x04\x08\x02\0\x01\x12\x04\xb3\x01\x12\x18\n\r\n\x05\x04\
\x08\x02\0\x03\x12\x04\xb3\x01\x1b\x1c\n\x87\x01\n\x02\x04\t\x12\x06\xbc\
\x01\0\xc6\x01\x01\x1ay*\n\x20Request:\x20Starts\x20workflow\x20for\x20e\
nabling/regenerating/disabling\x20SD\x20card\x20protection\n\x20@start\n\
\x20@next\x20Success\n\x20@next\x20Failure\n\n\x0b\n\x03\x04\t\x01\x12\
\x04\xbc\x01\x08\x11\n\x0c\n\x04\x04\t\x02\0\x12\x04\xbd\x01\x042\n\r\n\
\x05\x04\t\x02\0\x04\x12\x04\xbd\x01\x04\x0c\n\r\n\x05\x04\t\x02\0\x06\
\x12\x04\xbd\x01\r#\n\r\n\x05\x04\t\x02\0\x01\x12\x04\xbd\x01$-\n\r\n\
\x05\x04\t\x02\0\x03\x12\x04\xbd\x0101\nG\n\x04\x04\t\x04\0\x12\x06\xc1\
\x01\x04\xc5\x01\x05\x1a7*\n\x20Structure\x20representing\x20SD\x20card\
\x20protection\x20operation\n\n\r\n\x05\x04\t\x04\0\x01\x12\x04\xc1\x01\
\t\x1f\n\x0e\n\x06\x04\t\x04\0\x02\0\x12\x04\xc2\x01\x08\x14\n\x0f\n\x07\
\x04\t\x04\0\x02\0\x01\x12\x04\xc2\x01\x08\x0f\n\x0f\n\x07\x04\t\x04\0\
\x02\0\x02\x12\x04\xc2\x01\x12\x13\n\x0e\n\x06\x04\t\x04\0\x02\x01\x12\
\x04\xc3\x01\x08\x13\n\x0f\n\x07\x04\t\x04\0\x02\x01\x01\x12\x04\xc3\x01\
\x08\x0e\n\x0f\n\x07\x04\t\x04\0\x02\x01\x02\x12\x04\xc3\x01\x11\x12\n\
\x0e\n\x06\x04\t\x04\0\x02\x02\x12\x04\xc4\x01\x08\x14\n\x0f\n\x07\x04\t\
\x04\0\x02\x02\x01\x12\x04\xc4\x01\x08\x0f\n\x0f\n\x07\x04\t\x04\0\x02\
\x02\x02\x12\x04\xc4\x01\x12\x13\n\x80\x01\n\x02\x04\n\x12\x06\xcd\x01\0\
\xd0\x01\x01\x1ar*\n\x20Request:\x20Test\x20if\x20the\x20device\x20is\
\x20alive,\x20device\x20sends\x20back\x20the\x20message\x20in\x20Success\
\x20response\n\x20@start\n\x20@next\x20Success\n\n\x0b\n\x03\x04\n\x01\
\x12\x04\xcd\x01\x08\x0c\n7\n\x04\x04\n\x02\0\x12\x04\xce\x01\x04-\")\
\x20message\x20to\x20send\x20back\x20in\x20Success\x20message\n\n\r\n\
\x05\x04\n\x02\0\x04\x12\x04\xce\x01\x04\x0c\n\r\n\x05\x04\n\x02\0\x05\
\x12\x04\xce\x01\r\x13\n\r\n\x05\x04\n\x02\0\x01\x12\x04\xce\x01\x14\x1b\
\n\r\n\x05\x04\n\x02\0\x03\x12\x04\xce\x01\x1e\x1f\n\r\n\x05\x04\n\x02\0\
\x08\x12\x04\xce\x01\x20,\n\r\n\x05\x04\n\x02\0\x07\x12\x04\xce\x01)+\n$\
\n\x04\x04\n\x02\x01\x12\x04\xcf\x01\x04(\"\x16\x20ask\x20for\x20button\
\x20press\n\n\r\n\x05\x04\n\x02\x01\x04\x12\x04\xcf\x01\x04\x0c\n\r\n\
\x05\x04\n\x02\x01\x05\x12\x04\xcf\x01\r\x11\n\r\n\x05\x04\n\x02\x01\x01\
\x12\x04\xcf\x01\x12#\n\r\n\x05\x04\n\x02\x01\x03\x12\x04\xcf\x01&'\ne\n\
\x02\x04\x0b\x12\x06\xd7\x01\0\xd8\x01\x01\x1aW*\n\x20Request:\x20Abort\
\x20last\x20operation\x20that\x20required\x20user\x20interaction\n\x20@s\
tart\n\x20@next\x20Failure\n\n\x0b\n\x03\x04\x0b\x01\x12\x04\xd7\x01\x08\
\x0e\n\x95\x01\n\x02\x04\x0c\x12\x06\xe0\x01\0\xe2\x01\x01\x1a\x86\x01*\
\n\x20Request:\x20Request\x20a\x20sample\x20of\x20random\x20data\x20gene\
rated\x20by\x20hardware\x20RNG.\x20May\x20be\x20used\x20for\x20testing.\
\n\x20@start\n\x20@next\x20Entropy\n\x20@next\x20Failure\n\n\x0b\n\x03\
\x04\x0c\x01\x12\x04\xe0\x01\x08\x12\n)\n\x04\x04\x0c\x02\0\x12\x04\xe1\
\x01\x04\x1d\"\x1b\x20size\x20of\x20requested\x20entropy\n\n\r\n\x05\x04\
\x0c\x02\0\x04\x12\x04\xe1\x01\x04\x0c\n\r\n\x05\x04\x0c\x02\0\x05\x12\
\x04\xe1\x01\r\x13\n\r\n\x05\x04\x0c\x02\0\x01\x12\x04\xe1\x01\x14\x18\n\
\r\n\x05\x04\x0c\x02\0\x03\x12\x04\xe1\x01\x1b\x1c\nR\n\x02\x04\r\x12\
\x06\xe8\x01\0\xea\x01\x01\x1aD*\n\x20Response:\x20Reply\x20with\x20rand\
om\x20data\x20generated\x20by\x20internal\x20RNG\n\x20@end\n\n\x0b\n\x03\
\x04\r\x01\x12\x04\xe8\x01\x08\x0f\n/\n\x04\x04\r\x02\0\x12\x04\xe9\x01\
\x04\x1f\"!\x20chunk\x20of\x20random\x20generated\x20bytes\n\n\r\n\x05\
\x04\r\x02\0\x04\x12\x04\xe9\x01\x04\x0c\n\r\n\x05\x04\r\x02\0\x05\x12\
\x04\xe9\x01\r\x12\n\r\n\x05\x04\r\x02\0\x01\x12\x04\xe9\x01\x13\x1a\n\r\
\n\x05\x04\r\x02\0\x03\x12\x04\xe9\x01\x1d\x1e\nw\n\x02\x04\x0e\x12\x06\
\xf2\x01\0\xf3\x01\x01\x1ai*\n\x20Request:\x20Request\x20device\x20to\
\x20wipe\x20all\x20sensitive\x20data\x20and\x20settings\n\x20@start\n\
\x20@next\x20Success\n\x20@next\x20Failure\n\n\x0b\n\x03\x04\x0e\x01\x12\
\x04\xf2\x01\x08\x12\nz\n\x02\x04\x0f\x12\x06\xfb\x01\0\x85\x02\x01\x1al\
*\n\x20Request:\x20Load\x20seed\x20and\x20related\x20internal\x20setting\
s\x20from\x20the\x20computer\n\x20@start\n\x20@next\x20Success\n\x20@nex\
t\x20Failure\n\n\x0b\n\x03\x04\x0f\x01\x12\x04\xfb\x01\x08\x12\n\\\n\x04\
\x04\x0f\x02\0\x12\x04\xfc\x01\x04\"\"N\x20seed\x20encoded\x20as\x20mnem\
onic\x20(12,\x2018\x20or\x2024\x20words\x20for\x20BIP39,\x2020\x20or\x20\
33\x20for\x20SLIP39)\n\n\r\n\x05\x04\x0f\x02\0\x04\x12\x04\xfc\x01\x04\
\x0c\n\r\n\x05\x04\x0f\x02\0\x05\x12\x04\xfc\x01\r\x13\n\r\n\x05\x04\x0f\
\x02\0\x01\x12\x04\xfc\x01\x14\x1d\n\r\n\x05\x04\x0f\x02\0\x03\x12\x04\
\xfc\x01\x20!\n\"\n\x04\x04\x0f\x02\x01\x12\x04\xfd\x01\x04\x1c\"\x14\
\x20set\x20PIN\x20protection\n\n\r\n\x05\x04\x0f\x02\x01\x04\x12\x04\xfd\
\x01\x04\x0c\n\r\n\x05\x04\x0f\x02\x01\x05\x12\x04\xfd\x01\r\x13\n\r\n\
\x05\x04\x0f\x02\x01\x01\x12\x04\xfd\x01\x14\x17\n\r\n\x05\x04\x0f\x02\
\x01\x03\x12\x04\xfd\x01\x1a\x1b\n>\n\x04\x04\x0f\x02\x02\x12\x04\xfe\
\x01\x04,\"0\x20enable\x20master\x20node\x20encryption\x20using\x20passp\
hrase\n\n\r\n\x05\x04\x0f\x02\x02\x04\x12\x04\xfe\x01\x04\x0c\n\r\n\x05\
\x04\x0f\x02\x02\x05\x12\x04\xfe\x01\r\x11\n\r\n\x05\x04\x0f\x02\x02\x01\
\x12\x04\xfe\x01\x12'\n\r\n\x05\x04\x0f\x02\x02\x03\x12\x04\xfe\x01*+\n:\
\n\x04\x04\x0f\x02\x03\x12\x04\xff\x01\x043\",\x20device\x20language\x20\
(IETF\x20BCP\x2047\x20language\x20tag)\n\n\r\n\x05\x04\x0f\x02\x03\x04\
\x12\x04\xff\x01\x04\x0c\n\r\n\x05\x04\x0f\x02\x03\x05\x12\x04\xff\x01\r\
\x13\n\r\n\x05\x04\x0f\x02\x03\x01\x12\x04\xff\x01\x14\x1c\n\r\n\x05\x04\
\x0f\x02\x03\x03\x12\x04\xff\x01\x1f\x20\n\r\n\x05\x04\x0f\x02\x03\x08\
\x12\x04\xff\x01!2\n\r\n\x05\x04\x0f\x02\x03\x07\x12\x04\xff\x01*1\n\x1c\
\n\x04\x04\x0f\x02\x04\x12\x04\x80\x02\x04\x1e\"\x0e\x20device\x20label\
\n\n\r\n\x05\x04\x0f\x02\x04\x04\x12\x04\x80\x02\x04\x0c\n\r\n\x05\x04\
\x0f\x02\x04\x05\x12\x04\x80\x02\r\x13\n\r\n\x05\x04\x0f\x02\x04\x01\x12\
\x04\x80\x02\x14\x19\n\r\n\x05\x04\x0f\x02\x04\x03\x12\x04\x80\x02\x1c\
\x1d\n>\n\x04\x04\x0f\x02\x05\x12\x04\x81\x02\x04$\"0\x20do\x20not\x20te\
st\x20mnemonic\x20for\x20valid\x20BIP-39\x20checksum\n\n\r\n\x05\x04\x0f\
\x02\x05\x04\x12\x04\x81\x02\x04\x0c\n\r\n\x05\x04\x0f\x02\x05\x05\x12\
\x04\x81\x02\r\x11\n\r\n\x05\x04\x0f\x02\x05\x01\x12\x04\x81\x02\x12\x1f\
\n\r\n\x05\x04\x0f\x02\x05\x03\x12\x04\x81\x02\"#\n\x1b\n\x04\x04\x0f\
\x02\x06\x12\x04\x82\x02\x04$\"\r\x20U2F\x20counter\n\n\r\n\x05\x04\x0f\
\x02\x06\x04\x12\x04\x82\x02\x04\x0c\n\r\n\x05\x04\x0f\x02\x06\x05\x12\
\x04\x82\x02\r\x13\n\r\n\x05\x04\x0f\x02\x06\x01\x12\x04\x82\x02\x14\x1f\
\n\r\n\x05\x04\x0f\x02\x06\x03\x12\x04\x82\x02\"#\n'\n\x04\x04\x0f\x02\
\x07\x12\x04\x83\x02\x04#\"\x19\x20set\x20\"needs\x20backup\"\x20flag\n\
\n\r\n\x05\x04\x0f\x02\x07\x04\x12\x04\x83\x02\x04\x0c\n\r\n\x05\x04\x0f\
\x02\x07\x05\x12\x04\x83\x02\r\x11\n\r\n\x05\x04\x0f\x02\x07\x01\x12\x04\
\x83\x02\x12\x1e\n\r\n\x05\x04\x0f\x02\x07\x03\x12\x04\x83\x02!\"\n;\n\
\x04\x04\x0f\x02\x08\x12\x04\x84\x02\x04!\"-\x20indicate\x20that\x20no\
\x20backup\x20is\x20going\x20to\x20be\x20made\n\n\r\n\x05\x04\x0f\x02\
\x08\x04\x12\x04\x84\x02\x04\x0c\n\r\n\x05\x04\x0f\x02\x08\x05\x12\x04\
\x84\x02\r\x11\n\r\n\x05\x04\x0f\x02\x08\x01\x12\x04\x84\x02\x12\x1b\n\r\
\n\x05\x04\x0f\x02\x08\x03\x12\x04\x84\x02\x1e\x20\n\x82\x01\n\x02\x04\
\x10\x12\x06\x8d\x02\0\x98\x02\x01\x1at*\n\x20Request:\x20Ask\x20device\
\x20to\x20do\x20initialization\x20involving\x20user\x20interaction\n\x20\
@start\n\x20@next\x20EntropyRequest\n\x20@next\x20Failure\n\n\x0b\n\x03\
\x04\x10\x01\x12\x04\x8d\x02\x08\x13\n\\\n\x04\x04\x10\x02\0\x12\x04\x8e\
\x02\x04%\"N\x20display\x20entropy\x20generated\x20by\x20the\x20device\
\x20before\x20asking\x20for\x20additional\x20entropy\n\n\r\n\x05\x04\x10\
\x02\0\x04\x12\x04\x8e\x02\x04\x0c\n\r\n\x05\x04\x10\x02\0\x05\x12\x04\
\x8e\x02\r\x11\n\r\n\x05\x04\x10\x02\0\x01\x12\x04\x8e\x02\x12\x20\n\r\n\
\x05\x04\x10\x02\0\x03\x12\x04\x8e\x02#$\n(\n\x04\x04\x10\x02\x01\x12\
\x04\x8f\x02\x04/\"\x1a\x20strength\x20of\x20seed\x20in\x20bits\n\n\r\n\
\x05\x04\x10\x02\x01\x04\x12\x04\x8f\x02\x04\x0c\n\r\n\x05\x04\x10\x02\
\x01\x05\x12\x04\x8f\x02\r\x13\n\r\n\x05\x04\x10\x02\x01\x01\x12\x04\x8f\
\x02\x14\x1c\n\r\n\x05\x04\x10\x02\x01\x03\x12\x04\x8f\x02\x1f\x20\n\r\n\
\x05\x04\x10\x02\x01\x08\x12\x04\x8f\x02!.\n\r\n\x05\x04\x10\x02\x01\x07\
\x12\x04\x8f\x02*-\n>\n\x04\x04\x10\x02\x02\x12\x04\x90\x02\x04,\"0\x20e\
nable\x20master\x20node\x20encryption\x20using\x20passphrase\n\n\r\n\x05\
\x04\x10\x02\x02\x04\x12\x04\x90\x02\x04\x0c\n\r\n\x05\x04\x10\x02\x02\
\x05\x12\x04\x90\x02\r\x11\n\r\n\x05\x04\x10\x02\x02\x01\x12\x04\x90\x02\
\x12'\n\r\n\x05\x04\x10\x02\x02\x03\x12\x04\x90\x02*+\n%\n\x04\x04\x10\
\x02\x03\x12\x04\x91\x02\x04%\"\x17\x20enable\x20PIN\x20protection\n\n\r\
\n\x05\x04\x10\x02\x03\x04\x12\x04\x91\x02\x04\x0c\n\r\n\x05\x04\x10\x02\
\x03\x05\x12\x04\x91\x02\r\x11\n\r\n\x05\x04\x10\x02\x03\x01\x12\x04\x91\
\x02\x12\x20\n\r\n\x05\x04\x10\x02\x03\x03\x12\x04\x91\x02#$\n:\n\x04\
\x04\x10\x02\x04\x12\x04\x92\x02\x043\",\x20device\x20language\x20(IETF\
\x20BCP\x2047\x20language\x20tag)\n\n\r\n\x05\x04\x10\x02\x04\x04\x12\
\x04\x92\x02\x04\x0c\n\r\n\x05\x04\x10\x02\x04\x05\x12\x04\x92\x02\r\x13\
\n\r\n\x05\x04\x10\x02\x04\x01\x12\x04\x92\x02\x14\x1c\n\r\n\x05\x04\x10\
\x02\x04\x03\x12\x04\x92\x02\x1f\x20\n\r\n\x05\x04\x10\x02\x04\x08\x12\
\x04\x92\x02!2\n\r\n\x05\x04\x10\x02\x04\x07\x12\x04\x92\x02*1\n\x1c\n\
\x04\x04\x10\x02\x05\x12\x04\x93\x02\x04\x1e\"\x0e\x20device\x20label\n\
\n\r\n\x05\x04\x10\x02\x05\x04\x12\x04\x93\x02\x04\x0c\n\r\n\x05\x04\x10\
\x02\x05\x05\x12\x04\x93\x02\r\x13\n\r\n\x05\x04\x10\x02\x05\x01\x12\x04\
\x93\x02\x14\x19\n\r\n\x05\x04\x10\x02\x05\x03\x12\x04\x93\x02\x1c\x1d\n\
\x1b\n\x04\x04\x10\x02\x06\x12\x04\x94\x02\x04$\"\r\x20U2F\x20counter\n\
\n\r\n\x05\x04\x10\x02\x06\x04\x12\x04\x94\x02\x04\x0c\n\r\n\x05\x04\x10\
\x02\x06\x05\x12\x04\x94\x02\r\x13\n\r\n\x05\x04\x10\x02\x06\x01\x12\x04\
\x94\x02\x14\x1f\n\r\n\x05\x04\x10\x02\x06\x03\x12\x04\x94\x02\"#\n=\n\
\x04\x04\x10\x02\x07\x12\x04\x95\x02\x04\"\"/\x20postpone\x20seed\x20bac\
kup\x20to\x20BackupDevice\x20workflow\n\n\r\n\x05\x04\x10\x02\x07\x04\
\x12\x04\x95\x02\x04\x0c\n\r\n\x05\x04\x10\x02\x07\x05\x12\x04\x95\x02\r\
\x11\n\r\n\x05\x04\x10\x02\x07\x01\x12\x04\x95\x02\x12\x1d\n\r\n\x05\x04\
\x10\x02\x07\x03\x12\x04\x95\x02\x20!\n;\n\x04\x04\x10\x02\x08\x12\x04\
\x96\x02\x04\x20\"-\x20indicate\x20that\x20no\x20backup\x20is\x20going\
\x20to\x20be\x20made\n\n\r\n\x05\x04\x10\x02\x08\x04\x12\x04\x96\x02\x04\
\x0c\n\r\n\x05\x04\x10\x02\x08\x05\x12\x04\x96\x02\r\x11\n\r\n\x05\x04\
\x10\x02\x08\x01\x12\x04\x96\x02\x12\x1b\n\r\n\x05\x04\x10\x02\x08\x03\
\x12\x04\x96\x02\x1e\x1f\n+\n\x04\x04\x10\x02\t\x12\x04\x97\x02\x049\"\
\x1d\x20type\x20of\x20the\x20mnemonic\x20backup\n\n\r\n\x05\x04\x10\x02\
\t\x04\x12\x04\x97\x02\x04\x0c\n\r\n\x05\x04\x10\x02\t\x06\x12\x04\x97\
\x02\r\x17\n\r\n\x05\x04\x10\x02\t\x01\x12\x04\x97\x02\x18#\n\r\n\x05\
\x04\x10\x02\t\x03\x12\x04\x97\x02&(\n\r\n\x05\x04\x10\x02\t\x08\x12\x04\
\x97\x02)8\n\r\n\x05\x04\x10\x02\t\x07\x12\x04\x97\x0227\nv\n\x02\x04\
\x11\x12\x06\x9f\x02\0\xa0\x02\x01\x1ah*\n\x20Request:\x20Perform\x20bac\
kup\x20of\x20the\x20device\x20seed\x20if\x20not\x20backed\x20up\x20using\
\x20ResetDevice\n\x20@start\n\x20@next\x20Success\n\n\x0b\n\x03\x04\x11\
\x01\x12\x04\x9f\x02\x08\x14\n[\n\x02\x04\x12\x12\x06\xa6\x02\0\xa7\x02\
\x01\x1aM*\n\x20Response:\x20Ask\x20for\x20additional\x20entropy\x20from\
\x20host\x20computer\n\x20@next\x20EntropyAck\n\n\x0b\n\x03\x04\x12\x01\
\x12\x04\xa6\x02\x08\x16\na\n\x02\x04\x13\x12\x06\xad\x02\0\xaf\x02\x01\
\x1aS*\n\x20Request:\x20Provide\x20additional\x20entropy\x20for\x20seed\
\x20generation\x20function\n\x20@next\x20Success\n\n\x0b\n\x03\x04\x13\
\x01\x12\x04\xad\x02\x08\x12\n2\n\x04\x04\x13\x02\0\x12\x04\xae\x02\x04\
\x1f\"$\x20256\x20bits\x20(32\x20bytes)\x20of\x20random\x20data\n\n\r\n\
\x05\x04\x13\x02\0\x04\x12\x04\xae\x02\x04\x0c\n\r\n\x05\x04\x13\x02\0\
\x05\x12\x04\xae\x02\r\x12\n\r\n\x05\x04\x13\x02\0\x01\x12\x04\xae\x02\
\x13\x1a\n\r\n\x05\x04\x13\x02\0\x03\x12\x04\xae\x02\x1d\x1e\n\xb5\x01\n\
\x02\x04\x14\x12\x06\xb7\x02\0\xcf\x02\x01\x1a\xa6\x01*\n\x20Request:\
\x20Start\x20recovery\x20workflow\x20asking\x20user\x20for\x20specific\
\x20words\x20of\x20mnemonic\n\x20Used\x20to\x20recovery\x20device\x20saf\
ely\x20even\x20on\x20untrusted\x20computer.\n\x20@start\n\x20@next\x20Wo\
rdRequest\n\n\x0b\n\x03\x04\x14\x01\x12\x04\xb7\x02\x08\x16\n2\n\x04\x04\
\x14\x02\0\x12\x04\xb8\x02\x04#\"$\x20number\x20of\x20words\x20in\x20BIP\
-39\x20mnemonic\n\n\r\n\x05\x04\x14\x02\0\x04\x12\x04\xb8\x02\x04\x0c\n\
\r\n\x05\x04\x14\x02\0\x05\x12\x04\xb8\x02\r\x13\n\r\n\x05\x04\x14\x02\0\
\x01\x12\x04\xb8\x02\x14\x1e\n\r\n\x05\x04\x14\x02\0\x03\x12\x04\xb8\x02\
!\"\n>\n\x04\x04\x14\x02\x01\x12\x04\xb9\x02\x04,\"0\x20enable\x20master\
\x20node\x20encryption\x20using\x20passphrase\n\n\r\n\x05\x04\x14\x02\
\x01\x04\x12\x04\xb9\x02\x04\x0c\n\r\n\x05\x04\x14\x02\x01\x05\x12\x04\
\xb9\x02\r\x11\n\r\n\x05\x04\x14\x02\x01\x01\x12\x04\xb9\x02\x12'\n\r\n\
\x05\x04\x14\x02\x01\x03\x12\x04\xb9\x02*+\n%\n\x04\x04\x14\x02\x02\x12\
\x04\xba\x02\x04%\"\x17\x20enable\x20PIN\x20protection\n\n\r\n\x05\x04\
\x14\x02\x02\x04\x12\x04\xba\x02\x04\x0c\n\r\n\x05\x04\x14\x02\x02\x05\
\x12\x04\xba\x02\r\x11\n\r\n\x05\x04\x14\x02\x02\x01\x12\x04\xba\x02\x12\
\x20\n\r\n\x05\x04\x14\x02\x02\x03\x12\x04\xba\x02#$\n:\n\x04\x04\x14\
\x02\x03\x12\x04\xbb\x02\x04!\",\x20device\x20language\x20(IETF\x20BCP\
\x2047\x20language\x20tag)\n\n\r\n\x05\x04\x14\x02\x03\x04\x12\x04\xbb\
\x02\x04\x0c\n\r\n\x05\x04\x14\x02\x03\x05\x12\x04\xbb\x02\r\x13\n\r\n\
\x05\x04\x14\x02\x03\x01\x12\x04\xbb\x02\x14\x1c\n\r\n\x05\x04\x14\x02\
\x03\x03\x12\x04\xbb\x02\x1f\x20\n\x1c\n\x04\x04\x14\x02\x04\x12\x04\xbc\
\x02\x04\x1e\"\x0e\x20device\x20label\n\n\r\n\x05\x04\x14\x02\x04\x04\
\x12\x04\xbc\x02\x04\x0c\n\r\n\x05\x04\x14\x02\x04\x05\x12\x04\xbc\x02\r\
\x13\n\r\n\x05\x04\x14\x02\x04\x01\x12\x04\xbc\x02\x14\x19\n\r\n\x05\x04\
\x14\x02\x04\x03\x12\x04\xbc\x02\x1c\x1d\n:\n\x04\x04\x14\x02\x05\x12\
\x04\xbd\x02\x04'\",\x20enforce\x20BIP-39\x20wordlist\x20during\x20the\
\x20process\n\n\r\n\x05\x04\x14\x02\x05\x04\x12\x04\xbd\x02\x04\x0c\n\r\
\n\x05\x04\x14\x02\x05\x05\x12\x04\xbd\x02\r\x11\n\r\n\x05\x04\x14\x02\
\x05\x01\x12\x04\xbd\x02\x12\"\n\r\n\x05\x04\x14\x02\x05\x03\x12\x04\xbd\
\x02%&\nP\n\x04\x04\x14\x02\x06\x12\x04\xbf\x02\x04)\x1a'\x207\x20reserv\
ed\x20for\x20unused\x20recovery\x20method\n\"\x19\x20supported\x20recove\
ry\x20type\n\n\r\n\x05\x04\x14\x02\x06\x04\x12\x04\xbf\x02\x04\x0c\n\r\n\
\x05\x04\x14\x02\x06\x06\x12\x04\xbf\x02\r\x1f\n\r\n\x05\x04\x14\x02\x06\
\x01\x12\x04\xbf\x02\x20$\n\r\n\x05\x04\x14\x02\x06\x03\x12\x04\xbf\x02'\
(\n\x1b\n\x04\x04\x14\x02\x07\x12\x04\xc0\x02\x04$\"\r\x20U2F\x20counter\
\n\n\r\n\x05\x04\x14\x02\x07\x04\x12\x04\xc0\x02\x04\x0c\n\r\n\x05\x04\
\x14\x02\x07\x05\x12\x04\xc0\x02\r\x13\n\r\n\x05\x04\x14\x02\x07\x01\x12\
\x04\xc0\x02\x14\x1f\n\r\n\x05\x04\x14\x02\x07\x03\x12\x04\xc0\x02\"#\nP\
\n\x04\x04\x14\x02\x08\x12\x04\xc1\x02\x04\x1f\"B\x20perform\x20dry-run\
\x20recovery\x20workflow\x20(for\x20safe\x20mnemonic\x20validation)\n\n\
\r\n\x05\x04\x14\x02\x08\x04\x12\x04\xc1\x02\x04\x0c\n\r\n\x05\x04\x14\
\x02\x08\x05\x12\x04\xc1\x02\r\x11\n\r\n\x05\x04\x14\x02\x08\x01\x12\x04\
\xc1\x02\x12\x19\n\r\n\x05\x04\x14\x02\x08\x03\x12\x04\xc1\x02\x1c\x1e\n\
\xd3\x02\n\x04\x04\x14\x04\0\x12\x06\xca\x02\x04\xce\x02\x05\x1a\xc2\x02\
*\n\x20Type\x20of\x20recovery\x20procedure.\x20These\x20should\x20be\x20\
used\x20as\x20bitmask,\x20e.g.,\n\x20`RecoveryDeviceType_ScrambledWords\
\x20|\x20RecoveryDeviceType_Matrix`\n\x20listing\x20every\x20method\x20s\
upported\x20by\x20the\x20host\x20computer.\n\n\x20Note\x20that\x20Scramb\
ledWords\x20must\x20be\x20supported\x20by\x20every\x20implementation\n\
\x20for\x20backward\x20compatibility;\x20there\x20is\x20no\x20way\x20to\
\x20not\x20support\x20it.\n\n\r\n\x05\x04\x14\x04\0\x01\x12\x04\xca\x02\
\t\x1b\nY\n\x06\x04\x14\x04\0\x02\0\x12\x04\xcc\x02\x08.\x1a-\x20use\x20\
powers\x20of\x20two\x20when\x20extending\x20this\x20field\n\"\x1a\x20wor\
ds\x20in\x20scrambled\x20order\n\n\x0f\n\x07\x04\x14\x04\0\x02\0\x01\x12\
\x04\xcc\x02\x08)\n\x0f\n\x07\x04\x14\x04\0\x02\0\x02\x12\x04\xcc\x02,-\
\n&\n\x06\x04\x14\x04\0\x02\x01\x12\x04\xcd\x02\x08&\"\x16\x20matrix\x20\
recovery\x20type\n\n\x0f\n\x07\x04\x14\x04\0\x02\x01\x01\x12\x04\xcd\x02\
\x08!\n\x0f\n\x07\x04\x14\x04\0\x02\x01\x02\x12\x04\xcd\x02$%\n\x9e\x01\
\n\x02\x04\x15\x12\x06\xd6\x02\0\xe0\x02\x01\x1a\x8f\x01*\n\x20Response:\
\x20Device\x20is\x20waiting\x20for\x20user\x20to\x20enter\x20word\x20of\
\x20the\x20mnemonic\n\x20Its\x20position\x20is\x20shown\x20only\x20on\
\x20device's\x20internal\x20display.\n\x20@next\x20WordAck\n\n\x0b\n\x03\
\x04\x15\x01\x12\x04\xd6\x02\x08\x13\n\x0c\n\x04\x04\x15\x02\0\x12\x04\
\xd7\x02\x04&\n\r\n\x05\x04\x15\x02\0\x04\x12\x04\xd7\x02\x04\x0c\n\r\n\
\x05\x04\x15\x02\0\x06\x12\x04\xd7\x02\r\x1c\n\r\n\x05\x04\x15\x02\0\x01\
\x12\x04\xd7\x02\x1d!\n\r\n\x05\x04\x15\x02\0\x03\x12\x04\xd7\x02$%\n1\n\
\x04\x04\x15\x04\0\x12\x06\xdb\x02\x04\xdf\x02\x05\x1a!*\n\x20Type\x20of\
\x20Recovery\x20Word\x20request\n\n\r\n\x05\x04\x15\x04\0\x01\x12\x04\
\xdb\x02\t\x18\n\x0e\n\x06\x04\x15\x04\0\x02\0\x12\x04\xdc\x02\x08\"\n\
\x0f\n\x07\x04\x15\x04\0\x02\0\x01\x12\x04\xdc\x02\x08\x1d\n\x0f\n\x07\
\x04\x15\x04\0\x02\0\x02\x12\x04\xdc\x02\x20!\n\x0e\n\x06\x04\x15\x04\0\
\x02\x01\x12\x04\xdd\x02\x08$\n\x0f\n\x07\x04\x15\x04\0\x02\x01\x01\x12\
\x04\xdd\x02\x08\x1f\n\x0f\n\x07\x04\x15\x04\0\x02\x01\x02\x12\x04\xdd\
\x02\"#\n\x0e\n\x06\x04\x15\x04\0\x02\x02\x12\x04\xde\x02\x08$\n\x0f\n\
\x07\x04\x15\x04\0\x02\x02\x01\x12\x04\xde\x02\x08\x1f\n\x0f\n\x07\x04\
\x15\x04\0\x02\x02\x02\x12\x04\xde\x02\"#\nx\n\x02\x04\x16\x12\x06\xe8\
\x02\0\xea\x02\x01\x1aj*\n\x20Request:\x20Computer\x20replies\x20with\
\x20word\x20from\x20the\x20mnemonic\n\x20@next\x20WordRequest\n\x20@next\
\x20Success\n\x20@next\x20Failure\n\n\x0b\n\x03\x04\x16\x01\x12\x04\xe8\
\x02\x08\x0f\n6\n\x04\x04\x16\x02\0\x12\x04\xe9\x02\x04\x1d\"(\x20one\
\x20word\x20of\x20mnemonic\x20on\x20asked\x20position\n\n\r\n\x05\x04\
\x16\x02\0\x04\x12\x04\xe9\x02\x04\x0c\n\r\n\x05\x04\x16\x02\0\x05\x12\
\x04\xe9\x02\r\x13\n\r\n\x05\x04\x16\x02\0\x01\x12\x04\xe9\x02\x14\x18\n\
\r\n\x05\x04\x16\x02\0\x03\x12\x04\xe9\x02\x1b\x1c\nA\n\x02\x04\x17\x12\
\x06\xf1\x02\0\xf3\x02\x01\x1a3*\n\x20Request:\x20Set\x20U2F\x20counter\
\n\x20@start\n\x20@next\x20Success\n\n\x0b\n\x03\x04\x17\x01\x12\x04\xf1\
\x02\x08\x15\n\x0c\n\x04\x04\x17\x02\0\x12\x04\xf2\x02\x04$\n\r\n\x05\
\x04\x17\x02\0\x04\x12\x04\xf2\x02\x04\x0c\n\r\n\x05\x04\x17\x02\0\x05\
\x12\x04\xf2\x02\r\x13\n\r\n\x05\x04\x17\x02\0\x01\x12\x04\xf2\x02\x14\
\x1f\n\r\n\x05\x04\x17\x02\0\x03\x12\x04\xf2\x02\"#\nH\n\x02\x04\x18\x12\
\x06\xfa\x02\0\xfb\x02\x01\x1a:*\n\x20Request:\x20Set\x20U2F\x20counter\
\n\x20@start\n\x20@next\x20NextU2FCounter\n\n\x0b\n\x03\x04\x18\x01\x12\
\x04\xfa\x02\x08\x19\n0\n\x02\x04\x19\x12\x06\x81\x03\0\x83\x03\x01\x1a\
\"*\n\x20Request:\x20Set\x20U2F\x20counter\n\x20@end\n\n\x0b\n\x03\x04\
\x19\x01\x12\x04\x81\x03\x08\x16\n\x0c\n\x04\x04\x19\x02\0\x12\x04\x82\
\x03\x04$\n\r\n\x05\x04\x19\x02\0\x04\x12\x04\x82\x03\x04\x0c\n\r\n\x05\
\x04\x19\x02\0\x05\x12\x04\x82\x03\r\x13\n\r\n\x05\x04\x19\x02\0\x01\x12\
\x04\x82\x03\x14\x1f\n\r\n\x05\x04\x19\x02\0\x03\x12\x04\x82\x03\"#\n\
\x82\x01\n\x02\x04\x1a\x12\x06\x8b\x03\0\x8c\x03\x01\x1at*\n\x20Request:\
\x20Ask\x20device\x20to\x20prepare\x20for\x20a\x20preauthorized\x20opera\
tion.\n\x20@start\n\x20@next\x20PreauthorizedRequest\n\x20@next\x20Failu\
re\n\n\x0b\n\x03\x04\x1a\x01\x12\x04\x8b\x03\x08\x17\nr\n\x02\x04\x1b\
\x12\x06\x94\x03\0\x95\x03\x01\x1ad*\n\x20Request:\x20Device\x20awaits\
\x20a\x20preauthorized\x20operation.\n\x20@start\n\x20@next\x20SignTx\n\
\x20@next\x20GetOwnershipProof\n\n\x0b\n\x03\x04\x1b\x01\x12\x04\x94\x03\
\x08\x1c\n}\n\x02\x04\x1c\x12\x06\x9d\x03\0\x9e\x03\x01\x1ao*\n\x20Reque\
st:\x20Cancel\x20any\x20outstanding\x20authorization\x20in\x20the\x20cur\
rent\x20session.\n\x20@start\n\x20@next\x20Success\n\x20@next\x20Failure\
\n\n\x0b\n\x03\x04\x1c\x01\x12\x04\x9d\x03\x08\x1b\nO\n\x02\x04\x1d\x12\
\x06\xa5\x03\0\xa6\x03\x01\x1aA*\n\x20Request:\x20Reboot\x20firmware\x20\
to\x20bootloader\n\x20@start\n\x20@next\x20Success\n\n\x0b\n\x03\x04\x1d\
\x01\x12\x04\xa5\x03\x08\x1a\
";
static file_descriptor_proto_lazy: ::protobuf::rt::LazyV2<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::rt::LazyV2::INIT;
fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
::protobuf::Message::parse_from_bytes(file_descriptor_proto_data).unwrap()
}
pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
file_descriptor_proto_lazy.get(|| {
parse_descriptor_proto()
})
}