# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: messages.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf.internal import enum_type_wrapper
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from . import types_pb2 as types__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='messages.proto',
  package='',
  syntax='proto2',
  serialized_pb=_b('\n\x0emessages.proto\x1a\x0btypes.proto\"\x0c\n\nInitialize\"\r\n\x0bGetFeatures\"\xf0\x03\n\x08\x46\x65\x61tures\x12\x0e\n\x06vendor\x18\x01 \x01(\t\x12\x15\n\rmajor_version\x18\x02 \x01(\r\x12\x15\n\rminor_version\x18\x03 \x01(\r\x12\x15\n\rpatch_version\x18\x04 \x01(\r\x12\x17\n\x0f\x62ootloader_mode\x18\x05 \x01(\x08\x12\x11\n\tdevice_id\x18\x06 \x01(\t\x12\x16\n\x0epin_protection\x18\x07 \x01(\x08\x12\x1d\n\x15passphrase_protection\x18\x08 \x01(\x08\x12\x10\n\x08language\x18\t \x01(\t\x12\r\n\x05label\x18\n \x01(\t\x12\x18\n\x05\x63oins\x18\x0b \x03(\x0b\x32\t.CoinType\x12\x13\n\x0binitialized\x18\x0c \x01(\x08\x12\x10\n\x08revision\x18\r \x01(\x0c\x12\x17\n\x0f\x62ootloader_hash\x18\x0e \x01(\x0c\x12\x10\n\x08imported\x18\x0f \x01(\x08\x12\x12\n\npin_cached\x18\x10 \x01(\x08\x12\x19\n\x11passphrase_cached\x18\x11 \x01(\x08\x12\x1d\n\x08policies\x18\x12 \x03(\x0b\x32\x0b.PolicyType\x12\r\n\x05model\x18\x15 \x01(\t\x12\x18\n\x10\x66irmware_variant\x18\x16 \x01(\t\x12\x15\n\rfirmware_hash\x18\x17 \x01(\x0c\x12\x11\n\tno_backup\x18\x18 \x01(\x08\"*\n\x0cGetCoinTable\x12\r\n\x05start\x18\x01 \x01(\r\x12\x0b\n\x03\x65nd\x18\x02 \x01(\r\"L\n\tCoinTable\x12\x18\n\x05table\x18\x01 \x03(\x0b\x32\t.CoinType\x12\x11\n\tnum_coins\x18\x02 \x01(\r\x12\x12\n\nchunk_size\x18\x03 \x01(\r\"\x0e\n\x0c\x43learSession\"y\n\rApplySettings\x12\x10\n\x08language\x18\x01 \x01(\t\x12\r\n\x05label\x18\x02 \x01(\t\x12\x16\n\x0euse_passphrase\x18\x03 \x01(\x08\x12\x1a\n\x12\x61uto_lock_delay_ms\x18\x04 \x01(\r\x12\x13\n\x0bu2f_counter\x18\x05 \x01(\r\"\x1b\n\tChangePin\x12\x0e\n\x06remove\x18\x01 \x01(\x08\"i\n\x04Ping\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x19\n\x11\x62utton_protection\x18\x02 \x01(\x08\x12\x16\n\x0epin_protection\x18\x03 \x01(\x08\x12\x1d\n\x15passphrase_protection\x18\x04 \x01(\x08\"\x1a\n\x07Success\x12\x0f\n\x07message\x18\x01 \x01(\t\"6\n\x07\x46\x61ilure\x12\x1a\n\x04\x63ode\x18\x01 \x01(\x0e\x32\x0c.FailureType\x12\x0f\n\x07message\x18\x02 \x01(\t\"?\n\rButtonRequest\x12 \n\x04\x63ode\x18\x01 \x01(\x0e\x32\x12.ButtonRequestType\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\t\"\x0b\n\tButtonAck\"7\n\x10PinMatrixRequest\x12#\n\x04type\x18\x01 \x01(\x0e\x32\x15.PinMatrixRequestType\"\x1b\n\x0cPinMatrixAck\x12\x0b\n\x03pin\x18\x01 \x02(\t\"\x08\n\x06\x43\x61ncel\"\x13\n\x11PassphraseRequest\"#\n\rPassphraseAck\x12\x12\n\npassphrase\x18\x01 \x02(\t\"\x1a\n\nGetEntropy\x12\x0c\n\x04size\x18\x01 \x02(\r\"\x1a\n\x07\x45ntropy\x12\x0f\n\x07\x65ntropy\x18\x01 \x02(\x0c\"\xa2\x01\n\x0cGetPublicKey\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\x18\n\x10\x65\x63\x64sa_curve_name\x18\x02 \x01(\t\x12\x14\n\x0cshow_display\x18\x03 \x01(\x08\x12\x1a\n\tcoin_name\x18\x04 \x01(\t:\x07\x42itcoin\x12\x33\n\x0bscript_type\x18\x05 \x01(\x0e\x32\x10.InputScriptType:\x0cSPENDADDRESS\"4\n\tPublicKey\x12\x19\n\x04node\x18\x01 \x02(\x0b\x32\x0b.HDNodeType\x12\x0c\n\x04xpub\x18\x02 \x01(\t\"\xb3\x01\n\nGetAddress\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\x1a\n\tcoin_name\x18\x02 \x01(\t:\x07\x42itcoin\x12\x14\n\x0cshow_display\x18\x03 \x01(\x08\x12+\n\x08multisig\x18\x04 \x01(\x0b\x32\x19.MultisigRedeemScriptType\x12\x33\n\x0bscript_type\x18\x05 \x01(\x0e\x32\x10.InputScriptType:\x0cSPENDADDRESS\"=\n\x12\x45thereumGetAddress\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\x14\n\x0cshow_display\x18\x02 \x01(\x08\"\x1a\n\x07\x41\x64\x64ress\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x02(\t\"\"\n\x0f\x45thereumAddress\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x02(\x0c\"\x0c\n\nWipeDevice\"\xbb\x01\n\nLoadDevice\x12\x10\n\x08mnemonic\x18\x01 \x01(\t\x12\x19\n\x04node\x18\x02 \x01(\x0b\x32\x0b.HDNodeType\x12\x0b\n\x03pin\x18\x03 \x01(\t\x12\x1d\n\x15passphrase_protection\x18\x04 \x01(\x08\x12\x19\n\x08language\x18\x05 \x01(\t:\x07\x65nglish\x12\r\n\x05label\x18\x06 \x01(\t\x12\x15\n\rskip_checksum\x18\x07 \x01(\x08\x12\x13\n\x0bu2f_counter\x18\x08 \x01(\r\"\xcc\x01\n\x0bResetDevice\x12\x16\n\x0e\x64isplay_random\x18\x01 \x01(\x08\x12\x15\n\x08strength\x18\x02 \x01(\r:\x03\x32\x35\x36\x12\x1d\n\x15passphrase_protection\x18\x03 \x01(\x08\x12\x16\n\x0epin_protection\x18\x04 \x01(\x08\x12\x19\n\x08language\x18\x05 \x01(\t:\x07\x65nglish\x12\r\n\x05label\x18\x06 \x01(\t\x12\x11\n\tno_backup\x18\x07 \x01(\x08\x12\x1a\n\x12\x61uto_lock_delay_ms\x18\x08 \x01(\r\"\x10\n\x0e\x45ntropyRequest\"\x1d\n\nEntropyAck\x12\x0f\n\x07\x65ntropy\x18\x01 \x01(\x0c\"\xff\x01\n\x0eRecoveryDevice\x12\x12\n\nword_count\x18\x01 \x01(\r\x12\x1d\n\x15passphrase_protection\x18\x02 \x01(\x08\x12\x16\n\x0epin_protection\x18\x03 \x01(\x08\x12\x19\n\x08language\x18\x04 \x01(\t:\x07\x65nglish\x12\r\n\x05label\x18\x05 \x01(\t\x12\x18\n\x10\x65nforce_wordlist\x18\x06 \x01(\x08\x12\x1c\n\x14use_character_cipher\x18\x07 \x01(\x08\x12\x1a\n\x12\x61uto_lock_delay_ms\x18\x08 \x01(\r\x12\x13\n\x0bu2f_counter\x18\t \x01(\r\x12\x0f\n\x07\x64ry_run\x18\n \x01(\x08\"\r\n\x0bWordRequest\"\x17\n\x07WordAck\x12\x0c\n\x04word\x18\x01 \x02(\t\";\n\x10\x43haracterRequest\x12\x10\n\x08word_pos\x18\x01 \x02(\r\x12\x15\n\rcharacter_pos\x18\x02 \x02(\r\"?\n\x0c\x43haracterAck\x12\x11\n\tcharacter\x18\x01 \x01(\t\x12\x0e\n\x06\x64\x65lete\x18\x02 \x01(\x08\x12\x0c\n\x04\x64one\x18\x03 \x01(\x08\"\x82\x01\n\x0bSignMessage\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\x0f\n\x07message\x18\x02 \x02(\x0c\x12\x1a\n\tcoin_name\x18\x03 \x01(\t:\x07\x42itcoin\x12\x33\n\x0bscript_type\x18\x04 \x01(\x0e\x32\x10.InputScriptType:\x0cSPENDADDRESS\"`\n\rVerifyMessage\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x0f\n\x07message\x18\x03 \x01(\x0c\x12\x1a\n\tcoin_name\x18\x04 \x01(\t:\x07\x42itcoin\"6\n\x10MessageSignature\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x11\n\tsignature\x18\x02 \x01(\x0c\"v\n\x0e\x45ncryptMessage\x12\x0e\n\x06pubkey\x18\x01 \x01(\x0c\x12\x0f\n\x07message\x18\x02 \x01(\x0c\x12\x14\n\x0c\x64isplay_only\x18\x03 \x01(\x08\x12\x11\n\taddress_n\x18\x04 \x03(\r\x12\x1a\n\tcoin_name\x18\x05 \x01(\t:\x07\x42itcoin\"@\n\x10\x45ncryptedMessage\x12\r\n\x05nonce\x18\x01 \x01(\x0c\x12\x0f\n\x07message\x18\x02 \x01(\x0c\x12\x0c\n\x04hmac\x18\x03 \x01(\x0c\"Q\n\x0e\x44\x65\x63ryptMessage\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\r\n\x05nonce\x18\x02 \x01(\x0c\x12\x0f\n\x07message\x18\x03 \x01(\x0c\x12\x0c\n\x04hmac\x18\x04 \x01(\x0c\"4\n\x10\x44\x65\x63ryptedMessage\x12\x0f\n\x07message\x18\x01 \x01(\x0c\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x01(\t\"\x8c\x01\n\x0e\x43ipherKeyValue\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\x0b\n\x03key\x18\x02 \x01(\t\x12\r\n\x05value\x18\x03 \x01(\x0c\x12\x0f\n\x07\x65ncrypt\x18\x04 \x01(\x08\x12\x16\n\x0e\x61sk_on_encrypt\x18\x05 \x01(\x08\x12\x16\n\x0e\x61sk_on_decrypt\x18\x06 \x01(\x08\x12\n\n\x02iv\x18\x07 \x01(\x0c\"!\n\x10\x43ipheredKeyValue\x12\r\n\x05value\x18\x01 \x01(\x0c\"Y\n\x0e\x45stimateTxSize\x12\x15\n\routputs_count\x18\x01 \x02(\r\x12\x14\n\x0cinputs_count\x18\x02 \x02(\r\x12\x1a\n\tcoin_name\x18\x03 \x01(\t:\x07\x42itcoin\"\x19\n\x06TxSize\x12\x0f\n\x07tx_size\x18\x01 \x01(\r\"\xbb\x01\n\x06SignTx\x12\x15\n\routputs_count\x18\x01 \x02(\r\x12\x14\n\x0cinputs_count\x18\x02 \x02(\r\x12\x1a\n\tcoin_name\x18\x03 \x01(\t:\x07\x42itcoin\x12\x12\n\x07version\x18\x04 \x01(\r:\x01\x31\x12\x14\n\tlock_time\x18\x05 \x01(\r:\x01\x30\x12\x0e\n\x06\x65xpiry\x18\x06 \x01(\r\x12\x14\n\x0coverwintered\x18\x07 \x01(\x08\x12\x18\n\x10version_group_id\x18\x08 \x01(\r\"\xe0\x01\n\x0cSimpleSignTx\x12\x1c\n\x06inputs\x18\x01 \x03(\x0b\x32\x0c.TxInputType\x12\x1e\n\x07outputs\x18\x02 \x03(\x0b\x32\r.TxOutputType\x12&\n\x0ctransactions\x18\x03 \x03(\x0b\x32\x10.TransactionType\x12\x1a\n\tcoin_name\x18\x04 \x01(\t:\x07\x42itcoin\x12\x12\n\x07version\x18\x05 \x01(\r:\x01\x31\x12\x14\n\tlock_time\x18\x06 \x01(\r:\x01\x30\x12\x0e\n\x06\x65xpiry\x18\x07 \x01(\r\x12\x14\n\x0coverwintered\x18\x08 \x01(\x08\"\x85\x01\n\tTxRequest\x12\"\n\x0crequest_type\x18\x01 \x01(\x0e\x32\x0c.RequestType\x12&\n\x07\x64\x65tails\x18\x02 \x01(\x0b\x32\x15.TxRequestDetailsType\x12,\n\nserialized\x18\x03 \x01(\x0b\x32\x18.TxRequestSerializedType\"%\n\x05TxAck\x12\x1c\n\x02tx\x18\x01 \x01(\x0b\x32\x10.TransactionType\"+\n\x08RawTxAck\x12\x1f\n\x02tx\x18\x01 \x01(\x0b\x32\x13.RawTransactionType\"\xec\x02\n\x0e\x45thereumSignTx\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\r\n\x05nonce\x18\x02 \x01(\x0c\x12\x11\n\tgas_price\x18\x03 \x01(\x0c\x12\x11\n\tgas_limit\x18\x04 \x01(\x0c\x12\n\n\x02to\x18\x05 \x01(\x0c\x12\r\n\x05value\x18\x06 \x01(\x0c\x12\x1a\n\x12\x64\x61ta_initial_chunk\x18\x07 \x01(\x0c\x12\x13\n\x0b\x64\x61ta_length\x18\x08 \x01(\r\x12\x14\n\x0cto_address_n\x18\t \x03(\r\x12(\n\x0c\x61\x64\x64ress_type\x18\n \x01(\x0e\x32\x12.OutputAddressType\x12$\n\rexchange_type\x18\x0b \x01(\x0b\x32\r.ExchangeType\x12\x10\n\x08\x63hain_id\x18\x0c \x01(\r\x12\x13\n\x0btoken_value\x18\x64 \x01(\x0c\x12\x10\n\x08token_to\x18\x65 \x01(\x0c\x12\x16\n\x0etoken_shortcut\x18\x66 \x01(\t\x12\x0f\n\x07tx_type\x18g \x01(\r\"\x8c\x01\n\x11\x45thereumTxRequest\x12\x13\n\x0b\x64\x61ta_length\x18\x01 \x01(\r\x12\x13\n\x0bsignature_v\x18\x02 \x01(\r\x12\x13\n\x0bsignature_r\x18\x03 \x01(\x0c\x12\x13\n\x0bsignature_s\x18\x04 \x01(\x0c\x12\x0c\n\x04hash\x18\x05 \x01(\x0c\x12\x15\n\rsignature_der\x18\x06 \x01(\x0c\"#\n\rEthereumTxAck\x12\x12\n\ndata_chunk\x18\x01 \x01(\x0c\"9\n\x13\x45thereumSignMessage\x12\x11\n\taddress_n\x18\x01 \x03(\r\x12\x0f\n\x07message\x18\x02 \x02(\x0c\"L\n\x15\x45thereumVerifyMessage\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\x12\x0f\n\x07message\x18\x03 \x01(\x0c\">\n\x18\x45thereumMessageSignature\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\x0c\x12\x11\n\tsignature\x18\x02 \x01(\x0c\"}\n\x0cSignIdentity\x12\x1f\n\x08identity\x18\x01 \x01(\x0b\x32\r.IdentityType\x12\x18\n\x10\x63hallenge_hidden\x18\x02 \x01(\x0c\x12\x18\n\x10\x63hallenge_visual\x18\x03 \x01(\t\x12\x18\n\x10\x65\x63\x64sa_curve_name\x18\x04 \x01(\t\"H\n\x0eSignedIdentity\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x12\n\npublic_key\x18\x02 \x01(\x0c\x12\x11\n\tsignature\x18\x03 \x01(\x0c\",\n\rApplyPolicies\x12\x1b\n\x06policy\x18\x01 \x03(\x0b\x32\x0b.PolicyType\"?\n\tFlashHash\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\x12\x11\n\tchallenge\x18\x03 \x01(\x0c\":\n\nFlashWrite\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\r\x12\x0c\n\x04\x64\x61ta\x18\x02 \x01(\x0c\x12\r\n\x05\x65rase\x18\x03 \x01(\x08\"!\n\x11\x46lashHashResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"5\n\x12\x44\x65\x62ugLinkFlashDump\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\r\x12\x0e\n\x06length\x18\x02 \x01(\r\"*\n\x1a\x44\x65\x62ugLinkFlashDumpResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"\x0b\n\tSoftReset\"\x0f\n\rFirmwareErase\"7\n\x0e\x46irmwareUpload\x12\x14\n\x0cpayload_hash\x18\x01 \x02(\x0c\x12\x0f\n\x07payload\x18\x02 \x02(\x0c\"#\n\x11\x44\x65\x62ugLinkDecision\x12\x0e\n\x06yes_no\x18\x01 \x02(\x08\"\x13\n\x11\x44\x65\x62ugLinkGetState\"\xd7\x02\n\x0e\x44\x65\x62ugLinkState\x12\x0e\n\x06layout\x18\x01 \x01(\x0c\x12\x0b\n\x03pin\x18\x02 \x01(\t\x12\x0e\n\x06matrix\x18\x03 \x01(\t\x12\x10\n\x08mnemonic\x18\x04 \x01(\t\x12\x19\n\x04node\x18\x05 \x01(\x0b\x32\x0b.HDNodeType\x12\x1d\n\x15passphrase_protection\x18\x06 \x01(\x08\x12\x12\n\nreset_word\x18\x07 \x01(\t\x12\x15\n\rreset_entropy\x18\x08 \x01(\x0c\x12\x1a\n\x12recovery_fake_word\x18\t \x01(\t\x12\x19\n\x11recovery_word_pos\x18\n \x01(\r\x12\x17\n\x0frecovery_cipher\x18\x0b \x01(\t\x12$\n\x1crecovery_auto_completed_word\x18\x0c \x01(\t\x12\x15\n\rfirmware_hash\x18\r \x01(\x0c\x12\x14\n\x0cstorage_hash\x18\x0e \x01(\x0c\"\x0f\n\rDebugLinkStop\";\n\x0c\x44\x65\x62ugLinkLog\x12\r\n\x05level\x18\x01 \x01(\r\x12\x0e\n\x06\x62ucket\x18\x02 \x01(\t\x12\x0c\n\x04text\x18\x03 \x01(\t\"\x15\n\x13\x44\x65\x62ugLinkFillConfig*\xa2\x17\n\x0bMessageType\x12 \n\x16MessageType_Initialize\x10\x00\x1a\x04\x90\xb5\x18\x01\x12\x1a\n\x10MessageType_Ping\x10\x01\x1a\x04\x90\xb5\x18\x01\x12\x1d\n\x13MessageType_Success\x10\x02\x1a\x04\x98\xb5\x18\x01\x12\x1d\n\x13MessageType_Failure\x10\x03\x1a\x04\x98\xb5\x18\x01\x12\x1f\n\x15MessageType_ChangePin\x10\x04\x1a\x04\x90\xb5\x18\x01\x12 \n\x16MessageType_WipeDevice\x10\x05\x1a\x04\x90\xb5\x18\x01\x12#\n\x19MessageType_FirmwareErase\x10\x06\x1a\x04\x90\xb5\x18\x01\x12$\n\x1aMessageType_FirmwareUpload\x10\x07\x1a\x04\x90\xb5\x18\x01\x12 \n\x16MessageType_GetEntropy\x10\t\x1a\x04\x90\xb5\x18\x01\x12\x1d\n\x13MessageType_Entropy\x10\n\x1a\x04\x98\xb5\x18\x01\x12\"\n\x18MessageType_GetPublicKey\x10\x0b\x1a\x04\x90\xb5\x18\x01\x12\x1f\n\x15MessageType_PublicKey\x10\x0c\x1a\x04\x98\xb5\x18\x01\x12 \n\x16MessageType_LoadDevice\x10\r\x1a\x04\x90\xb5\x18\x01\x12!\n\x17MessageType_ResetDevice\x10\x0e\x1a\x04\x90\xb5\x18\x01\x12\x1c\n\x12MessageType_SignTx\x10\x0f\x1a\x04\x90\xb5\x18\x01\x12\"\n\x18MessageType_SimpleSignTx\x10\x10\x1a\x04\x90\xb5\x18\x01\x12\x1e\n\x14MessageType_Features\x10\x11\x1a\x04\x98\xb5\x18\x01\x12&\n\x1cMessageType_PinMatrixRequest\x10\x12\x1a\x04\x98\xb5\x18\x01\x12\"\n\x18MessageType_PinMatrixAck\x10\x13\x1a\x04\x90\xb5\x18\x01\x12\x1c\n\x12MessageType_Cancel\x10\x14\x1a\x04\x90\xb5\x18\x01\x12\x1f\n\x15MessageType_TxRequest\x10\x15\x1a\x04\x98\xb5\x18\x01\x12\x1b\n\x11MessageType_TxAck\x10\x16\x1a\x04\x90\xb5\x18\x01\x12$\n\x1aMessageType_CipherKeyValue\x10\x17\x1a\x04\x90\xb5\x18\x01\x12\"\n\x18MessageType_ClearSession\x10\x18\x1a\x04\x90\xb5\x18\x01\x12#\n\x19MessageType_ApplySettings\x10\x19\x1a\x04\x90\xb5\x18\x01\x12#\n\x19MessageType_ButtonRequest\x10\x1a\x1a\x04\x98\xb5\x18\x01\x12\x1f\n\x15MessageType_ButtonAck\x10\x1b\x1a\x04\x90\xb5\x18\x01\x12 \n\x16MessageType_GetAddress\x10\x1d\x1a\x04\x90\xb5\x18\x01\x12\x1d\n\x13MessageType_Address\x10\x1e\x1a\x04\x98\xb5\x18\x01\x12$\n\x1aMessageType_EntropyRequest\x10#\x1a\x04\x98\xb5\x18\x01\x12 \n\x16MessageType_EntropyAck\x10$\x1a\x04\x90\xb5\x18\x01\x12!\n\x17MessageType_SignMessage\x10&\x1a\x04\x90\xb5\x18\x01\x12#\n\x19MessageType_VerifyMessage\x10\'\x1a\x04\x90\xb5\x18\x01\x12&\n\x1cMessageType_MessageSignature\x10(\x1a\x04\x98\xb5\x18\x01\x12\'\n\x1dMessageType_PassphraseRequest\x10)\x1a\x04\x98\xb5\x18\x01\x12#\n\x19MessageType_PassphraseAck\x10*\x1a\x04\x90\xb5\x18\x01\x12$\n\x1aMessageType_EstimateTxSize\x10+\x1a\x04\x90\xb5\x18\x01\x12\x1c\n\x12MessageType_TxSize\x10,\x1a\x04\x98\xb5\x18\x01\x12$\n\x1aMessageType_RecoveryDevice\x10-\x1a\x04\x90\xb5\x18\x01\x12!\n\x17MessageType_WordRequest\x10.\x1a\x04\x98\xb5\x18\x01\x12\x1d\n\x13MessageType_WordAck\x10/\x1a\x04\x90\xb5\x18\x01\x12&\n\x1cMessageType_CipheredKeyValue\x10\x30\x1a\x04\x98\xb5\x18\x01\x12$\n\x1aMessageType_EncryptMessage\x10\x31\x1a\x04\x90\xb5\x18\x01\x12&\n\x1cMessageType_EncryptedMessage\x10\x32\x1a\x04\x98\xb5\x18\x01\x12$\n\x1aMessageType_DecryptMessage\x10\x33\x1a\x04\x90\xb5\x18\x01\x12&\n\x1cMessageType_DecryptedMessage\x10\x34\x1a\x04\x98\xb5\x18\x01\x12\"\n\x18MessageType_SignIdentity\x10\x35\x1a\x04\x90\xb5\x18\x01\x12$\n\x1aMessageType_SignedIdentity\x10\x36\x1a\x04\x98\xb5\x18\x01\x12!\n\x17MessageType_GetFeatures\x10\x37\x1a\x04\x90\xb5\x18\x01\x12(\n\x1eMessageType_EthereumGetAddress\x10\x38\x1a\x04\x90\xb5\x18\x01\x12%\n\x1bMessageType_EthereumAddress\x10\x39\x1a\x04\x98\xb5\x18\x01\x12$\n\x1aMessageType_EthereumSignTx\x10:\x1a\x04\x90\xb5\x18\x01\x12\'\n\x1dMessageType_EthereumTxRequest\x10;\x1a\x04\x98\xb5\x18\x01\x12#\n\x19MessageType_EthereumTxAck\x10<\x1a\x04\x90\xb5\x18\x01\x12&\n\x1cMessageType_CharacterRequest\x10P\x1a\x04\x98\xb5\x18\x01\x12\"\n\x18MessageType_CharacterAck\x10Q\x1a\x04\x90\xb5\x18\x01\x12\x1e\n\x14MessageType_RawTxAck\x10R\x1a\x04\x90\xb5\x18\x01\x12#\n\x19MessageType_ApplyPolicies\x10S\x1a\x04\x90\xb5\x18\x01\x12\x1f\n\x15MessageType_FlashHash\x10T\x1a\x04\x90\xb5\x18\x01\x12 \n\x16MessageType_FlashWrite\x10U\x1a\x04\x90\xb5\x18\x01\x12\'\n\x1dMessageType_FlashHashResponse\x10V\x1a\x04\x98\xb5\x18\x01\x12(\n\x1eMessageType_DebugLinkFlashDump\x10W\x1a\x04\xa0\xb5\x18\x01\x12\x30\n&MessageType_DebugLinkFlashDumpResponse\x10X\x1a\x04\xa8\xb5\x18\x01\x12\x1f\n\x15MessageType_SoftReset\x10Y\x1a\x04\xa0\xb5\x18\x01\x12\'\n\x1dMessageType_DebugLinkDecision\x10\x64\x1a\x04\xa0\xb5\x18\x01\x12\'\n\x1dMessageType_DebugLinkGetState\x10\x65\x1a\x04\xa0\xb5\x18\x01\x12$\n\x1aMessageType_DebugLinkState\x10\x66\x1a\x04\xa8\xb5\x18\x01\x12#\n\x19MessageType_DebugLinkStop\x10g\x1a\x04\xa0\xb5\x18\x01\x12\"\n\x18MessageType_DebugLinkLog\x10h\x1a\x04\xa8\xb5\x18\x01\x12)\n\x1fMessageType_DebugLinkFillConfig\x10i\x1a\x04\xa8\xb5\x18\x01\x12\"\n\x18MessageType_GetCoinTable\x10j\x1a\x04\x90\xb5\x18\x01\x12\x1f\n\x15MessageType_CoinTable\x10k\x1a\x04\x98\xb5\x18\x01\x12)\n\x1fMessageType_EthereumSignMessage\x10l\x1a\x04\x90\xb5\x18\x01\x12+\n!MessageType_EthereumVerifyMessage\x10m\x1a\x04\x90\xb5\x18\x01\x12.\n$MessageType_EthereumMessageSignature\x10n\x1a\x04\x98\xb5\x18\x01\x12&\n\x1bMessageType_EosGetPublicKey\x10\xd8\x04\x1a\x04\x90\xb5\x18\x01\x12#\n\x18MessageType_EosPublicKey\x10\xd9\x04\x1a\x04\x98\xb5\x18\x01\x12 \n\x15MessageType_EosSignTx\x10\xda\x04\x1a\x04\x90\xb5\x18\x01\x12)\n\x1eMessageType_EosTxActionRequest\x10\xdb\x04\x1a\x04\x98\xb5\x18\x01\x12%\n\x1aMessageType_EosTxActionAck\x10\xdc\x04\x1a\x04\x90\xb5\x18\x01\x12\"\n\x17MessageType_EosSignedTx\x10\xdd\x04\x1a\x04\x98\xb5\x18\x01\x42,\n\x1a\x63om.keepkey.deviceprotocolB\x0eKeepKeyMessage')
  ,
  dependencies=[types__pb2.DESCRIPTOR,])

_MESSAGETYPE = _descriptor.EnumDescriptor(
  name='MessageType',
  full_name='MessageType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='MessageType_Initialize', index=0, number=0,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Ping', index=1, number=1,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Success', index=2, number=2,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Failure', index=3, number=3,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ChangePin', index=4, number=4,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_WipeDevice', index=5, number=5,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_FirmwareErase', index=6, number=6,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_FirmwareUpload', index=7, number=7,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_GetEntropy', index=8, number=9,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Entropy', index=9, number=10,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_GetPublicKey', index=10, number=11,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_PublicKey', index=11, number=12,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_LoadDevice', index=12, number=13,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ResetDevice', index=13, number=14,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_SignTx', index=14, number=15,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_SimpleSignTx', index=15, number=16,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Features', index=16, number=17,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_PinMatrixRequest', index=17, number=18,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_PinMatrixAck', index=18, number=19,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Cancel', index=19, number=20,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_TxRequest', index=20, number=21,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_TxAck', index=21, number=22,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_CipherKeyValue', index=22, number=23,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ClearSession', index=23, number=24,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ApplySettings', index=24, number=25,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ButtonRequest', index=25, number=26,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ButtonAck', index=26, number=27,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_GetAddress', index=27, number=29,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_Address', index=28, number=30,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EntropyRequest', index=29, number=35,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EntropyAck', index=30, number=36,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_SignMessage', index=31, number=38,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_VerifyMessage', index=32, number=39,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_MessageSignature', index=33, number=40,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_PassphraseRequest', index=34, number=41,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_PassphraseAck', index=35, number=42,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EstimateTxSize', index=36, number=43,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_TxSize', index=37, number=44,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_RecoveryDevice', index=38, number=45,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_WordRequest', index=39, number=46,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_WordAck', index=40, number=47,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_CipheredKeyValue', index=41, number=48,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EncryptMessage', index=42, number=49,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EncryptedMessage', index=43, number=50,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DecryptMessage', index=44, number=51,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DecryptedMessage', index=45, number=52,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_SignIdentity', index=46, number=53,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_SignedIdentity', index=47, number=54,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_GetFeatures', index=48, number=55,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumGetAddress', index=49, number=56,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumAddress', index=50, number=57,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumSignTx', index=51, number=58,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumTxRequest', index=52, number=59,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumTxAck', index=53, number=60,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_CharacterRequest', index=54, number=80,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_CharacterAck', index=55, number=81,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_RawTxAck', index=56, number=82,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_ApplyPolicies', index=57, number=83,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_FlashHash', index=58, number=84,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_FlashWrite', index=59, number=85,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_FlashHashResponse', index=60, number=86,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkFlashDump', index=61, number=87,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkFlashDumpResponse', index=62, number=88,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_SoftReset', index=63, number=89,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkDecision', index=64, number=100,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkGetState', index=65, number=101,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkState', index=66, number=102,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkStop', index=67, number=103,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkLog', index=68, number=104,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_DebugLinkFillConfig', index=69, number=105,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_GetCoinTable', index=70, number=106,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_CoinTable', index=71, number=107,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumSignMessage', index=72, number=108,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumVerifyMessage', index=73, number=109,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EthereumMessageSignature', index=74, number=110,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EosGetPublicKey', index=75, number=600,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EosPublicKey', index=76, number=601,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EosSignTx', index=77, number=602,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EosTxActionRequest', index=78, number=603,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EosTxActionAck', index=79, number=604,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001')),
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MessageType_EosSignedTx', index=80, number=605,
      options=_descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001')),
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=6130,
  serialized_end=9108,
)
_sym_db.RegisterEnumDescriptor(_MESSAGETYPE)

MessageType = enum_type_wrapper.EnumTypeWrapper(_MESSAGETYPE)
MessageType_Initialize = 0
MessageType_Ping = 1
MessageType_Success = 2
MessageType_Failure = 3
MessageType_ChangePin = 4
MessageType_WipeDevice = 5
MessageType_FirmwareErase = 6
MessageType_FirmwareUpload = 7
MessageType_GetEntropy = 9
MessageType_Entropy = 10
MessageType_GetPublicKey = 11
MessageType_PublicKey = 12
MessageType_LoadDevice = 13
MessageType_ResetDevice = 14
MessageType_SignTx = 15
MessageType_SimpleSignTx = 16
MessageType_Features = 17
MessageType_PinMatrixRequest = 18
MessageType_PinMatrixAck = 19
MessageType_Cancel = 20
MessageType_TxRequest = 21
MessageType_TxAck = 22
MessageType_CipherKeyValue = 23
MessageType_ClearSession = 24
MessageType_ApplySettings = 25
MessageType_ButtonRequest = 26
MessageType_ButtonAck = 27
MessageType_GetAddress = 29
MessageType_Address = 30
MessageType_EntropyRequest = 35
MessageType_EntropyAck = 36
MessageType_SignMessage = 38
MessageType_VerifyMessage = 39
MessageType_MessageSignature = 40
MessageType_PassphraseRequest = 41
MessageType_PassphraseAck = 42
MessageType_EstimateTxSize = 43
MessageType_TxSize = 44
MessageType_RecoveryDevice = 45
MessageType_WordRequest = 46
MessageType_WordAck = 47
MessageType_CipheredKeyValue = 48
MessageType_EncryptMessage = 49
MessageType_EncryptedMessage = 50
MessageType_DecryptMessage = 51
MessageType_DecryptedMessage = 52
MessageType_SignIdentity = 53
MessageType_SignedIdentity = 54
MessageType_GetFeatures = 55
MessageType_EthereumGetAddress = 56
MessageType_EthereumAddress = 57
MessageType_EthereumSignTx = 58
MessageType_EthereumTxRequest = 59
MessageType_EthereumTxAck = 60
MessageType_CharacterRequest = 80
MessageType_CharacterAck = 81
MessageType_RawTxAck = 82
MessageType_ApplyPolicies = 83
MessageType_FlashHash = 84
MessageType_FlashWrite = 85
MessageType_FlashHashResponse = 86
MessageType_DebugLinkFlashDump = 87
MessageType_DebugLinkFlashDumpResponse = 88
MessageType_SoftReset = 89
MessageType_DebugLinkDecision = 100
MessageType_DebugLinkGetState = 101
MessageType_DebugLinkState = 102
MessageType_DebugLinkStop = 103
MessageType_DebugLinkLog = 104
MessageType_DebugLinkFillConfig = 105
MessageType_GetCoinTable = 106
MessageType_CoinTable = 107
MessageType_EthereumSignMessage = 108
MessageType_EthereumVerifyMessage = 109
MessageType_EthereumMessageSignature = 110
MessageType_EosGetPublicKey = 600
MessageType_EosPublicKey = 601
MessageType_EosSignTx = 602
MessageType_EosTxActionRequest = 603
MessageType_EosTxActionAck = 604
MessageType_EosSignedTx = 605



_INITIALIZE = _descriptor.Descriptor(
  name='Initialize',
  full_name='Initialize',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=31,
  serialized_end=43,
)


_GETFEATURES = _descriptor.Descriptor(
  name='GetFeatures',
  full_name='GetFeatures',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=45,
  serialized_end=58,
)


_FEATURES = _descriptor.Descriptor(
  name='Features',
  full_name='Features',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='vendor', full_name='Features.vendor', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='major_version', full_name='Features.major_version', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='minor_version', full_name='Features.minor_version', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='patch_version', full_name='Features.patch_version', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='bootloader_mode', full_name='Features.bootloader_mode', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='device_id', full_name='Features.device_id', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin_protection', full_name='Features.pin_protection', index=6,
      number=7, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_protection', full_name='Features.passphrase_protection', index=7,
      number=8, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='language', full_name='Features.language', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='label', full_name='Features.label', index=9,
      number=10, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coins', full_name='Features.coins', index=10,
      number=11, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='initialized', full_name='Features.initialized', index=11,
      number=12, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='revision', full_name='Features.revision', index=12,
      number=13, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='bootloader_hash', full_name='Features.bootloader_hash', index=13,
      number=14, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='imported', full_name='Features.imported', index=14,
      number=15, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin_cached', full_name='Features.pin_cached', index=15,
      number=16, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_cached', full_name='Features.passphrase_cached', index=16,
      number=17, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='policies', full_name='Features.policies', index=17,
      number=18, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='model', full_name='Features.model', index=18,
      number=21, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='firmware_variant', full_name='Features.firmware_variant', index=19,
      number=22, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='firmware_hash', full_name='Features.firmware_hash', index=20,
      number=23, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='no_backup', full_name='Features.no_backup', index=21,
      number=24, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=61,
  serialized_end=557,
)


_GETCOINTABLE = _descriptor.Descriptor(
  name='GetCoinTable',
  full_name='GetCoinTable',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='start', full_name='GetCoinTable.start', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='end', full_name='GetCoinTable.end', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=559,
  serialized_end=601,
)


_COINTABLE = _descriptor.Descriptor(
  name='CoinTable',
  full_name='CoinTable',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='table', full_name='CoinTable.table', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='num_coins', full_name='CoinTable.num_coins', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='chunk_size', full_name='CoinTable.chunk_size', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=603,
  serialized_end=679,
)


_CLEARSESSION = _descriptor.Descriptor(
  name='ClearSession',
  full_name='ClearSession',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=681,
  serialized_end=695,
)


_APPLYSETTINGS = _descriptor.Descriptor(
  name='ApplySettings',
  full_name='ApplySettings',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='language', full_name='ApplySettings.language', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='label', full_name='ApplySettings.label', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='use_passphrase', full_name='ApplySettings.use_passphrase', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='auto_lock_delay_ms', full_name='ApplySettings.auto_lock_delay_ms', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='u2f_counter', full_name='ApplySettings.u2f_counter', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=697,
  serialized_end=818,
)


_CHANGEPIN = _descriptor.Descriptor(
  name='ChangePin',
  full_name='ChangePin',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='remove', full_name='ChangePin.remove', index=0,
      number=1, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=820,
  serialized_end=847,
)


_PING = _descriptor.Descriptor(
  name='Ping',
  full_name='Ping',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='message', full_name='Ping.message', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='button_protection', full_name='Ping.button_protection', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin_protection', full_name='Ping.pin_protection', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_protection', full_name='Ping.passphrase_protection', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=849,
  serialized_end=954,
)


_SUCCESS = _descriptor.Descriptor(
  name='Success',
  full_name='Success',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='message', full_name='Success.message', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=956,
  serialized_end=982,
)


_FAILURE = _descriptor.Descriptor(
  name='Failure',
  full_name='Failure',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='Failure.code', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='Failure.message', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=984,
  serialized_end=1038,
)


_BUTTONREQUEST = _descriptor.Descriptor(
  name='ButtonRequest',
  full_name='ButtonRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='ButtonRequest.code', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='data', full_name='ButtonRequest.data', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1040,
  serialized_end=1103,
)


_BUTTONACK = _descriptor.Descriptor(
  name='ButtonAck',
  full_name='ButtonAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1105,
  serialized_end=1116,
)


_PINMATRIXREQUEST = _descriptor.Descriptor(
  name='PinMatrixRequest',
  full_name='PinMatrixRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='PinMatrixRequest.type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1118,
  serialized_end=1173,
)


_PINMATRIXACK = _descriptor.Descriptor(
  name='PinMatrixAck',
  full_name='PinMatrixAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='pin', full_name='PinMatrixAck.pin', index=0,
      number=1, type=9, cpp_type=9, label=2,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1175,
  serialized_end=1202,
)


_CANCEL = _descriptor.Descriptor(
  name='Cancel',
  full_name='Cancel',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1204,
  serialized_end=1212,
)


_PASSPHRASEREQUEST = _descriptor.Descriptor(
  name='PassphraseRequest',
  full_name='PassphraseRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1214,
  serialized_end=1233,
)


_PASSPHRASEACK = _descriptor.Descriptor(
  name='PassphraseAck',
  full_name='PassphraseAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='passphrase', full_name='PassphraseAck.passphrase', index=0,
      number=1, type=9, cpp_type=9, label=2,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1235,
  serialized_end=1270,
)


_GETENTROPY = _descriptor.Descriptor(
  name='GetEntropy',
  full_name='GetEntropy',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='size', full_name='GetEntropy.size', index=0,
      number=1, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1272,
  serialized_end=1298,
)


_ENTROPY = _descriptor.Descriptor(
  name='Entropy',
  full_name='Entropy',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='entropy', full_name='Entropy.entropy', index=0,
      number=1, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1300,
  serialized_end=1326,
)


_GETPUBLICKEY = _descriptor.Descriptor(
  name='GetPublicKey',
  full_name='GetPublicKey',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='GetPublicKey.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ecdsa_curve_name', full_name='GetPublicKey.ecdsa_curve_name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='show_display', full_name='GetPublicKey.show_display', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='GetPublicKey.coin_name', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='script_type', full_name='GetPublicKey.script_type', index=4,
      number=5, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1329,
  serialized_end=1491,
)


_PUBLICKEY = _descriptor.Descriptor(
  name='PublicKey',
  full_name='PublicKey',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='node', full_name='PublicKey.node', index=0,
      number=1, type=11, cpp_type=10, label=2,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='xpub', full_name='PublicKey.xpub', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1493,
  serialized_end=1545,
)


_GETADDRESS = _descriptor.Descriptor(
  name='GetAddress',
  full_name='GetAddress',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='GetAddress.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='GetAddress.coin_name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='show_display', full_name='GetAddress.show_display', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='multisig', full_name='GetAddress.multisig', index=3,
      number=4, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='script_type', full_name='GetAddress.script_type', index=4,
      number=5, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1548,
  serialized_end=1727,
)


_ETHEREUMGETADDRESS = _descriptor.Descriptor(
  name='EthereumGetAddress',
  full_name='EthereumGetAddress',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='EthereumGetAddress.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='show_display', full_name='EthereumGetAddress.show_display', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1729,
  serialized_end=1790,
)


_ADDRESS = _descriptor.Descriptor(
  name='Address',
  full_name='Address',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='Address.address', index=0,
      number=1, type=9, cpp_type=9, label=2,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1792,
  serialized_end=1818,
)


_ETHEREUMADDRESS = _descriptor.Descriptor(
  name='EthereumAddress',
  full_name='EthereumAddress',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='EthereumAddress.address', index=0,
      number=1, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1820,
  serialized_end=1854,
)


_WIPEDEVICE = _descriptor.Descriptor(
  name='WipeDevice',
  full_name='WipeDevice',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1856,
  serialized_end=1868,
)


_LOADDEVICE = _descriptor.Descriptor(
  name='LoadDevice',
  full_name='LoadDevice',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='mnemonic', full_name='LoadDevice.mnemonic', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='node', full_name='LoadDevice.node', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin', full_name='LoadDevice.pin', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_protection', full_name='LoadDevice.passphrase_protection', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='language', full_name='LoadDevice.language', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("english").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='label', full_name='LoadDevice.label', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='skip_checksum', full_name='LoadDevice.skip_checksum', index=6,
      number=7, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='u2f_counter', full_name='LoadDevice.u2f_counter', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1871,
  serialized_end=2058,
)


_RESETDEVICE = _descriptor.Descriptor(
  name='ResetDevice',
  full_name='ResetDevice',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='display_random', full_name='ResetDevice.display_random', index=0,
      number=1, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='strength', full_name='ResetDevice.strength', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=True, default_value=256,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_protection', full_name='ResetDevice.passphrase_protection', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin_protection', full_name='ResetDevice.pin_protection', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='language', full_name='ResetDevice.language', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("english").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='label', full_name='ResetDevice.label', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='no_backup', full_name='ResetDevice.no_backup', index=6,
      number=7, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='auto_lock_delay_ms', full_name='ResetDevice.auto_lock_delay_ms', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2061,
  serialized_end=2265,
)


_ENTROPYREQUEST = _descriptor.Descriptor(
  name='EntropyRequest',
  full_name='EntropyRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2267,
  serialized_end=2283,
)


_ENTROPYACK = _descriptor.Descriptor(
  name='EntropyAck',
  full_name='EntropyAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='entropy', full_name='EntropyAck.entropy', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2285,
  serialized_end=2314,
)


_RECOVERYDEVICE = _descriptor.Descriptor(
  name='RecoveryDevice',
  full_name='RecoveryDevice',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='word_count', full_name='RecoveryDevice.word_count', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_protection', full_name='RecoveryDevice.passphrase_protection', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin_protection', full_name='RecoveryDevice.pin_protection', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='language', full_name='RecoveryDevice.language', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("english").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='label', full_name='RecoveryDevice.label', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='enforce_wordlist', full_name='RecoveryDevice.enforce_wordlist', index=5,
      number=6, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='use_character_cipher', full_name='RecoveryDevice.use_character_cipher', index=6,
      number=7, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='auto_lock_delay_ms', full_name='RecoveryDevice.auto_lock_delay_ms', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='u2f_counter', full_name='RecoveryDevice.u2f_counter', index=8,
      number=9, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dry_run', full_name='RecoveryDevice.dry_run', index=9,
      number=10, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2317,
  serialized_end=2572,
)


_WORDREQUEST = _descriptor.Descriptor(
  name='WordRequest',
  full_name='WordRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2574,
  serialized_end=2587,
)


_WORDACK = _descriptor.Descriptor(
  name='WordAck',
  full_name='WordAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='word', full_name='WordAck.word', index=0,
      number=1, type=9, cpp_type=9, label=2,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2589,
  serialized_end=2612,
)


_CHARACTERREQUEST = _descriptor.Descriptor(
  name='CharacterRequest',
  full_name='CharacterRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='word_pos', full_name='CharacterRequest.word_pos', index=0,
      number=1, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='character_pos', full_name='CharacterRequest.character_pos', index=1,
      number=2, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2614,
  serialized_end=2673,
)


_CHARACTERACK = _descriptor.Descriptor(
  name='CharacterAck',
  full_name='CharacterAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='character', full_name='CharacterAck.character', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='delete', full_name='CharacterAck.delete', index=1,
      number=2, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='done', full_name='CharacterAck.done', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2675,
  serialized_end=2738,
)


_SIGNMESSAGE = _descriptor.Descriptor(
  name='SignMessage',
  full_name='SignMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='SignMessage.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='SignMessage.message', index=1,
      number=2, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='SignMessage.coin_name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='script_type', full_name='SignMessage.script_type', index=3,
      number=4, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2741,
  serialized_end=2871,
)


_VERIFYMESSAGE = _descriptor.Descriptor(
  name='VerifyMessage',
  full_name='VerifyMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='VerifyMessage.address', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature', full_name='VerifyMessage.signature', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='VerifyMessage.message', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='VerifyMessage.coin_name', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2873,
  serialized_end=2969,
)


_MESSAGESIGNATURE = _descriptor.Descriptor(
  name='MessageSignature',
  full_name='MessageSignature',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='MessageSignature.address', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature', full_name='MessageSignature.signature', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2971,
  serialized_end=3025,
)


_ENCRYPTMESSAGE = _descriptor.Descriptor(
  name='EncryptMessage',
  full_name='EncryptMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='pubkey', full_name='EncryptMessage.pubkey', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='EncryptMessage.message', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='display_only', full_name='EncryptMessage.display_only', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address_n', full_name='EncryptMessage.address_n', index=3,
      number=4, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='EncryptMessage.coin_name', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3027,
  serialized_end=3145,
)


_ENCRYPTEDMESSAGE = _descriptor.Descriptor(
  name='EncryptedMessage',
  full_name='EncryptedMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='nonce', full_name='EncryptedMessage.nonce', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='EncryptedMessage.message', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hmac', full_name='EncryptedMessage.hmac', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3147,
  serialized_end=3211,
)


_DECRYPTMESSAGE = _descriptor.Descriptor(
  name='DecryptMessage',
  full_name='DecryptMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='DecryptMessage.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='nonce', full_name='DecryptMessage.nonce', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='DecryptMessage.message', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hmac', full_name='DecryptMessage.hmac', index=3,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3213,
  serialized_end=3294,
)


_DECRYPTEDMESSAGE = _descriptor.Descriptor(
  name='DecryptedMessage',
  full_name='DecryptedMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='message', full_name='DecryptedMessage.message', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address', full_name='DecryptedMessage.address', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3296,
  serialized_end=3348,
)


_CIPHERKEYVALUE = _descriptor.Descriptor(
  name='CipherKeyValue',
  full_name='CipherKeyValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='CipherKeyValue.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='key', full_name='CipherKeyValue.key', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='CipherKeyValue.value', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='encrypt', full_name='CipherKeyValue.encrypt', index=3,
      number=4, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ask_on_encrypt', full_name='CipherKeyValue.ask_on_encrypt', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ask_on_decrypt', full_name='CipherKeyValue.ask_on_decrypt', index=5,
      number=6, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='iv', full_name='CipherKeyValue.iv', index=6,
      number=7, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3351,
  serialized_end=3491,
)


_CIPHEREDKEYVALUE = _descriptor.Descriptor(
  name='CipheredKeyValue',
  full_name='CipheredKeyValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='value', full_name='CipheredKeyValue.value', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3493,
  serialized_end=3526,
)


_ESTIMATETXSIZE = _descriptor.Descriptor(
  name='EstimateTxSize',
  full_name='EstimateTxSize',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='outputs_count', full_name='EstimateTxSize.outputs_count', index=0,
      number=1, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='inputs_count', full_name='EstimateTxSize.inputs_count', index=1,
      number=2, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='EstimateTxSize.coin_name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3528,
  serialized_end=3617,
)


_TXSIZE = _descriptor.Descriptor(
  name='TxSize',
  full_name='TxSize',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='tx_size', full_name='TxSize.tx_size', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3619,
  serialized_end=3644,
)


_SIGNTX = _descriptor.Descriptor(
  name='SignTx',
  full_name='SignTx',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='outputs_count', full_name='SignTx.outputs_count', index=0,
      number=1, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='inputs_count', full_name='SignTx.inputs_count', index=1,
      number=2, type=13, cpp_type=3, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='SignTx.coin_name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='version', full_name='SignTx.version', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=True, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='lock_time', full_name='SignTx.lock_time', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='expiry', full_name='SignTx.expiry', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='overwintered', full_name='SignTx.overwintered', index=6,
      number=7, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='version_group_id', full_name='SignTx.version_group_id', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3647,
  serialized_end=3834,
)


_SIMPLESIGNTX = _descriptor.Descriptor(
  name='SimpleSignTx',
  full_name='SimpleSignTx',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='inputs', full_name='SimpleSignTx.inputs', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='outputs', full_name='SimpleSignTx.outputs', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='transactions', full_name='SimpleSignTx.transactions', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coin_name', full_name='SimpleSignTx.coin_name', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=True, default_value=_b("Bitcoin").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='version', full_name='SimpleSignTx.version', index=4,
      number=5, type=13, cpp_type=3, label=1,
      has_default_value=True, default_value=1,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='lock_time', full_name='SimpleSignTx.lock_time', index=5,
      number=6, type=13, cpp_type=3, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='expiry', full_name='SimpleSignTx.expiry', index=6,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='overwintered', full_name='SimpleSignTx.overwintered', index=7,
      number=8, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3837,
  serialized_end=4061,
)


_TXREQUEST = _descriptor.Descriptor(
  name='TxRequest',
  full_name='TxRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='request_type', full_name='TxRequest.request_type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='details', full_name='TxRequest.details', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='serialized', full_name='TxRequest.serialized', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4064,
  serialized_end=4197,
)


_TXACK = _descriptor.Descriptor(
  name='TxAck',
  full_name='TxAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='tx', full_name='TxAck.tx', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4199,
  serialized_end=4236,
)


_RAWTXACK = _descriptor.Descriptor(
  name='RawTxAck',
  full_name='RawTxAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='tx', full_name='RawTxAck.tx', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4238,
  serialized_end=4281,
)


_ETHEREUMSIGNTX = _descriptor.Descriptor(
  name='EthereumSignTx',
  full_name='EthereumSignTx',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='EthereumSignTx.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='nonce', full_name='EthereumSignTx.nonce', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='gas_price', full_name='EthereumSignTx.gas_price', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='gas_limit', full_name='EthereumSignTx.gas_limit', index=3,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='to', full_name='EthereumSignTx.to', index=4,
      number=5, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='value', full_name='EthereumSignTx.value', index=5,
      number=6, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='data_initial_chunk', full_name='EthereumSignTx.data_initial_chunk', index=6,
      number=7, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='data_length', full_name='EthereumSignTx.data_length', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='to_address_n', full_name='EthereumSignTx.to_address_n', index=8,
      number=9, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address_type', full_name='EthereumSignTx.address_type', index=9,
      number=10, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='exchange_type', full_name='EthereumSignTx.exchange_type', index=10,
      number=11, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='chain_id', full_name='EthereumSignTx.chain_id', index=11,
      number=12, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='token_value', full_name='EthereumSignTx.token_value', index=12,
      number=100, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='token_to', full_name='EthereumSignTx.token_to', index=13,
      number=101, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='token_shortcut', full_name='EthereumSignTx.token_shortcut', index=14,
      number=102, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tx_type', full_name='EthereumSignTx.tx_type', index=15,
      number=103, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4284,
  serialized_end=4648,
)


_ETHEREUMTXREQUEST = _descriptor.Descriptor(
  name='EthereumTxRequest',
  full_name='EthereumTxRequest',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='data_length', full_name='EthereumTxRequest.data_length', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature_v', full_name='EthereumTxRequest.signature_v', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature_r', full_name='EthereumTxRequest.signature_r', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature_s', full_name='EthereumTxRequest.signature_s', index=3,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hash', full_name='EthereumTxRequest.hash', index=4,
      number=5, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature_der', full_name='EthereumTxRequest.signature_der', index=5,
      number=6, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4651,
  serialized_end=4791,
)


_ETHEREUMTXACK = _descriptor.Descriptor(
  name='EthereumTxAck',
  full_name='EthereumTxAck',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='data_chunk', full_name='EthereumTxAck.data_chunk', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4793,
  serialized_end=4828,
)


_ETHEREUMSIGNMESSAGE = _descriptor.Descriptor(
  name='EthereumSignMessage',
  full_name='EthereumSignMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address_n', full_name='EthereumSignMessage.address_n', index=0,
      number=1, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='EthereumSignMessage.message', index=1,
      number=2, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4830,
  serialized_end=4887,
)


_ETHEREUMVERIFYMESSAGE = _descriptor.Descriptor(
  name='EthereumVerifyMessage',
  full_name='EthereumVerifyMessage',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='EthereumVerifyMessage.address', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature', full_name='EthereumVerifyMessage.signature', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='EthereumVerifyMessage.message', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4889,
  serialized_end=4965,
)


_ETHEREUMMESSAGESIGNATURE = _descriptor.Descriptor(
  name='EthereumMessageSignature',
  full_name='EthereumMessageSignature',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='EthereumMessageSignature.address', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature', full_name='EthereumMessageSignature.signature', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4967,
  serialized_end=5029,
)


_SIGNIDENTITY = _descriptor.Descriptor(
  name='SignIdentity',
  full_name='SignIdentity',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='identity', full_name='SignIdentity.identity', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='challenge_hidden', full_name='SignIdentity.challenge_hidden', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='challenge_visual', full_name='SignIdentity.challenge_visual', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ecdsa_curve_name', full_name='SignIdentity.ecdsa_curve_name', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5031,
  serialized_end=5156,
)


_SIGNEDIDENTITY = _descriptor.Descriptor(
  name='SignedIdentity',
  full_name='SignedIdentity',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='SignedIdentity.address', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='public_key', full_name='SignedIdentity.public_key', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature', full_name='SignedIdentity.signature', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5158,
  serialized_end=5230,
)


_APPLYPOLICIES = _descriptor.Descriptor(
  name='ApplyPolicies',
  full_name='ApplyPolicies',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='policy', full_name='ApplyPolicies.policy', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5232,
  serialized_end=5276,
)


_FLASHHASH = _descriptor.Descriptor(
  name='FlashHash',
  full_name='FlashHash',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='FlashHash.address', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='length', full_name='FlashHash.length', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='challenge', full_name='FlashHash.challenge', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5278,
  serialized_end=5341,
)


_FLASHWRITE = _descriptor.Descriptor(
  name='FlashWrite',
  full_name='FlashWrite',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='FlashWrite.address', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='data', full_name='FlashWrite.data', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='erase', full_name='FlashWrite.erase', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5343,
  serialized_end=5401,
)


_FLASHHASHRESPONSE = _descriptor.Descriptor(
  name='FlashHashResponse',
  full_name='FlashHashResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='data', full_name='FlashHashResponse.data', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5403,
  serialized_end=5436,
)


_DEBUGLINKFLASHDUMP = _descriptor.Descriptor(
  name='DebugLinkFlashDump',
  full_name='DebugLinkFlashDump',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='address', full_name='DebugLinkFlashDump.address', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='length', full_name='DebugLinkFlashDump.length', index=1,
      number=2, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5438,
  serialized_end=5491,
)


_DEBUGLINKFLASHDUMPRESPONSE = _descriptor.Descriptor(
  name='DebugLinkFlashDumpResponse',
  full_name='DebugLinkFlashDumpResponse',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='data', full_name='DebugLinkFlashDumpResponse.data', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5493,
  serialized_end=5535,
)


_SOFTRESET = _descriptor.Descriptor(
  name='SoftReset',
  full_name='SoftReset',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5537,
  serialized_end=5548,
)


_FIRMWAREERASE = _descriptor.Descriptor(
  name='FirmwareErase',
  full_name='FirmwareErase',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5550,
  serialized_end=5565,
)


_FIRMWAREUPLOAD = _descriptor.Descriptor(
  name='FirmwareUpload',
  full_name='FirmwareUpload',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='payload_hash', full_name='FirmwareUpload.payload_hash', index=0,
      number=1, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='payload', full_name='FirmwareUpload.payload', index=1,
      number=2, type=12, cpp_type=9, label=2,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5567,
  serialized_end=5622,
)


_DEBUGLINKDECISION = _descriptor.Descriptor(
  name='DebugLinkDecision',
  full_name='DebugLinkDecision',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='yes_no', full_name='DebugLinkDecision.yes_no', index=0,
      number=1, type=8, cpp_type=7, label=2,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5624,
  serialized_end=5659,
)


_DEBUGLINKGETSTATE = _descriptor.Descriptor(
  name='DebugLinkGetState',
  full_name='DebugLinkGetState',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5661,
  serialized_end=5680,
)


_DEBUGLINKSTATE = _descriptor.Descriptor(
  name='DebugLinkState',
  full_name='DebugLinkState',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='layout', full_name='DebugLinkState.layout', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='pin', full_name='DebugLinkState.pin', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='matrix', full_name='DebugLinkState.matrix', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mnemonic', full_name='DebugLinkState.mnemonic', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='node', full_name='DebugLinkState.node', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='passphrase_protection', full_name='DebugLinkState.passphrase_protection', index=5,
      number=6, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='reset_word', full_name='DebugLinkState.reset_word', index=6,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='reset_entropy', full_name='DebugLinkState.reset_entropy', index=7,
      number=8, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='recovery_fake_word', full_name='DebugLinkState.recovery_fake_word', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='recovery_word_pos', full_name='DebugLinkState.recovery_word_pos', index=9,
      number=10, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='recovery_cipher', full_name='DebugLinkState.recovery_cipher', index=10,
      number=11, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='recovery_auto_completed_word', full_name='DebugLinkState.recovery_auto_completed_word', index=11,
      number=12, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='firmware_hash', full_name='DebugLinkState.firmware_hash', index=12,
      number=13, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='storage_hash', full_name='DebugLinkState.storage_hash', index=13,
      number=14, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5683,
  serialized_end=6026,
)


_DEBUGLINKSTOP = _descriptor.Descriptor(
  name='DebugLinkStop',
  full_name='DebugLinkStop',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6028,
  serialized_end=6043,
)


_DEBUGLINKLOG = _descriptor.Descriptor(
  name='DebugLinkLog',
  full_name='DebugLinkLog',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='level', full_name='DebugLinkLog.level', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='bucket', full_name='DebugLinkLog.bucket', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='text', full_name='DebugLinkLog.text', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6045,
  serialized_end=6104,
)


_DEBUGLINKFILLCONFIG = _descriptor.Descriptor(
  name='DebugLinkFillConfig',
  full_name='DebugLinkFillConfig',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=6106,
  serialized_end=6127,
)

_FEATURES.fields_by_name['coins'].message_type = types__pb2._COINTYPE
_FEATURES.fields_by_name['policies'].message_type = types__pb2._POLICYTYPE
_COINTABLE.fields_by_name['table'].message_type = types__pb2._COINTYPE
_FAILURE.fields_by_name['code'].enum_type = types__pb2._FAILURETYPE
_BUTTONREQUEST.fields_by_name['code'].enum_type = types__pb2._BUTTONREQUESTTYPE
_PINMATRIXREQUEST.fields_by_name['type'].enum_type = types__pb2._PINMATRIXREQUESTTYPE
_GETPUBLICKEY.fields_by_name['script_type'].enum_type = types__pb2._INPUTSCRIPTTYPE
_PUBLICKEY.fields_by_name['node'].message_type = types__pb2._HDNODETYPE
_GETADDRESS.fields_by_name['multisig'].message_type = types__pb2._MULTISIGREDEEMSCRIPTTYPE
_GETADDRESS.fields_by_name['script_type'].enum_type = types__pb2._INPUTSCRIPTTYPE
_LOADDEVICE.fields_by_name['node'].message_type = types__pb2._HDNODETYPE
_SIGNMESSAGE.fields_by_name['script_type'].enum_type = types__pb2._INPUTSCRIPTTYPE
_SIMPLESIGNTX.fields_by_name['inputs'].message_type = types__pb2._TXINPUTTYPE
_SIMPLESIGNTX.fields_by_name['outputs'].message_type = types__pb2._TXOUTPUTTYPE
_SIMPLESIGNTX.fields_by_name['transactions'].message_type = types__pb2._TRANSACTIONTYPE
_TXREQUEST.fields_by_name['request_type'].enum_type = types__pb2._REQUESTTYPE
_TXREQUEST.fields_by_name['details'].message_type = types__pb2._TXREQUESTDETAILSTYPE
_TXREQUEST.fields_by_name['serialized'].message_type = types__pb2._TXREQUESTSERIALIZEDTYPE
_TXACK.fields_by_name['tx'].message_type = types__pb2._TRANSACTIONTYPE
_RAWTXACK.fields_by_name['tx'].message_type = types__pb2._RAWTRANSACTIONTYPE
_ETHEREUMSIGNTX.fields_by_name['address_type'].enum_type = types__pb2._OUTPUTADDRESSTYPE
_ETHEREUMSIGNTX.fields_by_name['exchange_type'].message_type = types__pb2._EXCHANGETYPE
_SIGNIDENTITY.fields_by_name['identity'].message_type = types__pb2._IDENTITYTYPE
_APPLYPOLICIES.fields_by_name['policy'].message_type = types__pb2._POLICYTYPE
_DEBUGLINKSTATE.fields_by_name['node'].message_type = types__pb2._HDNODETYPE
DESCRIPTOR.message_types_by_name['Initialize'] = _INITIALIZE
DESCRIPTOR.message_types_by_name['GetFeatures'] = _GETFEATURES
DESCRIPTOR.message_types_by_name['Features'] = _FEATURES
DESCRIPTOR.message_types_by_name['GetCoinTable'] = _GETCOINTABLE
DESCRIPTOR.message_types_by_name['CoinTable'] = _COINTABLE
DESCRIPTOR.message_types_by_name['ClearSession'] = _CLEARSESSION
DESCRIPTOR.message_types_by_name['ApplySettings'] = _APPLYSETTINGS
DESCRIPTOR.message_types_by_name['ChangePin'] = _CHANGEPIN
DESCRIPTOR.message_types_by_name['Ping'] = _PING
DESCRIPTOR.message_types_by_name['Success'] = _SUCCESS
DESCRIPTOR.message_types_by_name['Failure'] = _FAILURE
DESCRIPTOR.message_types_by_name['ButtonRequest'] = _BUTTONREQUEST
DESCRIPTOR.message_types_by_name['ButtonAck'] = _BUTTONACK
DESCRIPTOR.message_types_by_name['PinMatrixRequest'] = _PINMATRIXREQUEST
DESCRIPTOR.message_types_by_name['PinMatrixAck'] = _PINMATRIXACK
DESCRIPTOR.message_types_by_name['Cancel'] = _CANCEL
DESCRIPTOR.message_types_by_name['PassphraseRequest'] = _PASSPHRASEREQUEST
DESCRIPTOR.message_types_by_name['PassphraseAck'] = _PASSPHRASEACK
DESCRIPTOR.message_types_by_name['GetEntropy'] = _GETENTROPY
DESCRIPTOR.message_types_by_name['Entropy'] = _ENTROPY
DESCRIPTOR.message_types_by_name['GetPublicKey'] = _GETPUBLICKEY
DESCRIPTOR.message_types_by_name['PublicKey'] = _PUBLICKEY
DESCRIPTOR.message_types_by_name['GetAddress'] = _GETADDRESS
DESCRIPTOR.message_types_by_name['EthereumGetAddress'] = _ETHEREUMGETADDRESS
DESCRIPTOR.message_types_by_name['Address'] = _ADDRESS
DESCRIPTOR.message_types_by_name['EthereumAddress'] = _ETHEREUMADDRESS
DESCRIPTOR.message_types_by_name['WipeDevice'] = _WIPEDEVICE
DESCRIPTOR.message_types_by_name['LoadDevice'] = _LOADDEVICE
DESCRIPTOR.message_types_by_name['ResetDevice'] = _RESETDEVICE
DESCRIPTOR.message_types_by_name['EntropyRequest'] = _ENTROPYREQUEST
DESCRIPTOR.message_types_by_name['EntropyAck'] = _ENTROPYACK
DESCRIPTOR.message_types_by_name['RecoveryDevice'] = _RECOVERYDEVICE
DESCRIPTOR.message_types_by_name['WordRequest'] = _WORDREQUEST
DESCRIPTOR.message_types_by_name['WordAck'] = _WORDACK
DESCRIPTOR.message_types_by_name['CharacterRequest'] = _CHARACTERREQUEST
DESCRIPTOR.message_types_by_name['CharacterAck'] = _CHARACTERACK
DESCRIPTOR.message_types_by_name['SignMessage'] = _SIGNMESSAGE
DESCRIPTOR.message_types_by_name['VerifyMessage'] = _VERIFYMESSAGE
DESCRIPTOR.message_types_by_name['MessageSignature'] = _MESSAGESIGNATURE
DESCRIPTOR.message_types_by_name['EncryptMessage'] = _ENCRYPTMESSAGE
DESCRIPTOR.message_types_by_name['EncryptedMessage'] = _ENCRYPTEDMESSAGE
DESCRIPTOR.message_types_by_name['DecryptMessage'] = _DECRYPTMESSAGE
DESCRIPTOR.message_types_by_name['DecryptedMessage'] = _DECRYPTEDMESSAGE
DESCRIPTOR.message_types_by_name['CipherKeyValue'] = _CIPHERKEYVALUE
DESCRIPTOR.message_types_by_name['CipheredKeyValue'] = _CIPHEREDKEYVALUE
DESCRIPTOR.message_types_by_name['EstimateTxSize'] = _ESTIMATETXSIZE
DESCRIPTOR.message_types_by_name['TxSize'] = _TXSIZE
DESCRIPTOR.message_types_by_name['SignTx'] = _SIGNTX
DESCRIPTOR.message_types_by_name['SimpleSignTx'] = _SIMPLESIGNTX
DESCRIPTOR.message_types_by_name['TxRequest'] = _TXREQUEST
DESCRIPTOR.message_types_by_name['TxAck'] = _TXACK
DESCRIPTOR.message_types_by_name['RawTxAck'] = _RAWTXACK
DESCRIPTOR.message_types_by_name['EthereumSignTx'] = _ETHEREUMSIGNTX
DESCRIPTOR.message_types_by_name['EthereumTxRequest'] = _ETHEREUMTXREQUEST
DESCRIPTOR.message_types_by_name['EthereumTxAck'] = _ETHEREUMTXACK
DESCRIPTOR.message_types_by_name['EthereumSignMessage'] = _ETHEREUMSIGNMESSAGE
DESCRIPTOR.message_types_by_name['EthereumVerifyMessage'] = _ETHEREUMVERIFYMESSAGE
DESCRIPTOR.message_types_by_name['EthereumMessageSignature'] = _ETHEREUMMESSAGESIGNATURE
DESCRIPTOR.message_types_by_name['SignIdentity'] = _SIGNIDENTITY
DESCRIPTOR.message_types_by_name['SignedIdentity'] = _SIGNEDIDENTITY
DESCRIPTOR.message_types_by_name['ApplyPolicies'] = _APPLYPOLICIES
DESCRIPTOR.message_types_by_name['FlashHash'] = _FLASHHASH
DESCRIPTOR.message_types_by_name['FlashWrite'] = _FLASHWRITE
DESCRIPTOR.message_types_by_name['FlashHashResponse'] = _FLASHHASHRESPONSE
DESCRIPTOR.message_types_by_name['DebugLinkFlashDump'] = _DEBUGLINKFLASHDUMP
DESCRIPTOR.message_types_by_name['DebugLinkFlashDumpResponse'] = _DEBUGLINKFLASHDUMPRESPONSE
DESCRIPTOR.message_types_by_name['SoftReset'] = _SOFTRESET
DESCRIPTOR.message_types_by_name['FirmwareErase'] = _FIRMWAREERASE
DESCRIPTOR.message_types_by_name['FirmwareUpload'] = _FIRMWAREUPLOAD
DESCRIPTOR.message_types_by_name['DebugLinkDecision'] = _DEBUGLINKDECISION
DESCRIPTOR.message_types_by_name['DebugLinkGetState'] = _DEBUGLINKGETSTATE
DESCRIPTOR.message_types_by_name['DebugLinkState'] = _DEBUGLINKSTATE
DESCRIPTOR.message_types_by_name['DebugLinkStop'] = _DEBUGLINKSTOP
DESCRIPTOR.message_types_by_name['DebugLinkLog'] = _DEBUGLINKLOG
DESCRIPTOR.message_types_by_name['DebugLinkFillConfig'] = _DEBUGLINKFILLCONFIG
DESCRIPTOR.enum_types_by_name['MessageType'] = _MESSAGETYPE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Initialize = _reflection.GeneratedProtocolMessageType('Initialize', (_message.Message,), dict(
  DESCRIPTOR = _INITIALIZE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Initialize)
  ))
_sym_db.RegisterMessage(Initialize)

GetFeatures = _reflection.GeneratedProtocolMessageType('GetFeatures', (_message.Message,), dict(
  DESCRIPTOR = _GETFEATURES,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:GetFeatures)
  ))
_sym_db.RegisterMessage(GetFeatures)

Features = _reflection.GeneratedProtocolMessageType('Features', (_message.Message,), dict(
  DESCRIPTOR = _FEATURES,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Features)
  ))
_sym_db.RegisterMessage(Features)

GetCoinTable = _reflection.GeneratedProtocolMessageType('GetCoinTable', (_message.Message,), dict(
  DESCRIPTOR = _GETCOINTABLE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:GetCoinTable)
  ))
_sym_db.RegisterMessage(GetCoinTable)

CoinTable = _reflection.GeneratedProtocolMessageType('CoinTable', (_message.Message,), dict(
  DESCRIPTOR = _COINTABLE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:CoinTable)
  ))
_sym_db.RegisterMessage(CoinTable)

ClearSession = _reflection.GeneratedProtocolMessageType('ClearSession', (_message.Message,), dict(
  DESCRIPTOR = _CLEARSESSION,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ClearSession)
  ))
_sym_db.RegisterMessage(ClearSession)

ApplySettings = _reflection.GeneratedProtocolMessageType('ApplySettings', (_message.Message,), dict(
  DESCRIPTOR = _APPLYSETTINGS,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ApplySettings)
  ))
_sym_db.RegisterMessage(ApplySettings)

ChangePin = _reflection.GeneratedProtocolMessageType('ChangePin', (_message.Message,), dict(
  DESCRIPTOR = _CHANGEPIN,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ChangePin)
  ))
_sym_db.RegisterMessage(ChangePin)

Ping = _reflection.GeneratedProtocolMessageType('Ping', (_message.Message,), dict(
  DESCRIPTOR = _PING,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Ping)
  ))
_sym_db.RegisterMessage(Ping)

Success = _reflection.GeneratedProtocolMessageType('Success', (_message.Message,), dict(
  DESCRIPTOR = _SUCCESS,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Success)
  ))
_sym_db.RegisterMessage(Success)

Failure = _reflection.GeneratedProtocolMessageType('Failure', (_message.Message,), dict(
  DESCRIPTOR = _FAILURE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Failure)
  ))
_sym_db.RegisterMessage(Failure)

ButtonRequest = _reflection.GeneratedProtocolMessageType('ButtonRequest', (_message.Message,), dict(
  DESCRIPTOR = _BUTTONREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ButtonRequest)
  ))
_sym_db.RegisterMessage(ButtonRequest)

ButtonAck = _reflection.GeneratedProtocolMessageType('ButtonAck', (_message.Message,), dict(
  DESCRIPTOR = _BUTTONACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ButtonAck)
  ))
_sym_db.RegisterMessage(ButtonAck)

PinMatrixRequest = _reflection.GeneratedProtocolMessageType('PinMatrixRequest', (_message.Message,), dict(
  DESCRIPTOR = _PINMATRIXREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:PinMatrixRequest)
  ))
_sym_db.RegisterMessage(PinMatrixRequest)

PinMatrixAck = _reflection.GeneratedProtocolMessageType('PinMatrixAck', (_message.Message,), dict(
  DESCRIPTOR = _PINMATRIXACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:PinMatrixAck)
  ))
_sym_db.RegisterMessage(PinMatrixAck)

Cancel = _reflection.GeneratedProtocolMessageType('Cancel', (_message.Message,), dict(
  DESCRIPTOR = _CANCEL,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Cancel)
  ))
_sym_db.RegisterMessage(Cancel)

PassphraseRequest = _reflection.GeneratedProtocolMessageType('PassphraseRequest', (_message.Message,), dict(
  DESCRIPTOR = _PASSPHRASEREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:PassphraseRequest)
  ))
_sym_db.RegisterMessage(PassphraseRequest)

PassphraseAck = _reflection.GeneratedProtocolMessageType('PassphraseAck', (_message.Message,), dict(
  DESCRIPTOR = _PASSPHRASEACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:PassphraseAck)
  ))
_sym_db.RegisterMessage(PassphraseAck)

GetEntropy = _reflection.GeneratedProtocolMessageType('GetEntropy', (_message.Message,), dict(
  DESCRIPTOR = _GETENTROPY,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:GetEntropy)
  ))
_sym_db.RegisterMessage(GetEntropy)

Entropy = _reflection.GeneratedProtocolMessageType('Entropy', (_message.Message,), dict(
  DESCRIPTOR = _ENTROPY,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Entropy)
  ))
_sym_db.RegisterMessage(Entropy)

GetPublicKey = _reflection.GeneratedProtocolMessageType('GetPublicKey', (_message.Message,), dict(
  DESCRIPTOR = _GETPUBLICKEY,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:GetPublicKey)
  ))
_sym_db.RegisterMessage(GetPublicKey)

PublicKey = _reflection.GeneratedProtocolMessageType('PublicKey', (_message.Message,), dict(
  DESCRIPTOR = _PUBLICKEY,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:PublicKey)
  ))
_sym_db.RegisterMessage(PublicKey)

GetAddress = _reflection.GeneratedProtocolMessageType('GetAddress', (_message.Message,), dict(
  DESCRIPTOR = _GETADDRESS,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:GetAddress)
  ))
_sym_db.RegisterMessage(GetAddress)

EthereumGetAddress = _reflection.GeneratedProtocolMessageType('EthereumGetAddress', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMGETADDRESS,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumGetAddress)
  ))
_sym_db.RegisterMessage(EthereumGetAddress)

Address = _reflection.GeneratedProtocolMessageType('Address', (_message.Message,), dict(
  DESCRIPTOR = _ADDRESS,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:Address)
  ))
_sym_db.RegisterMessage(Address)

EthereumAddress = _reflection.GeneratedProtocolMessageType('EthereumAddress', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMADDRESS,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumAddress)
  ))
_sym_db.RegisterMessage(EthereumAddress)

WipeDevice = _reflection.GeneratedProtocolMessageType('WipeDevice', (_message.Message,), dict(
  DESCRIPTOR = _WIPEDEVICE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:WipeDevice)
  ))
_sym_db.RegisterMessage(WipeDevice)

LoadDevice = _reflection.GeneratedProtocolMessageType('LoadDevice', (_message.Message,), dict(
  DESCRIPTOR = _LOADDEVICE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:LoadDevice)
  ))
_sym_db.RegisterMessage(LoadDevice)

ResetDevice = _reflection.GeneratedProtocolMessageType('ResetDevice', (_message.Message,), dict(
  DESCRIPTOR = _RESETDEVICE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ResetDevice)
  ))
_sym_db.RegisterMessage(ResetDevice)

EntropyRequest = _reflection.GeneratedProtocolMessageType('EntropyRequest', (_message.Message,), dict(
  DESCRIPTOR = _ENTROPYREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EntropyRequest)
  ))
_sym_db.RegisterMessage(EntropyRequest)

EntropyAck = _reflection.GeneratedProtocolMessageType('EntropyAck', (_message.Message,), dict(
  DESCRIPTOR = _ENTROPYACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EntropyAck)
  ))
_sym_db.RegisterMessage(EntropyAck)

RecoveryDevice = _reflection.GeneratedProtocolMessageType('RecoveryDevice', (_message.Message,), dict(
  DESCRIPTOR = _RECOVERYDEVICE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:RecoveryDevice)
  ))
_sym_db.RegisterMessage(RecoveryDevice)

WordRequest = _reflection.GeneratedProtocolMessageType('WordRequest', (_message.Message,), dict(
  DESCRIPTOR = _WORDREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:WordRequest)
  ))
_sym_db.RegisterMessage(WordRequest)

WordAck = _reflection.GeneratedProtocolMessageType('WordAck', (_message.Message,), dict(
  DESCRIPTOR = _WORDACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:WordAck)
  ))
_sym_db.RegisterMessage(WordAck)

CharacterRequest = _reflection.GeneratedProtocolMessageType('CharacterRequest', (_message.Message,), dict(
  DESCRIPTOR = _CHARACTERREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:CharacterRequest)
  ))
_sym_db.RegisterMessage(CharacterRequest)

CharacterAck = _reflection.GeneratedProtocolMessageType('CharacterAck', (_message.Message,), dict(
  DESCRIPTOR = _CHARACTERACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:CharacterAck)
  ))
_sym_db.RegisterMessage(CharacterAck)

SignMessage = _reflection.GeneratedProtocolMessageType('SignMessage', (_message.Message,), dict(
  DESCRIPTOR = _SIGNMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:SignMessage)
  ))
_sym_db.RegisterMessage(SignMessage)

VerifyMessage = _reflection.GeneratedProtocolMessageType('VerifyMessage', (_message.Message,), dict(
  DESCRIPTOR = _VERIFYMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:VerifyMessage)
  ))
_sym_db.RegisterMessage(VerifyMessage)

MessageSignature = _reflection.GeneratedProtocolMessageType('MessageSignature', (_message.Message,), dict(
  DESCRIPTOR = _MESSAGESIGNATURE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:MessageSignature)
  ))
_sym_db.RegisterMessage(MessageSignature)

EncryptMessage = _reflection.GeneratedProtocolMessageType('EncryptMessage', (_message.Message,), dict(
  DESCRIPTOR = _ENCRYPTMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EncryptMessage)
  ))
_sym_db.RegisterMessage(EncryptMessage)

EncryptedMessage = _reflection.GeneratedProtocolMessageType('EncryptedMessage', (_message.Message,), dict(
  DESCRIPTOR = _ENCRYPTEDMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EncryptedMessage)
  ))
_sym_db.RegisterMessage(EncryptedMessage)

DecryptMessage = _reflection.GeneratedProtocolMessageType('DecryptMessage', (_message.Message,), dict(
  DESCRIPTOR = _DECRYPTMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DecryptMessage)
  ))
_sym_db.RegisterMessage(DecryptMessage)

DecryptedMessage = _reflection.GeneratedProtocolMessageType('DecryptedMessage', (_message.Message,), dict(
  DESCRIPTOR = _DECRYPTEDMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DecryptedMessage)
  ))
_sym_db.RegisterMessage(DecryptedMessage)

CipherKeyValue = _reflection.GeneratedProtocolMessageType('CipherKeyValue', (_message.Message,), dict(
  DESCRIPTOR = _CIPHERKEYVALUE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:CipherKeyValue)
  ))
_sym_db.RegisterMessage(CipherKeyValue)

CipheredKeyValue = _reflection.GeneratedProtocolMessageType('CipheredKeyValue', (_message.Message,), dict(
  DESCRIPTOR = _CIPHEREDKEYVALUE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:CipheredKeyValue)
  ))
_sym_db.RegisterMessage(CipheredKeyValue)

EstimateTxSize = _reflection.GeneratedProtocolMessageType('EstimateTxSize', (_message.Message,), dict(
  DESCRIPTOR = _ESTIMATETXSIZE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EstimateTxSize)
  ))
_sym_db.RegisterMessage(EstimateTxSize)

TxSize = _reflection.GeneratedProtocolMessageType('TxSize', (_message.Message,), dict(
  DESCRIPTOR = _TXSIZE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:TxSize)
  ))
_sym_db.RegisterMessage(TxSize)

SignTx = _reflection.GeneratedProtocolMessageType('SignTx', (_message.Message,), dict(
  DESCRIPTOR = _SIGNTX,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:SignTx)
  ))
_sym_db.RegisterMessage(SignTx)

SimpleSignTx = _reflection.GeneratedProtocolMessageType('SimpleSignTx', (_message.Message,), dict(
  DESCRIPTOR = _SIMPLESIGNTX,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:SimpleSignTx)
  ))
_sym_db.RegisterMessage(SimpleSignTx)

TxRequest = _reflection.GeneratedProtocolMessageType('TxRequest', (_message.Message,), dict(
  DESCRIPTOR = _TXREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:TxRequest)
  ))
_sym_db.RegisterMessage(TxRequest)

TxAck = _reflection.GeneratedProtocolMessageType('TxAck', (_message.Message,), dict(
  DESCRIPTOR = _TXACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:TxAck)
  ))
_sym_db.RegisterMessage(TxAck)

RawTxAck = _reflection.GeneratedProtocolMessageType('RawTxAck', (_message.Message,), dict(
  DESCRIPTOR = _RAWTXACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:RawTxAck)
  ))
_sym_db.RegisterMessage(RawTxAck)

EthereumSignTx = _reflection.GeneratedProtocolMessageType('EthereumSignTx', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMSIGNTX,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumSignTx)
  ))
_sym_db.RegisterMessage(EthereumSignTx)

EthereumTxRequest = _reflection.GeneratedProtocolMessageType('EthereumTxRequest', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMTXREQUEST,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumTxRequest)
  ))
_sym_db.RegisterMessage(EthereumTxRequest)

EthereumTxAck = _reflection.GeneratedProtocolMessageType('EthereumTxAck', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMTXACK,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumTxAck)
  ))
_sym_db.RegisterMessage(EthereumTxAck)

EthereumSignMessage = _reflection.GeneratedProtocolMessageType('EthereumSignMessage', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMSIGNMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumSignMessage)
  ))
_sym_db.RegisterMessage(EthereumSignMessage)

EthereumVerifyMessage = _reflection.GeneratedProtocolMessageType('EthereumVerifyMessage', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMVERIFYMESSAGE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumVerifyMessage)
  ))
_sym_db.RegisterMessage(EthereumVerifyMessage)

EthereumMessageSignature = _reflection.GeneratedProtocolMessageType('EthereumMessageSignature', (_message.Message,), dict(
  DESCRIPTOR = _ETHEREUMMESSAGESIGNATURE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:EthereumMessageSignature)
  ))
_sym_db.RegisterMessage(EthereumMessageSignature)

SignIdentity = _reflection.GeneratedProtocolMessageType('SignIdentity', (_message.Message,), dict(
  DESCRIPTOR = _SIGNIDENTITY,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:SignIdentity)
  ))
_sym_db.RegisterMessage(SignIdentity)

SignedIdentity = _reflection.GeneratedProtocolMessageType('SignedIdentity', (_message.Message,), dict(
  DESCRIPTOR = _SIGNEDIDENTITY,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:SignedIdentity)
  ))
_sym_db.RegisterMessage(SignedIdentity)

ApplyPolicies = _reflection.GeneratedProtocolMessageType('ApplyPolicies', (_message.Message,), dict(
  DESCRIPTOR = _APPLYPOLICIES,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:ApplyPolicies)
  ))
_sym_db.RegisterMessage(ApplyPolicies)

FlashHash = _reflection.GeneratedProtocolMessageType('FlashHash', (_message.Message,), dict(
  DESCRIPTOR = _FLASHHASH,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:FlashHash)
  ))
_sym_db.RegisterMessage(FlashHash)

FlashWrite = _reflection.GeneratedProtocolMessageType('FlashWrite', (_message.Message,), dict(
  DESCRIPTOR = _FLASHWRITE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:FlashWrite)
  ))
_sym_db.RegisterMessage(FlashWrite)

FlashHashResponse = _reflection.GeneratedProtocolMessageType('FlashHashResponse', (_message.Message,), dict(
  DESCRIPTOR = _FLASHHASHRESPONSE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:FlashHashResponse)
  ))
_sym_db.RegisterMessage(FlashHashResponse)

DebugLinkFlashDump = _reflection.GeneratedProtocolMessageType('DebugLinkFlashDump', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKFLASHDUMP,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkFlashDump)
  ))
_sym_db.RegisterMessage(DebugLinkFlashDump)

DebugLinkFlashDumpResponse = _reflection.GeneratedProtocolMessageType('DebugLinkFlashDumpResponse', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKFLASHDUMPRESPONSE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkFlashDumpResponse)
  ))
_sym_db.RegisterMessage(DebugLinkFlashDumpResponse)

SoftReset = _reflection.GeneratedProtocolMessageType('SoftReset', (_message.Message,), dict(
  DESCRIPTOR = _SOFTRESET,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:SoftReset)
  ))
_sym_db.RegisterMessage(SoftReset)

FirmwareErase = _reflection.GeneratedProtocolMessageType('FirmwareErase', (_message.Message,), dict(
  DESCRIPTOR = _FIRMWAREERASE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:FirmwareErase)
  ))
_sym_db.RegisterMessage(FirmwareErase)

FirmwareUpload = _reflection.GeneratedProtocolMessageType('FirmwareUpload', (_message.Message,), dict(
  DESCRIPTOR = _FIRMWAREUPLOAD,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:FirmwareUpload)
  ))
_sym_db.RegisterMessage(FirmwareUpload)

DebugLinkDecision = _reflection.GeneratedProtocolMessageType('DebugLinkDecision', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKDECISION,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkDecision)
  ))
_sym_db.RegisterMessage(DebugLinkDecision)

DebugLinkGetState = _reflection.GeneratedProtocolMessageType('DebugLinkGetState', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKGETSTATE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkGetState)
  ))
_sym_db.RegisterMessage(DebugLinkGetState)

DebugLinkState = _reflection.GeneratedProtocolMessageType('DebugLinkState', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKSTATE,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkState)
  ))
_sym_db.RegisterMessage(DebugLinkState)

DebugLinkStop = _reflection.GeneratedProtocolMessageType('DebugLinkStop', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKSTOP,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkStop)
  ))
_sym_db.RegisterMessage(DebugLinkStop)

DebugLinkLog = _reflection.GeneratedProtocolMessageType('DebugLinkLog', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKLOG,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkLog)
  ))
_sym_db.RegisterMessage(DebugLinkLog)

DebugLinkFillConfig = _reflection.GeneratedProtocolMessageType('DebugLinkFillConfig', (_message.Message,), dict(
  DESCRIPTOR = _DEBUGLINKFILLCONFIG,
  __module__ = 'messages_pb2'
  # @@protoc_insertion_point(class_scope:DebugLinkFillConfig)
  ))
_sym_db.RegisterMessage(DebugLinkFillConfig)


DESCRIPTOR.has_options = True
DESCRIPTOR._options = _descriptor._ParseOptions(descriptor_pb2.FileOptions(), _b('\n\032com.keepkey.deviceprotocolB\016KeepKeyMessage'))
_MESSAGETYPE.values_by_name["MessageType_Initialize"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Initialize"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Ping"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Ping"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Success"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Success"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Failure"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Failure"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ChangePin"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ChangePin"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_WipeDevice"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_WipeDevice"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_FirmwareErase"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_FirmwareErase"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_FirmwareUpload"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_FirmwareUpload"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_GetEntropy"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_GetEntropy"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Entropy"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Entropy"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_GetPublicKey"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_GetPublicKey"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_PublicKey"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_PublicKey"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_LoadDevice"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_LoadDevice"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ResetDevice"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ResetDevice"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_SignTx"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_SignTx"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_SimpleSignTx"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_SimpleSignTx"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Features"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Features"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_PinMatrixRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_PinMatrixRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_PinMatrixAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_PinMatrixAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Cancel"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Cancel"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_TxRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_TxRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_TxAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_TxAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_CipherKeyValue"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_CipherKeyValue"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ClearSession"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ClearSession"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ApplySettings"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ApplySettings"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ButtonRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ButtonRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ButtonAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ButtonAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_GetAddress"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_GetAddress"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_Address"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_Address"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EntropyRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EntropyRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EntropyAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EntropyAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_SignMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_SignMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_VerifyMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_VerifyMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_MessageSignature"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_MessageSignature"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_PassphraseRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_PassphraseRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_PassphraseAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_PassphraseAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EstimateTxSize"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EstimateTxSize"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_TxSize"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_TxSize"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_RecoveryDevice"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_RecoveryDevice"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_WordRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_WordRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_WordAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_WordAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_CipheredKeyValue"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_CipheredKeyValue"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EncryptMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EncryptMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EncryptedMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EncryptedMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DecryptMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DecryptMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DecryptedMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DecryptedMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_SignIdentity"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_SignIdentity"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_SignedIdentity"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_SignedIdentity"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_GetFeatures"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_GetFeatures"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumGetAddress"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumGetAddress"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumAddress"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumAddress"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumSignTx"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumSignTx"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumTxRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumTxRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumTxAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumTxAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_CharacterRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_CharacterRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_CharacterAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_CharacterAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_RawTxAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_RawTxAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_ApplyPolicies"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_ApplyPolicies"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_FlashHash"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_FlashHash"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_FlashWrite"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_FlashWrite"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_FlashHashResponse"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_FlashHashResponse"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkFlashDump"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkFlashDump"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkFlashDumpResponse"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkFlashDumpResponse"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_SoftReset"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_SoftReset"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkDecision"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkDecision"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkGetState"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkGetState"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkState"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkState"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkStop"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkStop"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\240\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkLog"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkLog"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_DebugLinkFillConfig"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_DebugLinkFillConfig"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\250\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_GetCoinTable"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_GetCoinTable"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_CoinTable"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_CoinTable"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumSignMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumSignMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumVerifyMessage"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumVerifyMessage"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EthereumMessageSignature"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EthereumMessageSignature"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EosGetPublicKey"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EosGetPublicKey"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EosPublicKey"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EosPublicKey"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EosSignTx"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EosSignTx"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EosTxActionRequest"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EosTxActionRequest"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EosTxActionAck"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EosTxActionAck"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\220\265\030\001'))
_MESSAGETYPE.values_by_name["MessageType_EosSignedTx"].has_options = True
_MESSAGETYPE.values_by_name["MessageType_EosSignedTx"]._options = _descriptor._ParseOptions(descriptor_pb2.EnumValueOptions(), _b('\230\265\030\001'))
# @@protoc_insertion_point(module_scope)
