3082 lines
		
	
	
		
			115 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
		
		
			
		
	
	
			3082 lines
		
	
	
		
			115 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| 
								 | 
							
								// Code generated by protoc-gen-go. DO NOT EDIT.
							 | 
						||
| 
								 | 
							
								// source: messages.proto
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								package trezor
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								import proto "github.com/golang/protobuf/proto"
							 | 
						||
| 
								 | 
							
								import fmt "fmt"
							 | 
						||
| 
								 | 
							
								import math "math"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// Reference imports to suppress errors if they are not otherwise used.
							 | 
						||
| 
								 | 
							
								var _ = proto.Marshal
							 | 
						||
| 
								 | 
							
								var _ = fmt.Errorf
							 | 
						||
| 
								 | 
							
								var _ = math.Inf
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Mapping between Trezor wire identifier (uint) and a protobuf message
							 | 
						||
| 
								 | 
							
								type MessageType int32
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const (
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Initialize               MessageType = 0
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Ping                     MessageType = 1
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Success                  MessageType = 2
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Failure                  MessageType = 3
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ChangePin                MessageType = 4
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_WipeDevice               MessageType = 5
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_FirmwareErase            MessageType = 6
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_FirmwareUpload           MessageType = 7
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_FirmwareRequest          MessageType = 8
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_GetEntropy               MessageType = 9
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Entropy                  MessageType = 10
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_GetPublicKey             MessageType = 11
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_PublicKey                MessageType = 12
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_LoadDevice               MessageType = 13
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ResetDevice              MessageType = 14
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SignTx                   MessageType = 15
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SimpleSignTx             MessageType = 16
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Features                 MessageType = 17
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_PinMatrixRequest         MessageType = 18
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_PinMatrixAck             MessageType = 19
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Cancel                   MessageType = 20
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_TxRequest                MessageType = 21
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_TxAck                    MessageType = 22
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_CipherKeyValue           MessageType = 23
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ClearSession             MessageType = 24
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ApplySettings            MessageType = 25
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ButtonRequest            MessageType = 26
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ButtonAck                MessageType = 27
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ApplyFlags               MessageType = 28
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_GetAddress               MessageType = 29
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_Address                  MessageType = 30
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SelfTest                 MessageType = 32
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_BackupDevice             MessageType = 34
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EntropyRequest           MessageType = 35
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EntropyAck               MessageType = 36
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SignMessage              MessageType = 38
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_VerifyMessage            MessageType = 39
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_MessageSignature         MessageType = 40
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_PassphraseRequest        MessageType = 41
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_PassphraseAck            MessageType = 42
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EstimateTxSize           MessageType = 43
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_TxSize                   MessageType = 44
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_RecoveryDevice           MessageType = 45
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_WordRequest              MessageType = 46
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_WordAck                  MessageType = 47
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_CipheredKeyValue         MessageType = 48
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EncryptMessage           MessageType = 49
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EncryptedMessage         MessageType = 50
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DecryptMessage           MessageType = 51
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DecryptedMessage         MessageType = 52
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SignIdentity             MessageType = 53
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SignedIdentity           MessageType = 54
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_GetFeatures              MessageType = 55
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumGetAddress       MessageType = 56
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumAddress          MessageType = 57
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumSignTx           MessageType = 58
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumTxRequest        MessageType = 59
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumTxAck            MessageType = 60
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_GetECDHSessionKey        MessageType = 61
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_ECDHSessionKey           MessageType = 62
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_SetU2FCounter            MessageType = 63
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumSignMessage      MessageType = 64
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumVerifyMessage    MessageType = 65
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_EthereumMessageSignature MessageType = 66
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkDecision        MessageType = 100
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkGetState        MessageType = 101
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkState           MessageType = 102
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkStop            MessageType = 103
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkLog             MessageType = 104
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkMemoryRead      MessageType = 110
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkMemory          MessageType = 111
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkMemoryWrite     MessageType = 112
							 | 
						||
| 
								 | 
							
									MessageType_MessageType_DebugLinkFlashErase      MessageType = 113
							 | 
						||
| 
								 | 
							
								)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var MessageType_name = map[int32]string{
							 | 
						||
| 
								 | 
							
									0:   "MessageType_Initialize",
							 | 
						||
| 
								 | 
							
									1:   "MessageType_Ping",
							 | 
						||
| 
								 | 
							
									2:   "MessageType_Success",
							 | 
						||
| 
								 | 
							
									3:   "MessageType_Failure",
							 | 
						||
| 
								 | 
							
									4:   "MessageType_ChangePin",
							 | 
						||
| 
								 | 
							
									5:   "MessageType_WipeDevice",
							 | 
						||
| 
								 | 
							
									6:   "MessageType_FirmwareErase",
							 | 
						||
| 
								 | 
							
									7:   "MessageType_FirmwareUpload",
							 | 
						||
| 
								 | 
							
									8:   "MessageType_FirmwareRequest",
							 | 
						||
| 
								 | 
							
									9:   "MessageType_GetEntropy",
							 | 
						||
| 
								 | 
							
									10:  "MessageType_Entropy",
							 | 
						||
| 
								 | 
							
									11:  "MessageType_GetPublicKey",
							 | 
						||
| 
								 | 
							
									12:  "MessageType_PublicKey",
							 | 
						||
| 
								 | 
							
									13:  "MessageType_LoadDevice",
							 | 
						||
| 
								 | 
							
									14:  "MessageType_ResetDevice",
							 | 
						||
| 
								 | 
							
									15:  "MessageType_SignTx",
							 | 
						||
| 
								 | 
							
									16:  "MessageType_SimpleSignTx",
							 | 
						||
| 
								 | 
							
									17:  "MessageType_Features",
							 | 
						||
| 
								 | 
							
									18:  "MessageType_PinMatrixRequest",
							 | 
						||
| 
								 | 
							
									19:  "MessageType_PinMatrixAck",
							 | 
						||
| 
								 | 
							
									20:  "MessageType_Cancel",
							 | 
						||
| 
								 | 
							
									21:  "MessageType_TxRequest",
							 | 
						||
| 
								 | 
							
									22:  "MessageType_TxAck",
							 | 
						||
| 
								 | 
							
									23:  "MessageType_CipherKeyValue",
							 | 
						||
| 
								 | 
							
									24:  "MessageType_ClearSession",
							 | 
						||
| 
								 | 
							
									25:  "MessageType_ApplySettings",
							 | 
						||
| 
								 | 
							
									26:  "MessageType_ButtonRequest",
							 | 
						||
| 
								 | 
							
									27:  "MessageType_ButtonAck",
							 | 
						||
| 
								 | 
							
									28:  "MessageType_ApplyFlags",
							 | 
						||
| 
								 | 
							
									29:  "MessageType_GetAddress",
							 | 
						||
| 
								 | 
							
									30:  "MessageType_Address",
							 | 
						||
| 
								 | 
							
									32:  "MessageType_SelfTest",
							 | 
						||
| 
								 | 
							
									34:  "MessageType_BackupDevice",
							 | 
						||
| 
								 | 
							
									35:  "MessageType_EntropyRequest",
							 | 
						||
| 
								 | 
							
									36:  "MessageType_EntropyAck",
							 | 
						||
| 
								 | 
							
									38:  "MessageType_SignMessage",
							 | 
						||
| 
								 | 
							
									39:  "MessageType_VerifyMessage",
							 | 
						||
| 
								 | 
							
									40:  "MessageType_MessageSignature",
							 | 
						||
| 
								 | 
							
									41:  "MessageType_PassphraseRequest",
							 | 
						||
| 
								 | 
							
									42:  "MessageType_PassphraseAck",
							 | 
						||
| 
								 | 
							
									43:  "MessageType_EstimateTxSize",
							 | 
						||
| 
								 | 
							
									44:  "MessageType_TxSize",
							 | 
						||
| 
								 | 
							
									45:  "MessageType_RecoveryDevice",
							 | 
						||
| 
								 | 
							
									46:  "MessageType_WordRequest",
							 | 
						||
| 
								 | 
							
									47:  "MessageType_WordAck",
							 | 
						||
| 
								 | 
							
									48:  "MessageType_CipheredKeyValue",
							 | 
						||
| 
								 | 
							
									49:  "MessageType_EncryptMessage",
							 | 
						||
| 
								 | 
							
									50:  "MessageType_EncryptedMessage",
							 | 
						||
| 
								 | 
							
									51:  "MessageType_DecryptMessage",
							 | 
						||
| 
								 | 
							
									52:  "MessageType_DecryptedMessage",
							 | 
						||
| 
								 | 
							
									53:  "MessageType_SignIdentity",
							 | 
						||
| 
								 | 
							
									54:  "MessageType_SignedIdentity",
							 | 
						||
| 
								 | 
							
									55:  "MessageType_GetFeatures",
							 | 
						||
| 
								 | 
							
									56:  "MessageType_EthereumGetAddress",
							 | 
						||
| 
								 | 
							
									57:  "MessageType_EthereumAddress",
							 | 
						||
| 
								 | 
							
									58:  "MessageType_EthereumSignTx",
							 | 
						||
| 
								 | 
							
									59:  "MessageType_EthereumTxRequest",
							 | 
						||
| 
								 | 
							
									60:  "MessageType_EthereumTxAck",
							 | 
						||
| 
								 | 
							
									61:  "MessageType_GetECDHSessionKey",
							 | 
						||
| 
								 | 
							
									62:  "MessageType_ECDHSessionKey",
							 | 
						||
| 
								 | 
							
									63:  "MessageType_SetU2FCounter",
							 | 
						||
| 
								 | 
							
									64:  "MessageType_EthereumSignMessage",
							 | 
						||
| 
								 | 
							
									65:  "MessageType_EthereumVerifyMessage",
							 | 
						||
| 
								 | 
							
									66:  "MessageType_EthereumMessageSignature",
							 | 
						||
| 
								 | 
							
									100: "MessageType_DebugLinkDecision",
							 | 
						||
| 
								 | 
							
									101: "MessageType_DebugLinkGetState",
							 | 
						||
| 
								 | 
							
									102: "MessageType_DebugLinkState",
							 | 
						||
| 
								 | 
							
									103: "MessageType_DebugLinkStop",
							 | 
						||
| 
								 | 
							
									104: "MessageType_DebugLinkLog",
							 | 
						||
| 
								 | 
							
									110: "MessageType_DebugLinkMemoryRead",
							 | 
						||
| 
								 | 
							
									111: "MessageType_DebugLinkMemory",
							 | 
						||
| 
								 | 
							
									112: "MessageType_DebugLinkMemoryWrite",
							 | 
						||
| 
								 | 
							
									113: "MessageType_DebugLinkFlashErase",
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								var MessageType_value = map[string]int32{
							 | 
						||
| 
								 | 
							
									"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_FirmwareRequest":          8,
							 | 
						||
| 
								 | 
							
									"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_ApplyFlags":               28,
							 | 
						||
| 
								 | 
							
									"MessageType_GetAddress":               29,
							 | 
						||
| 
								 | 
							
									"MessageType_Address":                  30,
							 | 
						||
| 
								 | 
							
									"MessageType_SelfTest":                 32,
							 | 
						||
| 
								 | 
							
									"MessageType_BackupDevice":             34,
							 | 
						||
| 
								 | 
							
									"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_GetECDHSessionKey":        61,
							 | 
						||
| 
								 | 
							
									"MessageType_ECDHSessionKey":           62,
							 | 
						||
| 
								 | 
							
									"MessageType_SetU2FCounter":            63,
							 | 
						||
| 
								 | 
							
									"MessageType_EthereumSignMessage":      64,
							 | 
						||
| 
								 | 
							
									"MessageType_EthereumVerifyMessage":    65,
							 | 
						||
| 
								 | 
							
									"MessageType_EthereumMessageSignature": 66,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkDecision":        100,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkGetState":        101,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkState":           102,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkStop":            103,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkLog":             104,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkMemoryRead":      110,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkMemory":          111,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkMemoryWrite":     112,
							 | 
						||
| 
								 | 
							
									"MessageType_DebugLinkFlashErase":      113,
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (x MessageType) Enum() *MessageType {
							 | 
						||
| 
								 | 
							
									p := new(MessageType)
							 | 
						||
| 
								 | 
							
									*p = x
							 | 
						||
| 
								 | 
							
									return p
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								func (x MessageType) String() string {
							 | 
						||
| 
								 | 
							
									return proto.EnumName(MessageType_name, int32(x))
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								func (x *MessageType) UnmarshalJSON(data []byte) error {
							 | 
						||
| 
								 | 
							
									value, err := proto.UnmarshalJSONEnum(MessageType_value, data, "MessageType")
							 | 
						||
| 
								 | 
							
									if err != nil {
							 | 
						||
| 
								 | 
							
										return err
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									*x = MessageType(value)
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								func (MessageType) EnumDescriptor() ([]byte, []int) { return fileDescriptor1, []int{0} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Reset device to default state and ask for device details
							 | 
						||
| 
								 | 
							
								// @next Features
							 | 
						||
| 
								 | 
							
								type Initialize struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Initialize) Reset()                    { *m = Initialize{} }
							 | 
						||
| 
								 | 
							
								func (m *Initialize) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Initialize) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Initialize) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{0} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask for device details (no device reset)
							 | 
						||
| 
								 | 
							
								// @next Features
							 | 
						||
| 
								 | 
							
								type GetFeatures struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetFeatures) Reset()                    { *m = GetFeatures{} }
							 | 
						||
| 
								 | 
							
								func (m *GetFeatures) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*GetFeatures) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*GetFeatures) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{1} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Reports various information about the device
							 | 
						||
| 
								 | 
							
								// @prev Initialize
							 | 
						||
| 
								 | 
							
								// @prev GetFeatures
							 | 
						||
| 
								 | 
							
								type Features struct {
							 | 
						||
| 
								 | 
							
									Vendor               *string     `protobuf:"bytes,1,opt,name=vendor" json:"vendor,omitempty"`
							 | 
						||
| 
								 | 
							
									MajorVersion         *uint32     `protobuf:"varint,2,opt,name=major_version,json=majorVersion" json:"major_version,omitempty"`
							 | 
						||
| 
								 | 
							
									MinorVersion         *uint32     `protobuf:"varint,3,opt,name=minor_version,json=minorVersion" json:"minor_version,omitempty"`
							 | 
						||
| 
								 | 
							
									PatchVersion         *uint32     `protobuf:"varint,4,opt,name=patch_version,json=patchVersion" json:"patch_version,omitempty"`
							 | 
						||
| 
								 | 
							
									BootloaderMode       *bool       `protobuf:"varint,5,opt,name=bootloader_mode,json=bootloaderMode" json:"bootloader_mode,omitempty"`
							 | 
						||
| 
								 | 
							
									DeviceId             *string     `protobuf:"bytes,6,opt,name=device_id,json=deviceId" json:"device_id,omitempty"`
							 | 
						||
| 
								 | 
							
									PinProtection        *bool       `protobuf:"varint,7,opt,name=pin_protection,json=pinProtection" json:"pin_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseProtection *bool       `protobuf:"varint,8,opt,name=passphrase_protection,json=passphraseProtection" json:"passphrase_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									Language             *string     `protobuf:"bytes,9,opt,name=language" json:"language,omitempty"`
							 | 
						||
| 
								 | 
							
									Label                *string     `protobuf:"bytes,10,opt,name=label" json:"label,omitempty"`
							 | 
						||
| 
								 | 
							
									Coins                []*CoinType `protobuf:"bytes,11,rep,name=coins" json:"coins,omitempty"`
							 | 
						||
| 
								 | 
							
									Initialized          *bool       `protobuf:"varint,12,opt,name=initialized" json:"initialized,omitempty"`
							 | 
						||
| 
								 | 
							
									Revision             []byte      `protobuf:"bytes,13,opt,name=revision" json:"revision,omitempty"`
							 | 
						||
| 
								 | 
							
									BootloaderHash       []byte      `protobuf:"bytes,14,opt,name=bootloader_hash,json=bootloaderHash" json:"bootloader_hash,omitempty"`
							 | 
						||
| 
								 | 
							
									Imported             *bool       `protobuf:"varint,15,opt,name=imported" json:"imported,omitempty"`
							 | 
						||
| 
								 | 
							
									PinCached            *bool       `protobuf:"varint,16,opt,name=pin_cached,json=pinCached" json:"pin_cached,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseCached     *bool       `protobuf:"varint,17,opt,name=passphrase_cached,json=passphraseCached" json:"passphrase_cached,omitempty"`
							 | 
						||
| 
								 | 
							
									FirmwarePresent      *bool       `protobuf:"varint,18,opt,name=firmware_present,json=firmwarePresent" json:"firmware_present,omitempty"`
							 | 
						||
| 
								 | 
							
									NeedsBackup          *bool       `protobuf:"varint,19,opt,name=needs_backup,json=needsBackup" json:"needs_backup,omitempty"`
							 | 
						||
| 
								 | 
							
									Flags                *uint32     `protobuf:"varint,20,opt,name=flags" json:"flags,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized     []byte      `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) Reset()                    { *m = Features{} }
							 | 
						||
| 
								 | 
							
								func (m *Features) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Features) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Features) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{2} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetVendor() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Vendor != nil {
							 | 
						||
| 
								 | 
							
										return *m.Vendor
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetMajorVersion() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.MajorVersion != nil {
							 | 
						||
| 
								 | 
							
										return *m.MajorVersion
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetMinorVersion() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.MinorVersion != nil {
							 | 
						||
| 
								 | 
							
										return *m.MinorVersion
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetPatchVersion() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PatchVersion != nil {
							 | 
						||
| 
								 | 
							
										return *m.PatchVersion
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetBootloaderMode() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.BootloaderMode != nil {
							 | 
						||
| 
								 | 
							
										return *m.BootloaderMode
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetDeviceId() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.DeviceId != nil {
							 | 
						||
| 
								 | 
							
										return *m.DeviceId
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetPinProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PinProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PinProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetPassphraseProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetLanguage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Language != nil {
							 | 
						||
| 
								 | 
							
										return *m.Language
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetLabel() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Label != nil {
							 | 
						||
| 
								 | 
							
										return *m.Label
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetCoins() []*CoinType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Coins
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetInitialized() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Initialized != nil {
							 | 
						||
| 
								 | 
							
										return *m.Initialized
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetRevision() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Revision
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetBootloaderHash() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.BootloaderHash
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetImported() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Imported != nil {
							 | 
						||
| 
								 | 
							
										return *m.Imported
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetPinCached() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PinCached != nil {
							 | 
						||
| 
								 | 
							
										return *m.PinCached
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetPassphraseCached() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseCached != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseCached
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetFirmwarePresent() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.FirmwarePresent != nil {
							 | 
						||
| 
								 | 
							
										return *m.FirmwarePresent
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetNeedsBackup() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.NeedsBackup != nil {
							 | 
						||
| 
								 | 
							
										return *m.NeedsBackup
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Features) GetFlags() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Flags != nil {
							 | 
						||
| 
								 | 
							
										return *m.Flags
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: clear session (removes cached PIN, passphrase, etc).
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								type ClearSession struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ClearSession) Reset()                    { *m = ClearSession{} }
							 | 
						||
| 
								 | 
							
								func (m *ClearSession) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ClearSession) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ClearSession) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{3} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: change language and/or label of the device
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								// @next PinMatrixRequest
							 | 
						||
| 
								 | 
							
								type ApplySettings struct {
							 | 
						||
| 
								 | 
							
									Language         *string `protobuf:"bytes,1,opt,name=language" json:"language,omitempty"`
							 | 
						||
| 
								 | 
							
									Label            *string `protobuf:"bytes,2,opt,name=label" json:"label,omitempty"`
							 | 
						||
| 
								 | 
							
									UsePassphrase    *bool   `protobuf:"varint,3,opt,name=use_passphrase,json=usePassphrase" json:"use_passphrase,omitempty"`
							 | 
						||
| 
								 | 
							
									Homescreen       []byte  `protobuf:"bytes,4,opt,name=homescreen" json:"homescreen,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplySettings) Reset()                    { *m = ApplySettings{} }
							 | 
						||
| 
								 | 
							
								func (m *ApplySettings) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ApplySettings) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ApplySettings) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{4} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplySettings) GetLanguage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Language != nil {
							 | 
						||
| 
								 | 
							
										return *m.Language
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplySettings) GetLabel() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Label != nil {
							 | 
						||
| 
								 | 
							
										return *m.Label
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplySettings) GetUsePassphrase() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.UsePassphrase != nil {
							 | 
						||
| 
								 | 
							
										return *m.UsePassphrase
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplySettings) GetHomescreen() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Homescreen
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: set flags of the device
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type ApplyFlags struct {
							 | 
						||
| 
								 | 
							
									Flags            *uint32 `protobuf:"varint,1,opt,name=flags" json:"flags,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplyFlags) Reset()                    { *m = ApplyFlags{} }
							 | 
						||
| 
								 | 
							
								func (m *ApplyFlags) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ApplyFlags) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ApplyFlags) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{5} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ApplyFlags) GetFlags() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Flags != nil {
							 | 
						||
| 
								 | 
							
										return *m.Flags
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Starts workflow for setting/changing/removing the PIN
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								// @next PinMatrixRequest
							 | 
						||
| 
								 | 
							
								type ChangePin struct {
							 | 
						||
| 
								 | 
							
									Remove           *bool  `protobuf:"varint,1,opt,name=remove" json:"remove,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ChangePin) Reset()                    { *m = ChangePin{} }
							 | 
						||
| 
								 | 
							
								func (m *ChangePin) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ChangePin) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ChangePin) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{6} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ChangePin) GetRemove() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Remove != nil {
							 | 
						||
| 
								 | 
							
										return *m.Remove
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Test if the device is alive, device sends back the message in Success response
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								type Ping struct {
							 | 
						||
| 
								 | 
							
									Message              *string `protobuf:"bytes,1,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									ButtonProtection     *bool   `protobuf:"varint,2,opt,name=button_protection,json=buttonProtection" json:"button_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									PinProtection        *bool   `protobuf:"varint,3,opt,name=pin_protection,json=pinProtection" json:"pin_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseProtection *bool   `protobuf:"varint,4,opt,name=passphrase_protection,json=passphraseProtection" json:"passphrase_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized     []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Ping) Reset()                    { *m = Ping{} }
							 | 
						||
| 
								 | 
							
								func (m *Ping) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Ping) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Ping) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{7} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Ping) GetMessage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Message != nil {
							 | 
						||
| 
								 | 
							
										return *m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Ping) GetButtonProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ButtonProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.ButtonProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Ping) GetPinProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PinProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PinProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Ping) GetPassphraseProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Success of the previous request
							 | 
						||
| 
								 | 
							
								type Success struct {
							 | 
						||
| 
								 | 
							
									Message          *string `protobuf:"bytes,1,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Success) Reset()                    { *m = Success{} }
							 | 
						||
| 
								 | 
							
								func (m *Success) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Success) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Success) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{8} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Success) GetMessage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Message != nil {
							 | 
						||
| 
								 | 
							
										return *m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Failure of the previous request
							 | 
						||
| 
								 | 
							
								type Failure struct {
							 | 
						||
| 
								 | 
							
									Code             *FailureType `protobuf:"varint,1,opt,name=code,enum=FailureType" json:"code,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          *string      `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte       `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Failure) Reset()                    { *m = Failure{} }
							 | 
						||
| 
								 | 
							
								func (m *Failure) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Failure) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Failure) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{9} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Failure) GetCode() FailureType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Code != nil {
							 | 
						||
| 
								 | 
							
										return *m.Code
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return FailureType_Failure_UnexpectedMessage
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Failure) GetMessage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Message != nil {
							 | 
						||
| 
								 | 
							
										return *m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device is waiting for HW button press.
							 | 
						||
| 
								 | 
							
								// @next ButtonAck
							 | 
						||
| 
								 | 
							
								// @next Cancel
							 | 
						||
| 
								 | 
							
								type ButtonRequest struct {
							 | 
						||
| 
								 | 
							
									Code             *ButtonRequestType `protobuf:"varint,1,opt,name=code,enum=ButtonRequestType" json:"code,omitempty"`
							 | 
						||
| 
								 | 
							
									Data             *string            `protobuf:"bytes,2,opt,name=data" json:"data,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte             `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ButtonRequest) Reset()                    { *m = ButtonRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *ButtonRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ButtonRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ButtonRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{10} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ButtonRequest) GetCode() ButtonRequestType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Code != nil {
							 | 
						||
| 
								 | 
							
										return *m.Code
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ButtonRequestType_ButtonRequest_Other
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ButtonRequest) GetData() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Data != nil {
							 | 
						||
| 
								 | 
							
										return *m.Data
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Computer agrees to wait for HW button press
							 | 
						||
| 
								 | 
							
								// @prev ButtonRequest
							 | 
						||
| 
								 | 
							
								type ButtonAck struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ButtonAck) Reset()                    { *m = ButtonAck{} }
							 | 
						||
| 
								 | 
							
								func (m *ButtonAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ButtonAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ButtonAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{11} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device is asking computer to show PIN matrix and awaits PIN encoded using this matrix scheme
							 | 
						||
| 
								 | 
							
								// @next PinMatrixAck
							 | 
						||
| 
								 | 
							
								// @next Cancel
							 | 
						||
| 
								 | 
							
								type PinMatrixRequest struct {
							 | 
						||
| 
								 | 
							
									Type             *PinMatrixRequestType `protobuf:"varint,1,opt,name=type,enum=PinMatrixRequestType" json:"type,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte                `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PinMatrixRequest) Reset()                    { *m = PinMatrixRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *PinMatrixRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*PinMatrixRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*PinMatrixRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{12} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PinMatrixRequest) GetType() PinMatrixRequestType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Type != nil {
							 | 
						||
| 
								 | 
							
										return *m.Type
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return PinMatrixRequestType_PinMatrixRequestType_Current
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Computer responds with encoded PIN
							 | 
						||
| 
								 | 
							
								// @prev PinMatrixRequest
							 | 
						||
| 
								 | 
							
								type PinMatrixAck struct {
							 | 
						||
| 
								 | 
							
									Pin              *string `protobuf:"bytes,1,req,name=pin" json:"pin,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PinMatrixAck) Reset()                    { *m = PinMatrixAck{} }
							 | 
						||
| 
								 | 
							
								func (m *PinMatrixAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*PinMatrixAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*PinMatrixAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{13} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PinMatrixAck) GetPin() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Pin != nil {
							 | 
						||
| 
								 | 
							
										return *m.Pin
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Abort last operation that required user interaction
							 | 
						||
| 
								 | 
							
								// @prev ButtonRequest
							 | 
						||
| 
								 | 
							
								// @prev PinMatrixRequest
							 | 
						||
| 
								 | 
							
								// @prev PassphraseRequest
							 | 
						||
| 
								 | 
							
								type Cancel struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Cancel) Reset()                    { *m = Cancel{} }
							 | 
						||
| 
								 | 
							
								func (m *Cancel) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Cancel) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Cancel) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{14} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device awaits encryption passphrase
							 | 
						||
| 
								 | 
							
								// @next PassphraseAck
							 | 
						||
| 
								 | 
							
								// @next Cancel
							 | 
						||
| 
								 | 
							
								type PassphraseRequest struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PassphraseRequest) Reset()                    { *m = PassphraseRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *PassphraseRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*PassphraseRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*PassphraseRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{15} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Send passphrase back
							 | 
						||
| 
								 | 
							
								// @prev PassphraseRequest
							 | 
						||
| 
								 | 
							
								type PassphraseAck struct {
							 | 
						||
| 
								 | 
							
									Passphrase       *string `protobuf:"bytes,1,req,name=passphrase" json:"passphrase,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PassphraseAck) Reset()                    { *m = PassphraseAck{} }
							 | 
						||
| 
								 | 
							
								func (m *PassphraseAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*PassphraseAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*PassphraseAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{16} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PassphraseAck) GetPassphrase() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Passphrase != nil {
							 | 
						||
| 
								 | 
							
										return *m.Passphrase
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Request a sample of random data generated by hardware RNG. May be used for testing.
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								// @next Entropy
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type GetEntropy struct {
							 | 
						||
| 
								 | 
							
									Size             *uint32 `protobuf:"varint,1,req,name=size" json:"size,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetEntropy) Reset()                    { *m = GetEntropy{} }
							 | 
						||
| 
								 | 
							
								func (m *GetEntropy) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*GetEntropy) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*GetEntropy) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{17} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetEntropy) GetSize() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Size != nil {
							 | 
						||
| 
								 | 
							
										return *m.Size
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Reply with random data generated by internal RNG
							 | 
						||
| 
								 | 
							
								// @prev GetEntropy
							 | 
						||
| 
								 | 
							
								type Entropy struct {
							 | 
						||
| 
								 | 
							
									Entropy          []byte `protobuf:"bytes,1,req,name=entropy" json:"entropy,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Entropy) Reset()                    { *m = Entropy{} }
							 | 
						||
| 
								 | 
							
								func (m *Entropy) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Entropy) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Entropy) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{18} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Entropy) GetEntropy() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Entropy
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device for public key corresponding to address_n path
							 | 
						||
| 
								 | 
							
								// @next PassphraseRequest
							 | 
						||
| 
								 | 
							
								// @next PublicKey
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type GetPublicKey struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									EcdsaCurveName   *string  `protobuf:"bytes,2,opt,name=ecdsa_curve_name,json=ecdsaCurveName" json:"ecdsa_curve_name,omitempty"`
							 | 
						||
| 
								 | 
							
									ShowDisplay      *bool    `protobuf:"varint,3,opt,name=show_display,json=showDisplay" json:"show_display,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string  `protobuf:"bytes,4,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetPublicKey) Reset()                    { *m = GetPublicKey{} }
							 | 
						||
| 
								 | 
							
								func (m *GetPublicKey) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*GetPublicKey) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*GetPublicKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{19} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_GetPublicKey_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetPublicKey) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetPublicKey) GetEcdsaCurveName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.EcdsaCurveName != nil {
							 | 
						||
| 
								 | 
							
										return *m.EcdsaCurveName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetPublicKey) GetShowDisplay() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ShowDisplay != nil {
							 | 
						||
| 
								 | 
							
										return *m.ShowDisplay
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetPublicKey) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_GetPublicKey_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Contains public key derived from device private seed
							 | 
						||
| 
								 | 
							
								// @prev GetPublicKey
							 | 
						||
| 
								 | 
							
								type PublicKey struct {
							 | 
						||
| 
								 | 
							
									Node             *HDNodeType `protobuf:"bytes,1,req,name=node" json:"node,omitempty"`
							 | 
						||
| 
								 | 
							
									Xpub             *string     `protobuf:"bytes,2,opt,name=xpub" json:"xpub,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte      `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PublicKey) Reset()                    { *m = PublicKey{} }
							 | 
						||
| 
								 | 
							
								func (m *PublicKey) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*PublicKey) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*PublicKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{20} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PublicKey) GetNode() *HDNodeType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Node
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *PublicKey) GetXpub() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Xpub != nil {
							 | 
						||
| 
								 | 
							
										return *m.Xpub
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device for address corresponding to address_n path
							 | 
						||
| 
								 | 
							
								// @next PassphraseRequest
							 | 
						||
| 
								 | 
							
								// @next Address
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type GetAddress struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32                  `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string                   `protobuf:"bytes,2,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									ShowDisplay      *bool                     `protobuf:"varint,3,opt,name=show_display,json=showDisplay" json:"show_display,omitempty"`
							 | 
						||
| 
								 | 
							
									Multisig         *MultisigRedeemScriptType `protobuf:"bytes,4,opt,name=multisig" json:"multisig,omitempty"`
							 | 
						||
| 
								 | 
							
									ScriptType       *InputScriptType          `protobuf:"varint,5,opt,name=script_type,json=scriptType,enum=InputScriptType,def=0" json:"script_type,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte                    `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) Reset()                    { *m = GetAddress{} }
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*GetAddress) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*GetAddress) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{21} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_GetAddress_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								const Default_GetAddress_ScriptType InputScriptType = InputScriptType_SPENDADDRESS
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_GetAddress_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) GetShowDisplay() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ShowDisplay != nil {
							 | 
						||
| 
								 | 
							
										return *m.ShowDisplay
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) GetMultisig() *MultisigRedeemScriptType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Multisig
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetAddress) GetScriptType() InputScriptType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ScriptType != nil {
							 | 
						||
| 
								 | 
							
										return *m.ScriptType
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_GetAddress_ScriptType
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device for Ethereum address corresponding to address_n path
							 | 
						||
| 
								 | 
							
								// @next PassphraseRequest
							 | 
						||
| 
								 | 
							
								// @next EthereumAddress
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type EthereumGetAddress struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									ShowDisplay      *bool    `protobuf:"varint,2,opt,name=show_display,json=showDisplay" json:"show_display,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumGetAddress) Reset()                    { *m = EthereumGetAddress{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumGetAddress) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumGetAddress) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumGetAddress) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{22} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumGetAddress) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumGetAddress) GetShowDisplay() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ShowDisplay != nil {
							 | 
						||
| 
								 | 
							
										return *m.ShowDisplay
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Contains address derived from device private seed
							 | 
						||
| 
								 | 
							
								// @prev GetAddress
							 | 
						||
| 
								 | 
							
								type Address struct {
							 | 
						||
| 
								 | 
							
									Address          *string `protobuf:"bytes,1,req,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Address) Reset()                    { *m = Address{} }
							 | 
						||
| 
								 | 
							
								func (m *Address) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*Address) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*Address) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{23} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *Address) GetAddress() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Contains an Ethereum address derived from device private seed
							 | 
						||
| 
								 | 
							
								// @prev EthereumGetAddress
							 | 
						||
| 
								 | 
							
								type EthereumAddress struct {
							 | 
						||
| 
								 | 
							
									Address          []byte `protobuf:"bytes,1,req,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumAddress) Reset()                    { *m = EthereumAddress{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumAddress) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumAddress) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumAddress) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{24} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumAddress) GetAddress() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Request device to wipe all sensitive data and settings
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								type WipeDevice struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *WipeDevice) Reset()                    { *m = WipeDevice{} }
							 | 
						||
| 
								 | 
							
								func (m *WipeDevice) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*WipeDevice) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*WipeDevice) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{25} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Load seed and related internal settings from the computer
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type LoadDevice struct {
							 | 
						||
| 
								 | 
							
									Mnemonic             *string     `protobuf:"bytes,1,opt,name=mnemonic" json:"mnemonic,omitempty"`
							 | 
						||
| 
								 | 
							
									Node                 *HDNodeType `protobuf:"bytes,2,opt,name=node" json:"node,omitempty"`
							 | 
						||
| 
								 | 
							
									Pin                  *string     `protobuf:"bytes,3,opt,name=pin" json:"pin,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseProtection *bool       `protobuf:"varint,4,opt,name=passphrase_protection,json=passphraseProtection" json:"passphrase_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									Language             *string     `protobuf:"bytes,5,opt,name=language,def=english" json:"language,omitempty"`
							 | 
						||
| 
								 | 
							
									Label                *string     `protobuf:"bytes,6,opt,name=label" json:"label,omitempty"`
							 | 
						||
| 
								 | 
							
									SkipChecksum         *bool       `protobuf:"varint,7,opt,name=skip_checksum,json=skipChecksum" json:"skip_checksum,omitempty"`
							 | 
						||
| 
								 | 
							
									U2FCounter           *uint32     `protobuf:"varint,8,opt,name=u2f_counter,json=u2fCounter" json:"u2f_counter,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized     []byte      `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) Reset()                    { *m = LoadDevice{} }
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*LoadDevice) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*LoadDevice) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{26} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_LoadDevice_Language string = "english"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetMnemonic() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Mnemonic != nil {
							 | 
						||
| 
								 | 
							
										return *m.Mnemonic
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetNode() *HDNodeType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Node
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetPin() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Pin != nil {
							 | 
						||
| 
								 | 
							
										return *m.Pin
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetPassphraseProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetLanguage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Language != nil {
							 | 
						||
| 
								 | 
							
										return *m.Language
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_LoadDevice_Language
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetLabel() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Label != nil {
							 | 
						||
| 
								 | 
							
										return *m.Label
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetSkipChecksum() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.SkipChecksum != nil {
							 | 
						||
| 
								 | 
							
										return *m.SkipChecksum
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *LoadDevice) GetU2FCounter() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.U2FCounter != nil {
							 | 
						||
| 
								 | 
							
										return *m.U2FCounter
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to do initialization involving user interaction
							 | 
						||
| 
								 | 
							
								// @next EntropyRequest
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type ResetDevice struct {
							 | 
						||
| 
								 | 
							
									DisplayRandom        *bool   `protobuf:"varint,1,opt,name=display_random,json=displayRandom" json:"display_random,omitempty"`
							 | 
						||
| 
								 | 
							
									Strength             *uint32 `protobuf:"varint,2,opt,name=strength,def=256" json:"strength,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseProtection *bool   `protobuf:"varint,3,opt,name=passphrase_protection,json=passphraseProtection" json:"passphrase_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									PinProtection        *bool   `protobuf:"varint,4,opt,name=pin_protection,json=pinProtection" json:"pin_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									Language             *string `protobuf:"bytes,5,opt,name=language,def=english" json:"language,omitempty"`
							 | 
						||
| 
								 | 
							
									Label                *string `protobuf:"bytes,6,opt,name=label" json:"label,omitempty"`
							 | 
						||
| 
								 | 
							
									U2FCounter           *uint32 `protobuf:"varint,7,opt,name=u2f_counter,json=u2fCounter" json:"u2f_counter,omitempty"`
							 | 
						||
| 
								 | 
							
									SkipBackup           *bool   `protobuf:"varint,8,opt,name=skip_backup,json=skipBackup" json:"skip_backup,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized     []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) Reset()                    { *m = ResetDevice{} }
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ResetDevice) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ResetDevice) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{27} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_ResetDevice_Strength uint32 = 256
							 | 
						||
| 
								 | 
							
								const Default_ResetDevice_Language string = "english"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetDisplayRandom() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.DisplayRandom != nil {
							 | 
						||
| 
								 | 
							
										return *m.DisplayRandom
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetStrength() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Strength != nil {
							 | 
						||
| 
								 | 
							
										return *m.Strength
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_ResetDevice_Strength
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetPassphraseProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetPinProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PinProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PinProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetLanguage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Language != nil {
							 | 
						||
| 
								 | 
							
										return *m.Language
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_ResetDevice_Language
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetLabel() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Label != nil {
							 | 
						||
| 
								 | 
							
										return *m.Label
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetU2FCounter() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.U2FCounter != nil {
							 | 
						||
| 
								 | 
							
										return *m.U2FCounter
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ResetDevice) GetSkipBackup() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.SkipBackup != nil {
							 | 
						||
| 
								 | 
							
										return *m.SkipBackup
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Perform backup of the device seed if not backed up using ResetDevice
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								type BackupDevice struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *BackupDevice) Reset()                    { *m = BackupDevice{} }
							 | 
						||
| 
								 | 
							
								func (m *BackupDevice) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*BackupDevice) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*BackupDevice) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{28} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Ask for additional entropy from host computer
							 | 
						||
| 
								 | 
							
								// @prev ResetDevice
							 | 
						||
| 
								 | 
							
								// @next EntropyAck
							 | 
						||
| 
								 | 
							
								type EntropyRequest struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EntropyRequest) Reset()                    { *m = EntropyRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *EntropyRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EntropyRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EntropyRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{29} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Provide additional entropy for seed generation function
							 | 
						||
| 
								 | 
							
								// @prev EntropyRequest
							 | 
						||
| 
								 | 
							
								// @next ButtonRequest
							 | 
						||
| 
								 | 
							
								type EntropyAck struct {
							 | 
						||
| 
								 | 
							
									Entropy          []byte `protobuf:"bytes,1,opt,name=entropy" json:"entropy,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EntropyAck) Reset()                    { *m = EntropyAck{} }
							 | 
						||
| 
								 | 
							
								func (m *EntropyAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EntropyAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EntropyAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{30} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EntropyAck) GetEntropy() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Entropy
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Start recovery workflow asking user for specific words of mnemonic
							 | 
						||
| 
								 | 
							
								// Used to recovery device safely even on untrusted computer.
							 | 
						||
| 
								 | 
							
								// @next WordRequest
							 | 
						||
| 
								 | 
							
								type RecoveryDevice struct {
							 | 
						||
| 
								 | 
							
									WordCount            *uint32 `protobuf:"varint,1,opt,name=word_count,json=wordCount" json:"word_count,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseProtection *bool   `protobuf:"varint,2,opt,name=passphrase_protection,json=passphraseProtection" json:"passphrase_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									PinProtection        *bool   `protobuf:"varint,3,opt,name=pin_protection,json=pinProtection" json:"pin_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									Language             *string `protobuf:"bytes,4,opt,name=language,def=english" json:"language,omitempty"`
							 | 
						||
| 
								 | 
							
									Label                *string `protobuf:"bytes,5,opt,name=label" json:"label,omitempty"`
							 | 
						||
| 
								 | 
							
									EnforceWordlist      *bool   `protobuf:"varint,6,opt,name=enforce_wordlist,json=enforceWordlist" json:"enforce_wordlist,omitempty"`
							 | 
						||
| 
								 | 
							
									// 7 reserved for unused recovery method
							 | 
						||
| 
								 | 
							
									Type             *uint32 `protobuf:"varint,8,opt,name=type" json:"type,omitempty"`
							 | 
						||
| 
								 | 
							
									U2FCounter       *uint32 `protobuf:"varint,9,opt,name=u2f_counter,json=u2fCounter" json:"u2f_counter,omitempty"`
							 | 
						||
| 
								 | 
							
									DryRun           *bool   `protobuf:"varint,10,opt,name=dry_run,json=dryRun" json:"dry_run,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) Reset()                    { *m = RecoveryDevice{} }
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*RecoveryDevice) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*RecoveryDevice) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{31} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_RecoveryDevice_Language string = "english"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetWordCount() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.WordCount != nil {
							 | 
						||
| 
								 | 
							
										return *m.WordCount
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetPassphraseProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetPinProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PinProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PinProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetLanguage() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Language != nil {
							 | 
						||
| 
								 | 
							
										return *m.Language
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_RecoveryDevice_Language
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetLabel() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Label != nil {
							 | 
						||
| 
								 | 
							
										return *m.Label
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetEnforceWordlist() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.EnforceWordlist != nil {
							 | 
						||
| 
								 | 
							
										return *m.EnforceWordlist
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetType() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Type != nil {
							 | 
						||
| 
								 | 
							
										return *m.Type
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetU2FCounter() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.U2FCounter != nil {
							 | 
						||
| 
								 | 
							
										return *m.U2FCounter
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *RecoveryDevice) GetDryRun() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.DryRun != nil {
							 | 
						||
| 
								 | 
							
										return *m.DryRun
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device is waiting for user to enter word of the mnemonic
							 | 
						||
| 
								 | 
							
								// Its position is shown only on device's internal display.
							 | 
						||
| 
								 | 
							
								// @prev RecoveryDevice
							 | 
						||
| 
								 | 
							
								// @prev WordAck
							 | 
						||
| 
								 | 
							
								type WordRequest struct {
							 | 
						||
| 
								 | 
							
									Type             *WordRequestType `protobuf:"varint,1,opt,name=type,enum=WordRequestType" json:"type,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte           `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *WordRequest) Reset()                    { *m = WordRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *WordRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*WordRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*WordRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{32} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *WordRequest) GetType() WordRequestType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Type != nil {
							 | 
						||
| 
								 | 
							
										return *m.Type
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return WordRequestType_WordRequestType_Plain
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Computer replies with word from the mnemonic
							 | 
						||
| 
								 | 
							
								// @prev WordRequest
							 | 
						||
| 
								 | 
							
								// @next WordRequest
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type WordAck struct {
							 | 
						||
| 
								 | 
							
									Word             *string `protobuf:"bytes,1,req,name=word" json:"word,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *WordAck) Reset()                    { *m = WordAck{} }
							 | 
						||
| 
								 | 
							
								func (m *WordAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*WordAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*WordAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{33} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *WordAck) GetWord() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Word != nil {
							 | 
						||
| 
								 | 
							
										return *m.Word
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to sign message
							 | 
						||
| 
								 | 
							
								// @next MessageSignature
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type SignMessage struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32         `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte           `protobuf:"bytes,2,req,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string          `protobuf:"bytes,3,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									ScriptType       *InputScriptType `protobuf:"varint,4,opt,name=script_type,json=scriptType,enum=InputScriptType,def=0" json:"script_type,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte           `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignMessage) Reset()                    { *m = SignMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *SignMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SignMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SignMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{34} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_SignMessage_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								const Default_SignMessage_ScriptType InputScriptType = InputScriptType_SPENDADDRESS
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignMessage) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignMessage) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SignMessage_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignMessage) GetScriptType() InputScriptType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ScriptType != nil {
							 | 
						||
| 
								 | 
							
										return *m.ScriptType
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SignMessage_ScriptType
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to verify message
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type VerifyMessage struct {
							 | 
						||
| 
								 | 
							
									Address          *string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									Signature        []byte  `protobuf:"bytes,2,opt,name=signature" json:"signature,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte  `protobuf:"bytes,3,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string `protobuf:"bytes,4,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *VerifyMessage) Reset()                    { *m = VerifyMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *VerifyMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*VerifyMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*VerifyMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{35} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_VerifyMessage_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *VerifyMessage) GetAddress() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *VerifyMessage) GetSignature() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Signature
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *VerifyMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *VerifyMessage) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_VerifyMessage_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Signed message
							 | 
						||
| 
								 | 
							
								// @prev SignMessage
							 | 
						||
| 
								 | 
							
								type MessageSignature struct {
							 | 
						||
| 
								 | 
							
									Address          *string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									Signature        []byte  `protobuf:"bytes,2,opt,name=signature" json:"signature,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *MessageSignature) Reset()                    { *m = MessageSignature{} }
							 | 
						||
| 
								 | 
							
								func (m *MessageSignature) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*MessageSignature) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*MessageSignature) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{36} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *MessageSignature) GetAddress() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *MessageSignature) GetSignature() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Signature
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to encrypt message
							 | 
						||
| 
								 | 
							
								// @next EncryptedMessage
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type EncryptMessage struct {
							 | 
						||
| 
								 | 
							
									Pubkey           []byte   `protobuf:"bytes,1,opt,name=pubkey" json:"pubkey,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte   `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									DisplayOnly      *bool    `protobuf:"varint,3,opt,name=display_only,json=displayOnly" json:"display_only,omitempty"`
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,4,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string  `protobuf:"bytes,5,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) Reset()                    { *m = EncryptMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EncryptMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EncryptMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{37} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_EncryptMessage_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) GetPubkey() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Pubkey
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) GetDisplayOnly() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.DisplayOnly != nil {
							 | 
						||
| 
								 | 
							
										return *m.DisplayOnly
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptMessage) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_EncryptMessage_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Encrypted message
							 | 
						||
| 
								 | 
							
								// @prev EncryptMessage
							 | 
						||
| 
								 | 
							
								type EncryptedMessage struct {
							 | 
						||
| 
								 | 
							
									Nonce            []byte `protobuf:"bytes,1,opt,name=nonce" json:"nonce,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte `protobuf:"bytes,2,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									Hmac             []byte `protobuf:"bytes,3,opt,name=hmac" json:"hmac,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptedMessage) Reset()                    { *m = EncryptedMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *EncryptedMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EncryptedMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EncryptedMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{38} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptedMessage) GetNonce() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Nonce
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptedMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EncryptedMessage) GetHmac() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Hmac
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to decrypt message
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type DecryptMessage struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									Nonce            []byte   `protobuf:"bytes,2,opt,name=nonce" json:"nonce,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte   `protobuf:"bytes,3,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									Hmac             []byte   `protobuf:"bytes,4,opt,name=hmac" json:"hmac,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptMessage) Reset()                    { *m = DecryptMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *DecryptMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DecryptMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DecryptMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{39} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptMessage) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptMessage) GetNonce() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Nonce
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptMessage) GetHmac() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Hmac
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Decrypted message
							 | 
						||
| 
								 | 
							
								// @prev DecryptedMessage
							 | 
						||
| 
								 | 
							
								type DecryptedMessage struct {
							 | 
						||
| 
								 | 
							
									Message          []byte  `protobuf:"bytes,1,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									Address          *string `protobuf:"bytes,2,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptedMessage) Reset()                    { *m = DecryptedMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *DecryptedMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DecryptedMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DecryptedMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{40} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptedMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DecryptedMessage) GetAddress() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to encrypt or decrypt value of given key
							 | 
						||
| 
								 | 
							
								// @next CipheredKeyValue
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type CipherKeyValue struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									Key              *string  `protobuf:"bytes,2,opt,name=key" json:"key,omitempty"`
							 | 
						||
| 
								 | 
							
									Value            []byte   `protobuf:"bytes,3,opt,name=value" json:"value,omitempty"`
							 | 
						||
| 
								 | 
							
									Encrypt          *bool    `protobuf:"varint,4,opt,name=encrypt" json:"encrypt,omitempty"`
							 | 
						||
| 
								 | 
							
									AskOnEncrypt     *bool    `protobuf:"varint,5,opt,name=ask_on_encrypt,json=askOnEncrypt" json:"ask_on_encrypt,omitempty"`
							 | 
						||
| 
								 | 
							
									AskOnDecrypt     *bool    `protobuf:"varint,6,opt,name=ask_on_decrypt,json=askOnDecrypt" json:"ask_on_decrypt,omitempty"`
							 | 
						||
| 
								 | 
							
									Iv               []byte   `protobuf:"bytes,7,opt,name=iv" json:"iv,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) Reset()                    { *m = CipherKeyValue{} }
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*CipherKeyValue) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*CipherKeyValue) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{41} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetKey() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Key != nil {
							 | 
						||
| 
								 | 
							
										return *m.Key
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetValue() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Value
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetEncrypt() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Encrypt != nil {
							 | 
						||
| 
								 | 
							
										return *m.Encrypt
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetAskOnEncrypt() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.AskOnEncrypt != nil {
							 | 
						||
| 
								 | 
							
										return *m.AskOnEncrypt
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetAskOnDecrypt() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.AskOnDecrypt != nil {
							 | 
						||
| 
								 | 
							
										return *m.AskOnDecrypt
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipherKeyValue) GetIv() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Iv
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Return ciphered/deciphered value
							 | 
						||
| 
								 | 
							
								// @prev CipherKeyValue
							 | 
						||
| 
								 | 
							
								type CipheredKeyValue struct {
							 | 
						||
| 
								 | 
							
									Value            []byte `protobuf:"bytes,1,opt,name=value" json:"value,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipheredKeyValue) Reset()                    { *m = CipheredKeyValue{} }
							 | 
						||
| 
								 | 
							
								func (m *CipheredKeyValue) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*CipheredKeyValue) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*CipheredKeyValue) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{42} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *CipheredKeyValue) GetValue() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Value
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Estimated size of the transaction
							 | 
						||
| 
								 | 
							
								// This behaves exactly like SignTx, which means that it can ask using TxRequest
							 | 
						||
| 
								 | 
							
								// This call is non-blocking (except possible PassphraseRequest to unlock the seed)
							 | 
						||
| 
								 | 
							
								// @next TxSize
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type EstimateTxSize struct {
							 | 
						||
| 
								 | 
							
									OutputsCount     *uint32 `protobuf:"varint,1,req,name=outputs_count,json=outputsCount" json:"outputs_count,omitempty"`
							 | 
						||
| 
								 | 
							
									InputsCount      *uint32 `protobuf:"varint,2,req,name=inputs_count,json=inputsCount" json:"inputs_count,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string `protobuf:"bytes,3,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EstimateTxSize) Reset()                    { *m = EstimateTxSize{} }
							 | 
						||
| 
								 | 
							
								func (m *EstimateTxSize) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EstimateTxSize) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EstimateTxSize) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{43} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_EstimateTxSize_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EstimateTxSize) GetOutputsCount() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.OutputsCount != nil {
							 | 
						||
| 
								 | 
							
										return *m.OutputsCount
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EstimateTxSize) GetInputsCount() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.InputsCount != nil {
							 | 
						||
| 
								 | 
							
										return *m.InputsCount
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EstimateTxSize) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_EstimateTxSize_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Estimated size of the transaction
							 | 
						||
| 
								 | 
							
								// @prev EstimateTxSize
							 | 
						||
| 
								 | 
							
								type TxSize struct {
							 | 
						||
| 
								 | 
							
									TxSize           *uint32 `protobuf:"varint,1,opt,name=tx_size,json=txSize" json:"tx_size,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxSize) Reset()                    { *m = TxSize{} }
							 | 
						||
| 
								 | 
							
								func (m *TxSize) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*TxSize) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*TxSize) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{44} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxSize) GetTxSize() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.TxSize != nil {
							 | 
						||
| 
								 | 
							
										return *m.TxSize
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to sign transaction
							 | 
						||
| 
								 | 
							
								// @next PassphraseRequest
							 | 
						||
| 
								 | 
							
								// @next PinMatrixRequest
							 | 
						||
| 
								 | 
							
								// @next TxRequest
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type SignTx struct {
							 | 
						||
| 
								 | 
							
									OutputsCount     *uint32 `protobuf:"varint,1,req,name=outputs_count,json=outputsCount" json:"outputs_count,omitempty"`
							 | 
						||
| 
								 | 
							
									InputsCount      *uint32 `protobuf:"varint,2,req,name=inputs_count,json=inputsCount" json:"inputs_count,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string `protobuf:"bytes,3,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									Version          *uint32 `protobuf:"varint,4,opt,name=version,def=1" json:"version,omitempty"`
							 | 
						||
| 
								 | 
							
									LockTime         *uint32 `protobuf:"varint,5,opt,name=lock_time,json=lockTime,def=0" json:"lock_time,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignTx) Reset()                    { *m = SignTx{} }
							 | 
						||
| 
								 | 
							
								func (m *SignTx) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SignTx) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SignTx) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{45} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_SignTx_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								const Default_SignTx_Version uint32 = 1
							 | 
						||
| 
								 | 
							
								const Default_SignTx_LockTime uint32 = 0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignTx) GetOutputsCount() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.OutputsCount != nil {
							 | 
						||
| 
								 | 
							
										return *m.OutputsCount
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignTx) GetInputsCount() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.InputsCount != nil {
							 | 
						||
| 
								 | 
							
										return *m.InputsCount
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignTx) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SignTx_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignTx) GetVersion() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Version != nil {
							 | 
						||
| 
								 | 
							
										return *m.Version
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SignTx_Version
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignTx) GetLockTime() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.LockTime != nil {
							 | 
						||
| 
								 | 
							
										return *m.LockTime
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SignTx_LockTime
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Simplified transaction signing
							 | 
						||
| 
								 | 
							
								// This method doesn't support streaming, so there are hardware limits in number of inputs and outputs.
							 | 
						||
| 
								 | 
							
								// In case of success, the result is returned using TxRequest message.
							 | 
						||
| 
								 | 
							
								// @next PassphraseRequest
							 | 
						||
| 
								 | 
							
								// @next PinMatrixRequest
							 | 
						||
| 
								 | 
							
								// @next TxRequest
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type SimpleSignTx struct {
							 | 
						||
| 
								 | 
							
									Inputs           []*TxInputType     `protobuf:"bytes,1,rep,name=inputs" json:"inputs,omitempty"`
							 | 
						||
| 
								 | 
							
									Outputs          []*TxOutputType    `protobuf:"bytes,2,rep,name=outputs" json:"outputs,omitempty"`
							 | 
						||
| 
								 | 
							
									Transactions     []*TransactionType `protobuf:"bytes,3,rep,name=transactions" json:"transactions,omitempty"`
							 | 
						||
| 
								 | 
							
									CoinName         *string            `protobuf:"bytes,4,opt,name=coin_name,json=coinName,def=Bitcoin" json:"coin_name,omitempty"`
							 | 
						||
| 
								 | 
							
									Version          *uint32            `protobuf:"varint,5,opt,name=version,def=1" json:"version,omitempty"`
							 | 
						||
| 
								 | 
							
									LockTime         *uint32            `protobuf:"varint,6,opt,name=lock_time,json=lockTime,def=0" json:"lock_time,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte             `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) Reset()                    { *m = SimpleSignTx{} }
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SimpleSignTx) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SimpleSignTx) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{46} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const Default_SimpleSignTx_CoinName string = "Bitcoin"
							 | 
						||
| 
								 | 
							
								const Default_SimpleSignTx_Version uint32 = 1
							 | 
						||
| 
								 | 
							
								const Default_SimpleSignTx_LockTime uint32 = 0
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) GetInputs() []*TxInputType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Inputs
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) GetOutputs() []*TxOutputType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Outputs
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) GetTransactions() []*TransactionType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Transactions
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) GetCoinName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.CoinName != nil {
							 | 
						||
| 
								 | 
							
										return *m.CoinName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SimpleSignTx_CoinName
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) GetVersion() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Version != nil {
							 | 
						||
| 
								 | 
							
										return *m.Version
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SimpleSignTx_Version
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SimpleSignTx) GetLockTime() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.LockTime != nil {
							 | 
						||
| 
								 | 
							
										return *m.LockTime
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return Default_SimpleSignTx_LockTime
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device asks for information for signing transaction or returns the last result
							 | 
						||
| 
								 | 
							
								// If request_index is set, device awaits TxAck message (with fields filled in according to request_type)
							 | 
						||
| 
								 | 
							
								// If signature_index is set, 'signature' contains signed input of signature_index's input
							 | 
						||
| 
								 | 
							
								// @prev SignTx
							 | 
						||
| 
								 | 
							
								// @prev SimpleSignTx
							 | 
						||
| 
								 | 
							
								// @prev TxAck
							 | 
						||
| 
								 | 
							
								type TxRequest struct {
							 | 
						||
| 
								 | 
							
									RequestType      *RequestType             `protobuf:"varint,1,opt,name=request_type,json=requestType,enum=RequestType" json:"request_type,omitempty"`
							 | 
						||
| 
								 | 
							
									Details          *TxRequestDetailsType    `protobuf:"bytes,2,opt,name=details" json:"details,omitempty"`
							 | 
						||
| 
								 | 
							
									Serialized       *TxRequestSerializedType `protobuf:"bytes,3,opt,name=serialized" json:"serialized,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte                   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxRequest) Reset()                    { *m = TxRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *TxRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*TxRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*TxRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{47} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxRequest) GetRequestType() RequestType {
							 | 
						||
| 
								 | 
							
									if m != nil && m.RequestType != nil {
							 | 
						||
| 
								 | 
							
										return *m.RequestType
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return RequestType_TXINPUT
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxRequest) GetDetails() *TxRequestDetailsType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Details
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxRequest) GetSerialized() *TxRequestSerializedType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Serialized
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Reported transaction data
							 | 
						||
| 
								 | 
							
								// @prev TxRequest
							 | 
						||
| 
								 | 
							
								// @next TxRequest
							 | 
						||
| 
								 | 
							
								type TxAck struct {
							 | 
						||
| 
								 | 
							
									Tx               *TransactionType `protobuf:"bytes,1,opt,name=tx" json:"tx,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte           `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxAck) Reset()                    { *m = TxAck{} }
							 | 
						||
| 
								 | 
							
								func (m *TxAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*TxAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*TxAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{48} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *TxAck) GetTx() *TransactionType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Tx
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to sign transaction
							 | 
						||
| 
								 | 
							
								// All fields are optional from the protocol's point of view. Each field defaults to value `0` if missing.
							 | 
						||
| 
								 | 
							
								// Note: the first at most 1024 bytes of data MUST be transmitted as part of this message.
							 | 
						||
| 
								 | 
							
								// @next PassphraseRequest
							 | 
						||
| 
								 | 
							
								// @next PinMatrixRequest
							 | 
						||
| 
								 | 
							
								// @next EthereumTxRequest
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type EthereumSignTx struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									Nonce            []byte   `protobuf:"bytes,2,opt,name=nonce" json:"nonce,omitempty"`
							 | 
						||
| 
								 | 
							
									GasPrice         []byte   `protobuf:"bytes,3,opt,name=gas_price,json=gasPrice" json:"gas_price,omitempty"`
							 | 
						||
| 
								 | 
							
									GasLimit         []byte   `protobuf:"bytes,4,opt,name=gas_limit,json=gasLimit" json:"gas_limit,omitempty"`
							 | 
						||
| 
								 | 
							
									To               []byte   `protobuf:"bytes,5,opt,name=to" json:"to,omitempty"`
							 | 
						||
| 
								 | 
							
									Value            []byte   `protobuf:"bytes,6,opt,name=value" json:"value,omitempty"`
							 | 
						||
| 
								 | 
							
									DataInitialChunk []byte   `protobuf:"bytes,7,opt,name=data_initial_chunk,json=dataInitialChunk" json:"data_initial_chunk,omitempty"`
							 | 
						||
| 
								 | 
							
									DataLength       *uint32  `protobuf:"varint,8,opt,name=data_length,json=dataLength" json:"data_length,omitempty"`
							 | 
						||
| 
								 | 
							
									ChainId          *uint32  `protobuf:"varint,9,opt,name=chain_id,json=chainId" json:"chain_id,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) Reset()                    { *m = EthereumSignTx{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumSignTx) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumSignTx) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{49} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetNonce() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Nonce
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetGasPrice() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.GasPrice
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetGasLimit() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.GasLimit
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetTo() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.To
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetValue() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Value
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetDataInitialChunk() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.DataInitialChunk
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetDataLength() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.DataLength != nil {
							 | 
						||
| 
								 | 
							
										return *m.DataLength
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignTx) GetChainId() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ChainId != nil {
							 | 
						||
| 
								 | 
							
										return *m.ChainId
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device asks for more data from transaction payload, or returns the signature.
							 | 
						||
| 
								 | 
							
								// If data_length is set, device awaits that many more bytes of payload.
							 | 
						||
| 
								 | 
							
								// Otherwise, the signature_* fields contain the computed transaction signature. All three fields will be present.
							 | 
						||
| 
								 | 
							
								// @prev EthereumSignTx
							 | 
						||
| 
								 | 
							
								// @next EthereumTxAck
							 | 
						||
| 
								 | 
							
								type EthereumTxRequest struct {
							 | 
						||
| 
								 | 
							
									DataLength       *uint32 `protobuf:"varint,1,opt,name=data_length,json=dataLength" json:"data_length,omitempty"`
							 | 
						||
| 
								 | 
							
									SignatureV       *uint32 `protobuf:"varint,2,opt,name=signature_v,json=signatureV" json:"signature_v,omitempty"`
							 | 
						||
| 
								 | 
							
									SignatureR       []byte  `protobuf:"bytes,3,opt,name=signature_r,json=signatureR" json:"signature_r,omitempty"`
							 | 
						||
| 
								 | 
							
									SignatureS       []byte  `protobuf:"bytes,4,opt,name=signature_s,json=signatureS" json:"signature_s,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxRequest) Reset()                    { *m = EthereumTxRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumTxRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumTxRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{50} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxRequest) GetDataLength() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.DataLength != nil {
							 | 
						||
| 
								 | 
							
										return *m.DataLength
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxRequest) GetSignatureV() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.SignatureV != nil {
							 | 
						||
| 
								 | 
							
										return *m.SignatureV
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxRequest) GetSignatureR() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.SignatureR
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxRequest) GetSignatureS() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.SignatureS
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Transaction payload data.
							 | 
						||
| 
								 | 
							
								// @prev EthereumTxRequest
							 | 
						||
| 
								 | 
							
								// @next EthereumTxRequest
							 | 
						||
| 
								 | 
							
								type EthereumTxAck struct {
							 | 
						||
| 
								 | 
							
									DataChunk        []byte `protobuf:"bytes,1,opt,name=data_chunk,json=dataChunk" json:"data_chunk,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxAck) Reset()                    { *m = EthereumTxAck{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxAck) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumTxAck) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumTxAck) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{51} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumTxAck) GetDataChunk() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.DataChunk
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to sign message
							 | 
						||
| 
								 | 
							
								// @next EthereumMessageSignature
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type EthereumSignMessage struct {
							 | 
						||
| 
								 | 
							
									AddressN         []uint32 `protobuf:"varint,1,rep,name=address_n,json=addressN" json:"address_n,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte   `protobuf:"bytes,2,req,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte   `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignMessage) Reset()                    { *m = EthereumSignMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumSignMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumSignMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{52} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignMessage) GetAddressN() []uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.AddressN
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumSignMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to verify message
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type EthereumVerifyMessage struct {
							 | 
						||
| 
								 | 
							
									Address          []byte `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									Signature        []byte `protobuf:"bytes,2,opt,name=signature" json:"signature,omitempty"`
							 | 
						||
| 
								 | 
							
									Message          []byte `protobuf:"bytes,3,opt,name=message" json:"message,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumVerifyMessage) Reset()                    { *m = EthereumVerifyMessage{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumVerifyMessage) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumVerifyMessage) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumVerifyMessage) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{53} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumVerifyMessage) GetAddress() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumVerifyMessage) GetSignature() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Signature
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumVerifyMessage) GetMessage() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Message
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Signed message
							 | 
						||
| 
								 | 
							
								// @prev EthereumSignMessage
							 | 
						||
| 
								 | 
							
								type EthereumMessageSignature struct {
							 | 
						||
| 
								 | 
							
									Address          []byte `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									Signature        []byte `protobuf:"bytes,2,opt,name=signature" json:"signature,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumMessageSignature) Reset()                    { *m = EthereumMessageSignature{} }
							 | 
						||
| 
								 | 
							
								func (m *EthereumMessageSignature) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*EthereumMessageSignature) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*EthereumMessageSignature) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{54} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumMessageSignature) GetAddress() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *EthereumMessageSignature) GetSignature() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Signature
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to sign identity
							 | 
						||
| 
								 | 
							
								// @next SignedIdentity
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type SignIdentity struct {
							 | 
						||
| 
								 | 
							
									Identity         *IdentityType `protobuf:"bytes,1,opt,name=identity" json:"identity,omitempty"`
							 | 
						||
| 
								 | 
							
									ChallengeHidden  []byte        `protobuf:"bytes,2,opt,name=challenge_hidden,json=challengeHidden" json:"challenge_hidden,omitempty"`
							 | 
						||
| 
								 | 
							
									ChallengeVisual  *string       `protobuf:"bytes,3,opt,name=challenge_visual,json=challengeVisual" json:"challenge_visual,omitempty"`
							 | 
						||
| 
								 | 
							
									EcdsaCurveName   *string       `protobuf:"bytes,4,opt,name=ecdsa_curve_name,json=ecdsaCurveName" json:"ecdsa_curve_name,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte        `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignIdentity) Reset()                    { *m = SignIdentity{} }
							 | 
						||
| 
								 | 
							
								func (m *SignIdentity) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SignIdentity) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SignIdentity) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{55} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignIdentity) GetIdentity() *IdentityType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Identity
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignIdentity) GetChallengeHidden() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.ChallengeHidden
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignIdentity) GetChallengeVisual() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ChallengeVisual != nil {
							 | 
						||
| 
								 | 
							
										return *m.ChallengeVisual
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignIdentity) GetEcdsaCurveName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.EcdsaCurveName != nil {
							 | 
						||
| 
								 | 
							
										return *m.EcdsaCurveName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device provides signed identity
							 | 
						||
| 
								 | 
							
								// @prev SignIdentity
							 | 
						||
| 
								 | 
							
								type SignedIdentity struct {
							 | 
						||
| 
								 | 
							
									Address          *string `protobuf:"bytes,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									PublicKey        []byte  `protobuf:"bytes,2,opt,name=public_key,json=publicKey" json:"public_key,omitempty"`
							 | 
						||
| 
								 | 
							
									Signature        []byte  `protobuf:"bytes,3,opt,name=signature" json:"signature,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignedIdentity) Reset()                    { *m = SignedIdentity{} }
							 | 
						||
| 
								 | 
							
								func (m *SignedIdentity) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SignedIdentity) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SignedIdentity) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{56} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignedIdentity) GetAddress() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignedIdentity) GetPublicKey() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.PublicKey
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SignedIdentity) GetSignature() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Signature
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to generate ECDH session key
							 | 
						||
| 
								 | 
							
								// @next ECDHSessionKey
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type GetECDHSessionKey struct {
							 | 
						||
| 
								 | 
							
									Identity         *IdentityType `protobuf:"bytes,1,opt,name=identity" json:"identity,omitempty"`
							 | 
						||
| 
								 | 
							
									PeerPublicKey    []byte        `protobuf:"bytes,2,opt,name=peer_public_key,json=peerPublicKey" json:"peer_public_key,omitempty"`
							 | 
						||
| 
								 | 
							
									EcdsaCurveName   *string       `protobuf:"bytes,3,opt,name=ecdsa_curve_name,json=ecdsaCurveName" json:"ecdsa_curve_name,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte        `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetECDHSessionKey) Reset()                    { *m = GetECDHSessionKey{} }
							 | 
						||
| 
								 | 
							
								func (m *GetECDHSessionKey) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*GetECDHSessionKey) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*GetECDHSessionKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{57} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetECDHSessionKey) GetIdentity() *IdentityType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Identity
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetECDHSessionKey) GetPeerPublicKey() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.PeerPublicKey
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *GetECDHSessionKey) GetEcdsaCurveName() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.EcdsaCurveName != nil {
							 | 
						||
| 
								 | 
							
										return *m.EcdsaCurveName
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device provides ECDH session key
							 | 
						||
| 
								 | 
							
								// @prev GetECDHSessionKey
							 | 
						||
| 
								 | 
							
								type ECDHSessionKey struct {
							 | 
						||
| 
								 | 
							
									SessionKey       []byte `protobuf:"bytes,1,opt,name=session_key,json=sessionKey" json:"session_key,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ECDHSessionKey) Reset()                    { *m = ECDHSessionKey{} }
							 | 
						||
| 
								 | 
							
								func (m *ECDHSessionKey) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*ECDHSessionKey) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*ECDHSessionKey) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{58} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *ECDHSessionKey) GetSessionKey() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.SessionKey
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Set U2F counter
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								type SetU2FCounter struct {
							 | 
						||
| 
								 | 
							
									U2FCounter       *uint32 `protobuf:"varint,1,opt,name=u2f_counter,json=u2fCounter" json:"u2f_counter,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SetU2FCounter) Reset()                    { *m = SetU2FCounter{} }
							 | 
						||
| 
								 | 
							
								func (m *SetU2FCounter) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SetU2FCounter) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SetU2FCounter) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{59} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SetU2FCounter) GetU2FCounter() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.U2FCounter != nil {
							 | 
						||
| 
								 | 
							
										return *m.U2FCounter
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to erase its firmware (so it can be replaced via FirmwareUpload)
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next FirmwareRequest
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type FirmwareErase struct {
							 | 
						||
| 
								 | 
							
									Length           *uint32 `protobuf:"varint,1,opt,name=length" json:"length,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareErase) Reset()                    { *m = FirmwareErase{} }
							 | 
						||
| 
								 | 
							
								func (m *FirmwareErase) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*FirmwareErase) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*FirmwareErase) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{60} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareErase) GetLength() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Length != nil {
							 | 
						||
| 
								 | 
							
										return *m.Length
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Ask for firmware chunk
							 | 
						||
| 
								 | 
							
								// @next FirmwareUpload
							 | 
						||
| 
								 | 
							
								type FirmwareRequest struct {
							 | 
						||
| 
								 | 
							
									Offset           *uint32 `protobuf:"varint,1,opt,name=offset" json:"offset,omitempty"`
							 | 
						||
| 
								 | 
							
									Length           *uint32 `protobuf:"varint,2,opt,name=length" json:"length,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareRequest) Reset()                    { *m = FirmwareRequest{} }
							 | 
						||
| 
								 | 
							
								func (m *FirmwareRequest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*FirmwareRequest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*FirmwareRequest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{61} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareRequest) GetOffset() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Offset != nil {
							 | 
						||
| 
								 | 
							
										return *m.Offset
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareRequest) GetLength() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Length != nil {
							 | 
						||
| 
								 | 
							
										return *m.Length
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Send firmware in binary form to the device
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type FirmwareUpload struct {
							 | 
						||
| 
								 | 
							
									Payload          []byte `protobuf:"bytes,1,req,name=payload" json:"payload,omitempty"`
							 | 
						||
| 
								 | 
							
									Hash             []byte `protobuf:"bytes,2,opt,name=hash" json:"hash,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareUpload) Reset()                    { *m = FirmwareUpload{} }
							 | 
						||
| 
								 | 
							
								func (m *FirmwareUpload) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*FirmwareUpload) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*FirmwareUpload) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{62} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareUpload) GetPayload() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Payload
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *FirmwareUpload) GetHash() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Hash
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Perform a device self-test
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								// @next Failure
							 | 
						||
| 
								 | 
							
								type SelfTest struct {
							 | 
						||
| 
								 | 
							
									Payload          []byte `protobuf:"bytes,1,opt,name=payload" json:"payload,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SelfTest) Reset()                    { *m = SelfTest{} }
							 | 
						||
| 
								 | 
							
								func (m *SelfTest) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*SelfTest) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*SelfTest) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{63} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *SelfTest) GetPayload() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Payload
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: "Press" the button on the device
							 | 
						||
| 
								 | 
							
								// @next Success
							 | 
						||
| 
								 | 
							
								type DebugLinkDecision struct {
							 | 
						||
| 
								 | 
							
									YesNo            *bool  `protobuf:"varint,1,req,name=yes_no,json=yesNo" json:"yes_no,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkDecision) Reset()                    { *m = DebugLinkDecision{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkDecision) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkDecision) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkDecision) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{64} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkDecision) GetYesNo() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.YesNo != nil {
							 | 
						||
| 
								 | 
							
										return *m.YesNo
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Computer asks for device state
							 | 
						||
| 
								 | 
							
								// @next DebugLinkState
							 | 
						||
| 
								 | 
							
								type DebugLinkGetState struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkGetState) Reset()                    { *m = DebugLinkGetState{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkGetState) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkGetState) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkGetState) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{65} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device current state
							 | 
						||
| 
								 | 
							
								// @prev DebugLinkGetState
							 | 
						||
| 
								 | 
							
								type DebugLinkState struct {
							 | 
						||
| 
								 | 
							
									Layout               []byte      `protobuf:"bytes,1,opt,name=layout" json:"layout,omitempty"`
							 | 
						||
| 
								 | 
							
									Pin                  *string     `protobuf:"bytes,2,opt,name=pin" json:"pin,omitempty"`
							 | 
						||
| 
								 | 
							
									Matrix               *string     `protobuf:"bytes,3,opt,name=matrix" json:"matrix,omitempty"`
							 | 
						||
| 
								 | 
							
									Mnemonic             *string     `protobuf:"bytes,4,opt,name=mnemonic" json:"mnemonic,omitempty"`
							 | 
						||
| 
								 | 
							
									Node                 *HDNodeType `protobuf:"bytes,5,opt,name=node" json:"node,omitempty"`
							 | 
						||
| 
								 | 
							
									PassphraseProtection *bool       `protobuf:"varint,6,opt,name=passphrase_protection,json=passphraseProtection" json:"passphrase_protection,omitempty"`
							 | 
						||
| 
								 | 
							
									ResetWord            *string     `protobuf:"bytes,7,opt,name=reset_word,json=resetWord" json:"reset_word,omitempty"`
							 | 
						||
| 
								 | 
							
									ResetEntropy         []byte      `protobuf:"bytes,8,opt,name=reset_entropy,json=resetEntropy" json:"reset_entropy,omitempty"`
							 | 
						||
| 
								 | 
							
									RecoveryFakeWord     *string     `protobuf:"bytes,9,opt,name=recovery_fake_word,json=recoveryFakeWord" json:"recovery_fake_word,omitempty"`
							 | 
						||
| 
								 | 
							
									RecoveryWordPos      *uint32     `protobuf:"varint,10,opt,name=recovery_word_pos,json=recoveryWordPos" json:"recovery_word_pos,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized     []byte      `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) Reset()                    { *m = DebugLinkState{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkState) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkState) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{66} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetLayout() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Layout
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetPin() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Pin != nil {
							 | 
						||
| 
								 | 
							
										return *m.Pin
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetMatrix() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Matrix != nil {
							 | 
						||
| 
								 | 
							
										return *m.Matrix
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetMnemonic() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Mnemonic != nil {
							 | 
						||
| 
								 | 
							
										return *m.Mnemonic
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetNode() *HDNodeType {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Node
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetPassphraseProtection() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.PassphraseProtection != nil {
							 | 
						||
| 
								 | 
							
										return *m.PassphraseProtection
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetResetWord() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.ResetWord != nil {
							 | 
						||
| 
								 | 
							
										return *m.ResetWord
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetResetEntropy() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.ResetEntropy
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetRecoveryFakeWord() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.RecoveryFakeWord != nil {
							 | 
						||
| 
								 | 
							
										return *m.RecoveryFakeWord
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkState) GetRecoveryWordPos() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.RecoveryWordPos != nil {
							 | 
						||
| 
								 | 
							
										return *m.RecoveryWordPos
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Ask device to restart
							 | 
						||
| 
								 | 
							
								type DebugLinkStop struct {
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkStop) Reset()                    { *m = DebugLinkStop{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkStop) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkStop) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkStop) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{67} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device wants host to log event
							 | 
						||
| 
								 | 
							
								type DebugLinkLog struct {
							 | 
						||
| 
								 | 
							
									Level            *uint32 `protobuf:"varint,1,opt,name=level" json:"level,omitempty"`
							 | 
						||
| 
								 | 
							
									Bucket           *string `protobuf:"bytes,2,opt,name=bucket" json:"bucket,omitempty"`
							 | 
						||
| 
								 | 
							
									Text             *string `protobuf:"bytes,3,opt,name=text" json:"text,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkLog) Reset()                    { *m = DebugLinkLog{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkLog) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkLog) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkLog) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{68} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkLog) GetLevel() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Level != nil {
							 | 
						||
| 
								 | 
							
										return *m.Level
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkLog) GetBucket() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Bucket != nil {
							 | 
						||
| 
								 | 
							
										return *m.Bucket
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkLog) GetText() string {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Text != nil {
							 | 
						||
| 
								 | 
							
										return *m.Text
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return ""
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Read memory from device
							 | 
						||
| 
								 | 
							
								// @next DebugLinkMemory
							 | 
						||
| 
								 | 
							
								type DebugLinkMemoryRead struct {
							 | 
						||
| 
								 | 
							
									Address          *uint32 `protobuf:"varint,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									Length           *uint32 `protobuf:"varint,2,opt,name=length" json:"length,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryRead) Reset()                    { *m = DebugLinkMemoryRead{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryRead) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkMemoryRead) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkMemoryRead) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{69} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryRead) GetAddress() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryRead) GetLength() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Length != nil {
							 | 
						||
| 
								 | 
							
										return *m.Length
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Response: Device sends memory back
							 | 
						||
| 
								 | 
							
								// @prev DebugLinkMemoryRead
							 | 
						||
| 
								 | 
							
								type DebugLinkMemory struct {
							 | 
						||
| 
								 | 
							
									Memory           []byte `protobuf:"bytes,1,opt,name=memory" json:"memory,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemory) Reset()                    { *m = DebugLinkMemory{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemory) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkMemory) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkMemory) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{70} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemory) GetMemory() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Memory
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Write memory to device.
							 | 
						||
| 
								 | 
							
								// WARNING: Writing to the wrong location can irreparably break the device.
							 | 
						||
| 
								 | 
							
								type DebugLinkMemoryWrite struct {
							 | 
						||
| 
								 | 
							
									Address          *uint32 `protobuf:"varint,1,opt,name=address" json:"address,omitempty"`
							 | 
						||
| 
								 | 
							
									Memory           []byte  `protobuf:"bytes,2,opt,name=memory" json:"memory,omitempty"`
							 | 
						||
| 
								 | 
							
									Flash            *bool   `protobuf:"varint,3,opt,name=flash" json:"flash,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryWrite) Reset()                    { *m = DebugLinkMemoryWrite{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryWrite) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkMemoryWrite) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkMemoryWrite) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{71} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryWrite) GetAddress() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Address != nil {
							 | 
						||
| 
								 | 
							
										return *m.Address
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryWrite) GetMemory() []byte {
							 | 
						||
| 
								 | 
							
									if m != nil {
							 | 
						||
| 
								 | 
							
										return m.Memory
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return nil
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkMemoryWrite) GetFlash() bool {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Flash != nil {
							 | 
						||
| 
								 | 
							
										return *m.Flash
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return false
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// *
							 | 
						||
| 
								 | 
							
								// Request: Erase block of flash on device
							 | 
						||
| 
								 | 
							
								// WARNING: Writing to the wrong location can irreparably break the device.
							 | 
						||
| 
								 | 
							
								type DebugLinkFlashErase struct {
							 | 
						||
| 
								 | 
							
									Sector           *uint32 `protobuf:"varint,1,opt,name=sector" json:"sector,omitempty"`
							 | 
						||
| 
								 | 
							
									XXX_unrecognized []byte  `json:"-"`
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkFlashErase) Reset()                    { *m = DebugLinkFlashErase{} }
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkFlashErase) String() string            { return proto.CompactTextString(m) }
							 | 
						||
| 
								 | 
							
								func (*DebugLinkFlashErase) ProtoMessage()               {}
							 | 
						||
| 
								 | 
							
								func (*DebugLinkFlashErase) Descriptor() ([]byte, []int) { return fileDescriptor1, []int{72} }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func (m *DebugLinkFlashErase) GetSector() uint32 {
							 | 
						||
| 
								 | 
							
									if m != nil && m.Sector != nil {
							 | 
						||
| 
								 | 
							
										return *m.Sector
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
									return 0
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func init() {
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Initialize)(nil), "Initialize")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*GetFeatures)(nil), "GetFeatures")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Features)(nil), "Features")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ClearSession)(nil), "ClearSession")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ApplySettings)(nil), "ApplySettings")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ApplyFlags)(nil), "ApplyFlags")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ChangePin)(nil), "ChangePin")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Ping)(nil), "Ping")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Success)(nil), "Success")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Failure)(nil), "Failure")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ButtonRequest)(nil), "ButtonRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ButtonAck)(nil), "ButtonAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*PinMatrixRequest)(nil), "PinMatrixRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*PinMatrixAck)(nil), "PinMatrixAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Cancel)(nil), "Cancel")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*PassphraseRequest)(nil), "PassphraseRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*PassphraseAck)(nil), "PassphraseAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*GetEntropy)(nil), "GetEntropy")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Entropy)(nil), "Entropy")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*GetPublicKey)(nil), "GetPublicKey")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*PublicKey)(nil), "PublicKey")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*GetAddress)(nil), "GetAddress")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumGetAddress)(nil), "EthereumGetAddress")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*Address)(nil), "Address")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumAddress)(nil), "EthereumAddress")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*WipeDevice)(nil), "WipeDevice")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*LoadDevice)(nil), "LoadDevice")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ResetDevice)(nil), "ResetDevice")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*BackupDevice)(nil), "BackupDevice")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EntropyRequest)(nil), "EntropyRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EntropyAck)(nil), "EntropyAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*RecoveryDevice)(nil), "RecoveryDevice")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*WordRequest)(nil), "WordRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*WordAck)(nil), "WordAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SignMessage)(nil), "SignMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*VerifyMessage)(nil), "VerifyMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*MessageSignature)(nil), "MessageSignature")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EncryptMessage)(nil), "EncryptMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EncryptedMessage)(nil), "EncryptedMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DecryptMessage)(nil), "DecryptMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DecryptedMessage)(nil), "DecryptedMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*CipherKeyValue)(nil), "CipherKeyValue")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*CipheredKeyValue)(nil), "CipheredKeyValue")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EstimateTxSize)(nil), "EstimateTxSize")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*TxSize)(nil), "TxSize")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SignTx)(nil), "SignTx")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SimpleSignTx)(nil), "SimpleSignTx")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*TxRequest)(nil), "TxRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*TxAck)(nil), "TxAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumSignTx)(nil), "EthereumSignTx")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumTxRequest)(nil), "EthereumTxRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumTxAck)(nil), "EthereumTxAck")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumSignMessage)(nil), "EthereumSignMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumVerifyMessage)(nil), "EthereumVerifyMessage")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*EthereumMessageSignature)(nil), "EthereumMessageSignature")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SignIdentity)(nil), "SignIdentity")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SignedIdentity)(nil), "SignedIdentity")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*GetECDHSessionKey)(nil), "GetECDHSessionKey")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*ECDHSessionKey)(nil), "ECDHSessionKey")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SetU2FCounter)(nil), "SetU2FCounter")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*FirmwareErase)(nil), "FirmwareErase")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*FirmwareRequest)(nil), "FirmwareRequest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*FirmwareUpload)(nil), "FirmwareUpload")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*SelfTest)(nil), "SelfTest")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkDecision)(nil), "DebugLinkDecision")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkGetState)(nil), "DebugLinkGetState")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkState)(nil), "DebugLinkState")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkStop)(nil), "DebugLinkStop")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkLog)(nil), "DebugLinkLog")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkMemoryRead)(nil), "DebugLinkMemoryRead")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkMemory)(nil), "DebugLinkMemory")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkMemoryWrite)(nil), "DebugLinkMemoryWrite")
							 | 
						||
| 
								 | 
							
									proto.RegisterType((*DebugLinkFlashErase)(nil), "DebugLinkFlashErase")
							 | 
						||
| 
								 | 
							
									proto.RegisterEnum("MessageType", MessageType_name, MessageType_value)
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								func init() { proto.RegisterFile("messages.proto", fileDescriptor1) }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								var fileDescriptor1 = []byte{
							 | 
						||
| 
								 | 
							
									// 3424 bytes of a gzipped FileDescriptorProto
							 | 
						||
| 
								 | 
							
									0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x5a, 0xcb, 0x6f, 0xdc, 0x46,
							 | 
						||
| 
								 | 
							
									0x9a, 0x5f, 0x76, 0xb7, 0xfa, 0xf1, 0x35, 0xbb, 0x55, 0xa2, 0x2d, 0xbb, 0x2d, 0x5b, 0xb6, 0x4c,
							 | 
						||
| 
								 | 
							
									0xc9, 0xb6, 0x64, 0x27, 0xed, 0x44, 0x79, 0x6c, 0xd6, 0xbb, 0x79, 0xc8, 0x7a, 0xd8, 0xde, 0xd8,
							 | 
						||
| 
								 | 
							
									0x8e, 0xc0, 0x56, 0x9c, 0xdb, 0x12, 0x14, 0x59, 0xea, 0xae, 0x55, 0x37, 0xc9, 0xf0, 0xa1, 0xa8,
							 | 
						||
| 
								 | 
							
									0x7d, 0xd8, 0xeb, 0xee, 0x65, 0x81, 0xec, 0x69, 0x73, 0x1a, 0xe4, 0x36, 0x19, 0x04, 0x18, 0x0c,
							 | 
						||
| 
								 | 
							
									0x30, 0x18, 0x60, 0x72, 0x9a, 0x3f, 0x60, 0xfe, 0x8b, 0x39, 0xce, 0x1f, 0x30, 0xe7, 0x41, 0x3d,
							 | 
						||
| 
								 | 
							
									0x48, 0x16, 0x29, 0xb6, 0x6c, 0x27, 0xc0, 0x5c, 0x04, 0xd6, 0x57, 0xbf, 0xfe, 0xea, 0x7b, 0xd5,
							 | 
						||
| 
								 | 
							
									0x57, 0x5f, 0x7d, 0x25, 0xe8, 0x4e, 0x70, 0x18, 0x5a, 0x43, 0x1c, 0xf6, 0xfd, 0xc0, 0x8b, 0xbc,
							 | 
						||
| 
								 | 
							
									0xa5, 0x76, 0x34, 0xf5, 0x93, 0x81, 0xae, 0x02, 0x3c, 0x71, 0x49, 0x44, 0xac, 0x31, 0x79, 0x89,
							 | 
						||
| 
								 | 
							
									0xf5, 0x0e, 0xb4, 0x1f, 0xe1, 0x68, 0x0f, 0x5b, 0x51, 0x1c, 0xe0, 0x50, 0xff, 0x69, 0x0e, 0x9a,
							 | 
						||
| 
								 | 
							
									0xc9, 0x40, 0xbb, 0x04, 0xf5, 0x13, 0xec, 0x3a, 0x5e, 0xd0, 0x53, 0x56, 0x94, 0xf5, 0x96, 0x21,
							 | 
						||
| 
								 | 
							
									0x46, 0xda, 0x2a, 0x74, 0x26, 0xd6, 0x7f, 0x7a, 0x81, 0x79, 0x82, 0x83, 0x90, 0x78, 0x6e, 0xaf,
							 | 
						||
| 
								 | 
							
									0xb2, 0xa2, 0xac, 0x77, 0x0c, 0x95, 0x11, 0x5f, 0x70, 0x1a, 0x03, 0x11, 0x57, 0x02, 0x55, 0x05,
							 | 
						||
| 
								 | 
							
									0x88, 0x12, 0x25, 0x90, 0x6f, 0x45, 0xf6, 0x28, 0x05, 0xd5, 0x38, 0x88, 0x11, 0x13, 0xd0, 0x1d,
							 | 
						||
| 
								 | 
							
									0x98, 0x3f, 0xf4, 0xbc, 0x68, 0xec, 0x59, 0x0e, 0x0e, 0xcc, 0x89, 0xe7, 0xe0, 0xde, 0xdc, 0x8a,
							 | 
						||
| 
								 | 
							
									0xb2, 0xde, 0x34, 0xba, 0x19, 0xf9, 0x99, 0xe7, 0x60, 0xed, 0x2a, 0xb4, 0x1c, 0x7c, 0x42, 0x6c,
							 | 
						||
| 
								 | 
							
									0x6c, 0x12, 0xa7, 0x57, 0x67, 0x22, 0x37, 0x39, 0xe1, 0x89, 0xa3, 0xdd, 0x82, 0xae, 0x4f, 0x5c,
							 | 
						||
| 
								 | 
							
									0x93, 0xda, 0x00, 0xdb, 0x11, 0x5d, 0xab, 0xc1, 0x98, 0x74, 0x7c, 0xe2, 0xee, 0xa7, 0x44, 0xed,
							 | 
						||
| 
								 | 
							
									0x3d, 0x58, 0xf4, 0xad, 0x30, 0xf4, 0x47, 0x81, 0x15, 0x62, 0x19, 0xdd, 0x64, 0xe8, 0x8b, 0xd9,
							 | 
						||
| 
								 | 
							
									0xa4, 0xf4, 0xa3, 0x25, 0x68, 0x8e, 0x2d, 0x77, 0x18, 0x5b, 0x43, 0xdc, 0x6b, 0xf1, 0x75, 0x93,
							 | 
						||
| 
								 | 
							
									0xb1, 0x76, 0x11, 0xe6, 0xc6, 0xd6, 0x21, 0x1e, 0xf7, 0x80, 0x4d, 0xf0, 0x81, 0x76, 0x03, 0xe6,
							 | 
						||
| 
								 | 
							
									0x6c, 0x8f, 0xb8, 0x61, 0xaf, 0xbd, 0x52, 0x5d, 0x6f, 0x6f, 0xb6, 0xfa, 0xdb, 0x1e, 0x71, 0x0f,
							 | 
						||
| 
								 | 
							
									0xa6, 0x3e, 0x36, 0x38, 0x5d, 0x5b, 0x81, 0x36, 0x49, 0xbd, 0xe4, 0xf4, 0x54, 0xb6, 0xba, 0x4c,
							 | 
						||
| 
								 | 
							
									0xa2, 0x8b, 0x06, 0xf8, 0x84, 0x30, 0xb3, 0x75, 0x56, 0x94, 0x75, 0xd5, 0x48, 0xc7, 0x05, 0x93,
							 | 
						||
| 
								 | 
							
									0x8d, 0xac, 0x70, 0xd4, 0xeb, 0x32, 0x88, 0x64, 0xb2, 0xc7, 0x56, 0x38, 0xa2, 0x4c, 0xc8, 0xc4,
							 | 
						||
| 
								 | 
							
									0xf7, 0x82, 0x08, 0x3b, 0xbd, 0x79, 0xb6, 0x46, 0x3a, 0xd6, 0x96, 0x01, 0xa8, 0xc5, 0x6c, 0xcb,
							 | 
						||
| 
								 | 
							
									0x1e, 0x61, 0xa7, 0x87, 0xd8, 0x6c, 0xcb, 0x27, 0xee, 0x36, 0x23, 0x68, 0xf7, 0x60, 0x41, 0xb2,
							 | 
						||
| 
								 | 
							
									0x94, 0x40, 0x2d, 0x30, 0x14, 0xca, 0x26, 0x04, 0x78, 0x03, 0xd0, 0x11, 0x09, 0x26, 0xdf, 0x58,
							 | 
						||
| 
								 | 
							
									0x01, 0x35, 0x2a, 0x0e, 0xb1, 0x1b, 0xf5, 0x34, 0x86, 0x9d, 0x4f, 0xe8, 0xfb, 0x9c, 0xac, 0xdd,
							 | 
						||
| 
								 | 
							
									0x04, 0xd5, 0xc5, 0xd8, 0x09, 0xcd, 0x43, 0xcb, 0x3e, 0x8e, 0xfd, 0xde, 0x05, 0xae, 0x3a, 0xa3,
							 | 
						||
| 
								 | 
							
									0x3d, 0x64, 0x24, 0x6a, 0xd3, 0xa3, 0xb1, 0x35, 0x0c, 0x7b, 0x17, 0x59, 0xb8, 0xf0, 0x81, 0xde,
							 | 
						||
| 
								 | 
							
									0x05, 0x75, 0x7b, 0x8c, 0xad, 0x60, 0x80, 0x43, 0x6a, 0x04, 0xfd, 0x7f, 0x14, 0xe8, 0x6c, 0xf9,
							 | 
						||
| 
								 | 
							
									0xfe, 0x78, 0x3a, 0xc0, 0x51, 0x44, 0xdc, 0x61, 0x98, 0xf3, 0x93, 0x32, 0xcb, 0x4f, 0x15, 0xd9,
							 | 
						||
| 
								 | 
							
									0x4f, 0xb7, 0xa0, 0x1b, 0xd3, 0x38, 0x48, 0xf5, 0x61, 0x61, 0xdc, 0x34, 0x3a, 0x71, 0x88, 0xf7,
							 | 
						||
| 
								 | 
							
									0x53, 0xa2, 0x76, 0x1d, 0x60, 0xe4, 0x4d, 0x70, 0x68, 0x07, 0x18, 0xf3, 0x20, 0x56, 0x0d, 0x89,
							 | 
						||
| 
								 | 
							
									0xa2, 0xeb, 0x00, 0x4c, 0x92, 0x3d, 0x2a, 0x68, 0x26, 0xbe, 0x22, 0x8b, 0xbf, 0x0a, 0xad, 0xed,
							 | 
						||
| 
								 | 
							
									0x91, 0xe5, 0x0e, 0xf1, 0x3e, 0x71, 0xe9, 0xd6, 0x0b, 0xf0, 0xc4, 0x3b, 0xe1, 0x72, 0x36, 0x0d,
							 | 
						||
| 
								 | 
							
									0x31, 0xd2, 0x7f, 0xa3, 0x40, 0x6d, 0x9f, 0xb8, 0x43, 0xad, 0x07, 0x0d, 0xb1, 0xc9, 0x85, 0x26,
							 | 
						||
| 
								 | 
							
									0xc9, 0x90, 0xfa, 0xe5, 0x30, 0x8e, 0x22, 0x2f, 0x17, 0xeb, 0x15, 0xee, 0x17, 0x3e, 0x21, 0x45,
							 | 
						||
| 
								 | 
							
									0xee, 0xd9, 0x5d, 0x51, 0x7d, 0xa3, 0x5d, 0x51, 0x9b, 0xbd, 0x2b, 0xf4, 0x55, 0x68, 0x0c, 0x62,
							 | 
						||
| 
								 | 
							
									0xdb, 0xc6, 0x61, 0x38, 0x5b, 0x5a, 0x7d, 0x17, 0x1a, 0x7b, 0x16, 0x19, 0xc7, 0x01, 0xd6, 0x56,
							 | 
						||
| 
								 | 
							
									0xa0, 0x66, 0xd3, 0xcd, 0x4d, 0x11, 0xdd, 0x4d, 0xb5, 0x2f, 0xe8, 0x6c, 0x57, 0xb0, 0x19, 0x99,
							 | 
						||
| 
								 | 
							
									0x4d, 0x25, 0xcf, 0xe6, 0x73, 0xe8, 0x3c, 0x64, 0xba, 0x19, 0xf8, 0xeb, 0x18, 0x87, 0x91, 0x76,
							 | 
						||
| 
								 | 
							
									0x3b, 0xc7, 0x4c, 0xeb, 0xe7, 0x66, 0x25, 0x96, 0x1a, 0xd4, 0x1c, 0x2b, 0xb2, 0x04, 0x3f, 0xf6,
							 | 
						||
| 
								 | 
							
									0xad, 0xb7, 0xa1, 0xc5, 0xe1, 0x5b, 0xf6, 0xb1, 0xfe, 0x31, 0xa0, 0x7d, 0xe2, 0x3e, 0xb3, 0xa2,
							 | 
						||
| 
								 | 
							
									0x80, 0x9c, 0x26, 0xcc, 0x37, 0xa0, 0x46, 0x33, 0xaa, 0x60, 0xbe, 0xd8, 0x2f, 0x02, 0x38, 0x7f,
							 | 
						||
| 
								 | 
							
									0x0a, 0xd1, 0x57, 0x40, 0x4d, 0x67, 0xb7, 0xec, 0x63, 0x0d, 0x41, 0xd5, 0x27, 0x6e, 0x4f, 0x59,
							 | 
						||
| 
								 | 
							
									0xa9, 0xac, 0xb7, 0x0c, 0xfa, 0xa9, 0x37, 0xa1, 0xbe, 0x6d, 0xb9, 0x36, 0x1e, 0xeb, 0x17, 0x60,
							 | 
						||
| 
								 | 
							
									0x21, 0x8b, 0x29, 0xc1, 0x4a, 0xbf, 0x0f, 0x9d, 0x8c, 0x48, 0x39, 0x5c, 0x07, 0x90, 0xc2, 0x91,
							 | 
						||
| 
								 | 
							
									0x33, 0x92, 0x28, 0xfa, 0x0a, 0xc0, 0x23, 0x1c, 0xed, 0xba, 0x51, 0xe0, 0xf9, 0x53, 0xaa, 0x5f,
							 | 
						||
| 
								 | 
							
									0x48, 0x5e, 0x72, 0x5c, 0xc7, 0x60, 0xdf, 0xd4, 0x31, 0xc9, 0x74, 0x0f, 0x1a, 0x98, 0x7f, 0x32,
							 | 
						||
| 
								 | 
							
									0x84, 0x6a, 0x24, 0x43, 0xfd, 0x57, 0x0a, 0xa8, 0x8f, 0x70, 0xb4, 0x1f, 0x1f, 0x8e, 0x89, 0xfd,
							 | 
						||
| 
								 | 
							
									0x39, 0x9e, 0xd2, 0xec, 0x6a, 0x39, 0x4e, 0x80, 0xc3, 0xd0, 0xa4, 0xf2, 0x57, 0xd7, 0x3b, 0x46,
							 | 
						||
| 
								 | 
							
									0x53, 0x10, 0x9e, 0x6b, 0xeb, 0x80, 0xb0, 0xed, 0x84, 0x96, 0x69, 0xc7, 0xc1, 0x09, 0x36, 0x5d,
							 | 
						||
| 
								 | 
							
									0x6b, 0x92, 0xb8, 0xa8, 0xcb, 0xe8, 0xdb, 0x94, 0xfc, 0xdc, 0x9a, 0x60, 0xba, 0xbd, 0xc3, 0x91,
							 | 
						||
| 
								 | 
							
									0xf7, 0x8d, 0xe9, 0x90, 0xd0, 0x1f, 0x5b, 0x53, 0x11, 0x6f, 0x6d, 0x4a, 0xdb, 0xe1, 0x24, 0x6d,
							 | 
						||
| 
								 | 
							
									0x0d, 0x5a, 0x34, 0x09, 0x72, 0x2e, 0x34, 0xc2, 0x5a, 0x0f, 0x1a, 0x0f, 0x49, 0x44, 0x69, 0x46,
							 | 
						||
| 
								 | 
							
									0x93, 0xfe, 0xa5, 0x8c, 0xf4, 0xcf, 0xa0, 0x95, 0x09, 0x77, 0x03, 0x6a, 0x2e, 0x77, 0x77, 0x65,
							 | 
						||
| 
								 | 
							
									0xbd, 0xbd, 0xd9, 0xee, 0x3f, 0xde, 0x79, 0xee, 0x39, 0x22, 0x74, 0x5c, 0xe1, 0xe7, 0x53, 0x3f,
							 | 
						||
| 
								 | 
							
									0x3e, 0x4c, 0xfc, 0x4c, 0xbf, 0xf5, 0xbf, 0x2a, 0xcc, 0x54, 0x5b, 0x5c, 0x89, 0xf3, 0x15, 0xcc,
							 | 
						||
| 
								 | 
							
									0xc9, 0x54, 0x99, 0x21, 0xd3, 0xeb, 0x28, 0xf7, 0x01, 0x34, 0x27, 0xf1, 0x38, 0x22, 0x21, 0x19,
							 | 
						||
| 
								 | 
							
									0x32, 0xdd, 0xda, 0x9b, 0x57, 0xfa, 0xcf, 0x04, 0xc1, 0xc0, 0x0e, 0xc6, 0x93, 0x81, 0x1d, 0x10,
							 | 
						||
| 
								 | 
							
									0x9f, 0xc7, 0x50, 0x0a, 0xd5, 0x3e, 0x85, 0x76, 0xc8, 0xe8, 0x26, 0x8b, 0xbc, 0x39, 0x16, 0x79,
							 | 
						||
| 
								 | 
							
									0xa8, 0xff, 0xc4, 0xf5, 0xe3, 0x28, 0xfb, 0xc1, 0x03, 0x75, 0xb0, 0xbf, 0xfb, 0x7c, 0x67, 0x6b,
							 | 
						||
| 
								 | 
							
									0x67, 0xc7, 0xd8, 0x1d, 0x0c, 0x0c, 0x08, 0xd3, 0x19, 0xfd, 0x00, 0xb4, 0xdd, 0x68, 0x84, 0x03,
							 | 
						||
| 
								 | 
							
									0x1c, 0x4f, 0x5e, 0x57, 0xe7, 0xa2, 0x36, 0x95, 0x33, 0xda, 0xd0, 0x50, 0x4a, 0x58, 0xf5, 0xa0,
							 | 
						||
| 
								 | 
							
									0x21, 0x7e, 0x29, 0x82, 0x32, 0x19, 0xea, 0xf7, 0x60, 0x3e, 0x59, 0x7a, 0x06, 0x58, 0xcd, 0xc0,
							 | 
						||
| 
								 | 
							
									0x2a, 0xc0, 0x57, 0xc4, 0xc7, 0x3b, 0xec, 0xdc, 0xd6, 0xff, 0xaf, 0x02, 0xf0, 0xd4, 0xb3, 0x1c,
							 | 
						||
| 
								 | 
							
									0x3e, 0xa4, 0x09, 0x7c, 0xe2, 0xe2, 0x89, 0xe7, 0x12, 0x3b, 0x49, 0xe0, 0xc9, 0x38, 0x0d, 0x81,
							 | 
						||
| 
								 | 
							
									0x0a, 0x33, 0x6a, 0x49, 0x08, 0x88, 0xad, 0x57, 0x65, 0xbf, 0xa3, 0x9f, 0x3f, 0x2b, 0xad, 0x69,
							 | 
						||
| 
								 | 
							
									0xab, 0xd2, 0x21, 0x32, 0xc7, 0x03, 0x01, 0xbb, 0xc3, 0x31, 0x09, 0x47, 0x65, 0xa7, 0x49, 0x5d,
							 | 
						||
| 
								 | 
							
									0x3e, 0x4d, 0x56, 0xa1, 0x13, 0x1e, 0x13, 0xdf, 0xb4, 0x47, 0xd8, 0x3e, 0x0e, 0xe3, 0x89, 0x28,
							 | 
						||
| 
								 | 
							
									0x41, 0x54, 0x4a, 0xdc, 0x16, 0x34, 0xed, 0x06, 0xb4, 0xe3, 0xcd, 0x23, 0xd3, 0xf6, 0x62, 0x37,
							 | 
						||
| 
								 | 
							
									0xc2, 0x01, 0xab, 0x3b, 0x3a, 0x06, 0xc4, 0x9b, 0x47, 0xdb, 0x9c, 0xa2, 0xff, 0xb6, 0x02, 0x6d,
							 | 
						||
| 
								 | 
							
									0x03, 0x87, 0x38, 0x12, 0x46, 0xb9, 0x05, 0x5d, 0xe1, 0x21, 0x33, 0xb0, 0x5c, 0xc7, 0x9b, 0x88,
							 | 
						||
| 
								 | 
							
									0x33, 0xa3, 0x23, 0xa8, 0x06, 0x23, 0x6a, 0x37, 0xa0, 0x19, 0x46, 0x01, 0x76, 0x87, 0xd1, 0x88,
							 | 
						||
| 
								 | 
							
									0x17, 0x6c, 0x0f, 0xaa, 0x9b, 0x1f, 0x7c, 0x68, 0xa4, 0xc4, 0xd9, 0xd6, 0xa8, 0x9e, 0x63, 0x8d,
							 | 
						||
| 
								 | 
							
									0xb3, 0x07, 0x48, 0xad, 0xec, 0x00, 0xf9, 0x05, 0x46, 0x2b, 0xd8, 0xa3, 0x51, 0xb4, 0x07, 0x05,
							 | 
						||
| 
								 | 
							
									0x30, 0xab, 0x8a, 0x7a, 0x81, 0x17, 0x6a, 0x40, 0x49, 0xbc, 0x5c, 0xa0, 0x85, 0x01, 0xff, 0x12,
							 | 
						||
| 
								 | 
							
									0x41, 0x85, 0xa0, 0x2b, 0xf2, 0x5f, 0x92, 0x64, 0x6f, 0x03, 0x08, 0x0a, 0xcd, 0xb0, 0xb9, 0xa4,
							 | 
						||
| 
								 | 
							
									0xa8, 0xc8, 0x49, 0xf1, 0x4f, 0x15, 0xe8, 0x1a, 0xd8, 0xf6, 0x4e, 0x70, 0x30, 0x15, 0xd6, 0x5f,
							 | 
						||
| 
								 | 
							
									0x06, 0xf8, 0xc6, 0x0b, 0x1c, 0x2e, 0x9f, 0x38, 0xd1, 0x5b, 0x94, 0xc2, 0xc4, 0x9b, 0x6d, 0xd4,
							 | 
						||
| 
								 | 
							
									0xca, 0x1b, 0x19, 0xb5, 0xfa, 0x2a, 0xa3, 0xd6, 0x5e, 0x69, 0xd4, 0x39, 0xd9, 0xa8, 0x1b, 0x80,
							 | 
						||
| 
								 | 
							
									0xb0, 0x7b, 0xe4, 0x05, 0x36, 0x36, 0xa9, 0xac, 0x63, 0x12, 0x46, 0xcc, 0xea, 0x4d, 0x63, 0x5e,
							 | 
						||
| 
								 | 
							
									0xd0, 0xbf, 0x12, 0x64, 0x9a, 0x39, 0x59, 0xca, 0xe1, 0x81, 0xc8, 0xbe, 0x8b, 0x3e, 0x69, 0x9d,
							 | 
						||
| 
								 | 
							
									0xf1, 0xc9, 0x65, 0x68, 0x38, 0xc1, 0xd4, 0x0c, 0x62, 0x97, 0xd5, 0xbd, 0x4d, 0xa3, 0xee, 0x04,
							 | 
						||
| 
								 | 
							
									0x53, 0x23, 0x76, 0xf5, 0xf7, 0xa0, 0x4d, 0x39, 0x27, 0x27, 0xe9, 0x5a, 0xee, 0x24, 0x45, 0x7d,
							 | 
						||
| 
								 | 
							
									0x69, 0x4e, 0x3a, 0x44, 0x97, 0xa1, 0x41, 0x27, 0xa8, 0x6f, 0x34, 0xa8, 0x51, 0x81, 0x45, 0x8a,
							 | 
						||
| 
								 | 
							
									0x61, 0xdf, 0xfa, 0x8f, 0x0a, 0xb4, 0x07, 0x64, 0xe8, 0x3e, 0x13, 0x15, 0xd0, 0xb9, 0x49, 0x2d,
							 | 
						||
| 
								 | 
							
									0x57, 0x43, 0xb0, 0xcc, 0x93, 0x14, 0x4e, 0xb9, 0x14, 0x5f, 0x9d, 0x95, 0xe2, 0x0b, 0x89, 0xb8,
							 | 
						||
| 
								 | 
							
									0xf6, 0xc6, 0x89, 0xf8, 0xbf, 0x15, 0xe8, 0xbc, 0xc0, 0x01, 0x39, 0x9a, 0x26, 0xf2, 0xe6, 0x92,
							 | 
						||
| 
								 | 
							
									0xa1, 0x22, 0x65, 0x4e, 0xed, 0x1a, 0xb4, 0x42, 0x32, 0x74, 0xd9, 0x7d, 0x8c, 0x45, 0x8c, 0x6a,
							 | 
						||
| 
								 | 
							
									0x64, 0x04, 0x59, 0x95, 0x2a, 0x8f, 0xd3, 0x52, 0x55, 0x66, 0x9e, 0xa0, 0xff, 0x0e, 0x48, 0x88,
							 | 
						||
| 
								 | 
							
									0x30, 0x90, 0x79, 0xfe, 0x1c, 0x59, 0xf4, 0x1f, 0x14, 0xba, 0xa9, 0xec, 0x60, 0xea, 0x47, 0x89,
							 | 
						||
| 
								 | 
							
									0x5a, 0x97, 0xa0, 0xee, 0xc7, 0x87, 0xc7, 0x38, 0xd9, 0x45, 0x62, 0x54, 0xac, 0xe2, 0x24, 0xb1,
							 | 
						||
| 
								 | 
							
									0x6f, 0x82, 0x9a, 0x64, 0x32, 0xcf, 0x1d, 0xa7, 0xc7, 0xa7, 0xa0, 0x7d, 0xe1, 0x8e, 0x0b, 0x55,
							 | 
						||
| 
								 | 
							
									0x48, 0xed, 0xbc, 0x43, 0x7a, 0x6e, 0x96, 0xda, 0x2f, 0x00, 0x09, 0x49, 0xb1, 0x93, 0xc8, 0x7a,
							 | 
						||
| 
								 | 
							
									0x11, 0xe6, 0x5c, 0xcf, 0xb5, 0xb1, 0x10, 0x95, 0x0f, 0xce, 0x91, 0x54, 0x83, 0xda, 0x68, 0x62,
							 | 
						||
| 
								 | 
							
									0xd9, 0xc2, 0xee, 0xec, 0x5b, 0xff, 0x1a, 0xba, 0x3b, 0x38, 0x67, 0x81, 0x73, 0x03, 0x31, 0x5d,
							 | 
						||
| 
								 | 
							
									0xb2, 0x32, 0x63, 0xc9, 0x6a, 0xf9, 0x92, 0x35, 0x69, 0xc9, 0x3d, 0x40, 0x62, 0xc9, 0x4c, 0x95,
							 | 
						||
| 
								 | 
							
									0x42, 0xad, 0x2d, 0x71, 0x90, 0x7c, 0x5b, 0xc9, 0xf9, 0x56, 0xff, 0xb3, 0x02, 0xdd, 0x6d, 0xe2,
							 | 
						||
| 
								 | 
							
									0x8f, 0x70, 0xf0, 0x39, 0x9e, 0xbe, 0xb0, 0xc6, 0xf1, 0x2b, 0x64, 0x47, 0x50, 0xa5, 0x7e, 0xe5,
							 | 
						||
| 
								 | 
							
									0x5c, 0xe8, 0x27, 0xd5, 0xe6, 0x84, 0xfe, 0x4e, 0x48, 0xcd, 0x07, 0x3c, 0x93, 0x32, 0xf9, 0xc4,
							 | 
						||
| 
								 | 
							
									0xb1, 0x90, 0x0c, 0xb5, 0x35, 0xe8, 0x5a, 0xe1, 0xb1, 0xe9, 0xb9, 0x66, 0x02, 0xe0, 0x77, 0x7a,
							 | 
						||
| 
								 | 
							
									0xd5, 0x0a, 0x8f, 0xbf, 0x70, 0x77, 0xcf, 0xa0, 0x1c, 0xae, 0xa6, 0x48, 0x52, 0x1c, 0x25, 0x54,
							 | 
						||
| 
								 | 
							
									0xd7, 0xba, 0x50, 0x21, 0x27, 0xec, 0x60, 0x50, 0x8d, 0x0a, 0x39, 0xd1, 0xd7, 0x01, 0x71, 0x65,
							 | 
						||
| 
								 | 
							
									0xb0, 0x93, 0xaa, 0x93, 0xca, 0xa7, 0x48, 0xf2, 0xe9, 0xff, 0x05, 0xdd, 0xdd, 0x30, 0x22, 0x13,
							 | 
						||
| 
								 | 
							
									0x2b, 0xc2, 0x07, 0xa7, 0x03, 0xf2, 0x12, 0xd3, 0x23, 0xda, 0x8b, 0x23, 0x3f, 0x8e, 0xc2, 0x34,
							 | 
						||
| 
								 | 
							
									0xa3, 0xd3, 0xc2, 0x59, 0x15, 0x44, 0x9e, 0xd4, 0x6f, 0x82, 0x4a, 0x5c, 0x09, 0x53, 0x61, 0x98,
							 | 
						||
| 
								 | 
							
									0x36, 0xa7, 0x71, 0xc8, 0x6b, 0x25, 0x13, 0xfd, 0x26, 0xd4, 0xc5, 0xba, 0x97, 0xa1, 0x11, 0x9d,
							 | 
						||
| 
								 | 
							
									0x9a, 0xa2, 0x54, 0xa7, 0xd9, 0xb4, 0x1e, 0xb1, 0x09, 0xfd, 0xf7, 0x0a, 0xd4, 0xe9, 0xf6, 0x3c,
							 | 
						||
| 
								 | 
							
									0x38, 0xfd, 0xc7, 0xca, 0xa6, 0x5d, 0x85, 0x46, 0xae, 0x2b, 0xf3, 0x40, 0x79, 0xd7, 0x48, 0x28,
							 | 
						||
| 
								 | 
							
									0xda, 0x75, 0x68, 0x8d, 0x3d, 0xfb, 0xd8, 0x8c, 0x88, 0xd8, 0x69, 0x9d, 0x07, 0xca, 0x3b, 0x46,
							 | 
						||
| 
								 | 
							
									0x93, 0xd2, 0x0e, 0xc8, 0x04, 0xeb, 0x7f, 0x53, 0x40, 0x1d, 0x90, 0x89, 0x3f, 0xc6, 0x42, 0xf6,
							 | 
						||
| 
								 | 
							
									0x35, 0xa8, 0x73, 0x11, 0x58, 0x2c, 0xb5, 0x37, 0xd5, 0xfe, 0xc1, 0x29, 0xcb, 0x99, 0x2c, 0xcd,
							 | 
						||
| 
								 | 
							
									0x8b, 0x39, 0xed, 0x0e, 0x34, 0x84, 0x32, 0xbd, 0x0a, 0x83, 0x75, 0xfa, 0x07, 0xa7, 0x5f, 0x30,
							 | 
						||
| 
								 | 
							
									0x0a, 0xc3, 0x25, 0xb3, 0xda, 0xfb, 0xa0, 0x46, 0x81, 0xe5, 0x86, 0x16, 0x3b, 0x09, 0xc3, 0x5e,
							 | 
						||
| 
								 | 
							
									0x95, 0xa1, 0x51, 0xff, 0x20, 0x23, 0xb2, 0x1f, 0xe4, 0x50, 0xaf, 0x97, 0x16, 0x65, 0xc5, 0xe7,
							 | 
						||
| 
								 | 
							
									0xce, 0x57, 0xbc, 0x7e, 0x56, 0xf1, 0x5f, 0x2b, 0xd0, 0x3a, 0x48, 0x2f, 0x8a, 0xf7, 0x41, 0x0d,
							 | 
						||
| 
								 | 
							
									0xf8, 0xa7, 0x29, 0x1d, 0x73, 0x6a, 0x5f, 0x3e, 0xe2, 0xda, 0x41, 0x36, 0xd0, 0xee, 0x43, 0xc3,
							 | 
						||
| 
								 | 
							
									0xc1, 0x91, 0x45, 0xc6, 0xa1, 0xa8, 0x63, 0x17, 0xfb, 0x29, 0xb7, 0x1d, 0x3e, 0xc1, 0x0d, 0x21,
							 | 
						||
| 
								 | 
							
									0x50, 0xda, 0x47, 0x00, 0x21, 0x0e, 0x92, 0x36, 0x51, 0x95, 0xfd, 0xa6, 0x97, 0xfd, 0x66, 0x90,
							 | 
						||
| 
								 | 
							
									0xce, 0xb1, 0x9f, 0x49, 0x58, 0x7d, 0x03, 0xe6, 0x0e, 0xd8, 0x95, 0x74, 0x05, 0x2a, 0xd1, 0x29,
							 | 
						||
| 
								 | 
							
									0x13, 0xad, 0xcc, 0x82, 0x95, 0xe8, 0x54, 0xff, 0xdf, 0x0a, 0x74, 0x93, 0x0a, 0x5e, 0xf8, 0xf3,
							 | 
						||
| 
								 | 
							
									0x67, 0xa4, 0xb6, 0xab, 0xd0, 0x1a, 0x5a, 0xa1, 0xe9, 0x07, 0xc4, 0x4e, 0xd2, 0x44, 0x73, 0x68,
							 | 
						||
| 
								 | 
							
									0x85, 0xfb, 0x74, 0x9c, 0x4c, 0x8e, 0xc9, 0x84, 0x44, 0x22, 0xc5, 0xd1, 0xc9, 0xa7, 0x74, 0x4c,
							 | 
						||
| 
								 | 
							
									0x37, 0x78, 0xe4, 0x31, 0x67, 0xa8, 0x46, 0x25, 0xf2, 0xb2, 0xcd, 0x5c, 0x97, 0x93, 0xcd, 0x5b,
							 | 
						||
| 
								 | 
							
									0xa0, 0xd1, 0xeb, 0xbb, 0x29, 0x9a, 0x64, 0xa6, 0x3d, 0x8a, 0xdd, 0x63, 0x91, 0x16, 0x10, 0x9d,
							 | 
						||
| 
								 | 
							
									0x11, 0x6d, 0xcf, 0x6d, 0x4a, 0xa7, 0x25, 0x0c, 0x43, 0x8f, 0x79, 0x45, 0x2c, 0xca, 0x6c, 0x4a,
							 | 
						||
| 
								 | 
							
									0x7a, 0xca, 0xcb, 0xe1, 0x2b, 0xd0, 0xb4, 0x47, 0x16, 0x71, 0x4d, 0xe2, 0x88, 0x02, 0xa7, 0xc1,
							 | 
						||
| 
								 | 
							
									0xc6, 0x4f, 0x1c, 0xfd, 0xff, 0x15, 0x58, 0x48, 0xec, 0x91, 0x39, 0xbb, 0xc0, 0x51, 0x39, 0xc3,
							 | 
						||
| 
								 | 
							
									0x91, 0x16, 0xaa, 0xc9, 0x81, 0x69, 0x9e, 0x88, 0xae, 0x29, 0xa4, 0xa4, 0x17, 0x79, 0x40, 0x20,
							 | 
						||
| 
								 | 
							
									0x6c, 0x94, 0x01, 0x8c, 0x3c, 0x20, 0x4c, 0x1a, 0x4d, 0x29, 0x69, 0xa0, 0xf7, 0xa1, 0x93, 0x09,
							 | 
						||
| 
								 | 
							
									0x46, 0x9d, 0xbb, 0x0c, 0x4c, 0x02, 0x61, 0x0c, 0x9e, 0xfc, 0x5a, 0x94, 0xc2, 0xac, 0xa0, 0x3f,
							 | 
						||
| 
								 | 
							
									0x85, 0x0b, 0xb2, 0x63, 0x7f, 0x59, 0x05, 0xa5, 0x13, 0x58, 0x4c, 0xb8, 0x9d, 0x5b, 0xe1, 0xa8,
							 | 
						||
| 
								 | 
							
									0xbf, 0xb8, 0xc2, 0xd1, 0x0d, 0xe8, 0x25, 0x4b, 0xbd, 0xaa, 0x86, 0x79, 0xdd, 0xd5, 0xf4, 0x9f,
							 | 
						||
| 
								 | 
							
									0x58, 0xd2, 0x1a, 0xba, 0x4f, 0x1c, 0xec, 0x46, 0x24, 0x9a, 0x6a, 0x1b, 0xd0, 0x24, 0xe2, 0x5b,
							 | 
						||
| 
								 | 
							
									0xec, 0x8f, 0x4e, 0x3f, 0x99, 0xe4, 0xf7, 0x73, 0x92, 0x41, 0x91, 0x3d, 0xb2, 0xc6, 0xd4, 0xf7,
							 | 
						||
| 
								 | 
							
									0xd8, 0x1c, 0x11, 0xc7, 0xc1, 0xae, 0x58, 0x60, 0x3e, 0xa5, 0x3f, 0x66, 0xe4, 0x3c, 0xf4, 0x84,
							 | 
						||
| 
								 | 
							
									0x84, 0xb1, 0x35, 0x16, 0x97, 0xd2, 0x0c, 0xfa, 0x82, 0x91, 0x4b, 0xdb, 0x2a, 0xb5, 0xb2, 0xb6,
							 | 
						||
| 
								 | 
							
									0x8a, 0x3e, 0x84, 0x2e, 0x15, 0x1d, 0x3b, 0xa9, 0xf0, 0xb3, 0x2b, 0xb9, 0x65, 0x00, 0x9f, 0x75,
							 | 
						||
| 
								 | 
							
									0x4e, 0xcc, 0xe4, 0x10, 0x57, 0x8d, 0x96, 0x9f, 0xf6, 0x52, 0x72, 0x46, 0xaa, 0x16, 0x8d, 0xf4,
							 | 
						||
| 
								 | 
							
									0xad, 0x02, 0x0b, 0x8f, 0x70, 0xb4, 0xbb, 0xbd, 0xf3, 0x58, 0x34, 0x5a, 0xe9, 0x6f, 0xde, 0xc0,
							 | 
						||
| 
								 | 
							
									0x52, 0xb7, 0x61, 0xde, 0xc7, 0x38, 0x30, 0xcf, 0x88, 0xd0, 0xa1, 0xe4, 0xac, 0xa5, 0x53, 0xa6,
							 | 
						||
| 
								 | 
							
									0x7b, 0xb5, 0x54, 0xf7, 0x77, 0xa1, 0x5b, 0x10, 0x87, 0xee, 0x13, 0x3e, 0x32, 0xb3, 0xfa, 0x13,
							 | 
						||
| 
								 | 
							
									0xc2, 0x14, 0xa0, 0xbf, 0x03, 0x9d, 0x01, 0x8e, 0xbe, 0xdc, 0xdc, 0x93, 0x2e, 0x91, 0xf2, 0x8d,
							 | 
						||
| 
								 | 
							
									0x46, 0x39, 0x73, 0xeb, 0xbe, 0x03, 0x9d, 0x3d, 0xd1, 0xa9, 0xde, 0x65, 0x3d, 0xdf, 0x4b, 0x50,
							 | 
						||
| 
								 | 
							
									0xcf, 0xed, 0x74, 0x31, 0xd2, 0xb7, 0x60, 0x3e, 0x01, 0x26, 0x99, 0xe1, 0x12, 0xd4, 0xbd, 0xa3,
							 | 
						||
| 
								 | 
							
									0xa3, 0x10, 0x27, 0xf7, 0x43, 0x31, 0x92, 0x58, 0x54, 0x72, 0x2c, 0x3e, 0x81, 0x6e, 0xc2, 0xe2,
							 | 
						||
| 
								 | 
							
									0x4b, 0x7f, 0xec, 0x59, 0x0e, 0x75, 0xa6, 0x6f, 0x4d, 0xe9, 0x67, 0xd2, 0x2f, 0x11, 0x43, 0x56,
							 | 
						||
| 
								 | 
							
									0x16, 0x5a, 0xe1, 0x48, 0xd8, 0x90, 0x7d, 0xeb, 0x6b, 0xd0, 0x1c, 0xe0, 0xf1, 0xd1, 0x01, 0x5d,
							 | 
						||
| 
								 | 
							
									0x3b, 0xf7, 0x4b, 0x45, 0xfa, 0xa5, 0x7e, 0x17, 0x16, 0x76, 0xf0, 0x61, 0x3c, 0x7c, 0x4a, 0xdc,
							 | 
						||
| 
								 | 
							
									0xe3, 0x1d, 0x6c, 0xf3, 0x97, 0x83, 0x45, 0xa8, 0x4f, 0x71, 0x68, 0xba, 0x1e, 0x5b, 0xa7, 0x69,
							 | 
						||
| 
								 | 
							
									0xcc, 0x4d, 0x71, 0xf8, 0xdc, 0xd3, 0x2f, 0x48, 0xd8, 0x47, 0x38, 0x1a, 0x44, 0x56, 0x84, 0xf5,
							 | 
						||
| 
								 | 
							
									0xbf, 0x54, 0x68, 0xc5, 0x2b, 0xa8, 0x8c, 0xc4, 0x34, 0xb2, 0xa6, 0x5e, 0x1c, 0x25, 0x35, 0x3f,
							 | 
						||
| 
								 | 
							
									0x1f, 0x25, 0xbd, 0x97, 0x4a, 0xd6, 0x7b, 0xb9, 0x04, 0xf5, 0x09, 0xeb, 0x8a, 0x0a, 0xa7, 0x8a,
							 | 
						||
| 
								 | 
							
									0x51, 0xae, 0xc5, 0x53, 0x9b, 0xd1, 0xe2, 0x99, 0x9b, 0xd5, 0xe2, 0x99, 0x79, 0xdb, 0xae, 0x9f,
							 | 
						||
| 
								 | 
							
									0x73, 0xdb, 0x5e, 0x06, 0x08, 0x70, 0x88, 0x23, 0x76, 0x13, 0x66, 0xe7, 0x45, 0xcb, 0x68, 0x31,
							 | 
						||
| 
								 | 
							
									0x0a, 0xbd, 0x74, 0xd2, 0xaa, 0x8b, 0x4f, 0x27, 0x3d, 0x81, 0x26, 0xd3, 0x4c, 0x65, 0xc4, 0xa4,
							 | 
						||
| 
								 | 
							
									0x8f, 0xfa, 0x16, 0x68, 0x81, 0xe8, 0x0b, 0x98, 0x47, 0xd6, 0x31, 0xbf, 0x55, 0x8b, 0xb7, 0x20,
							 | 
						||
| 
								 | 
							
									0x94, 0xcc, 0xec, 0x59, 0xc7, 0xec, 0x5a, 0xad, 0xdd, 0x85, 0x85, 0x14, 0xcd, 0x9a, 0x07, 0xbe,
							 | 
						||
| 
								 | 
							
									0x17, 0xb2, 0x7b, 0x72, 0xc7, 0x98, 0x4f, 0x26, 0x28, 0x70, 0xdf, 0x0b, 0xf5, 0x79, 0xe8, 0x48,
							 | 
						||
| 
								 | 
							
									0x36, 0xf6, 0x7c, 0x7d, 0x1f, 0xd4, 0x94, 0xf0, 0xd4, 0x1b, 0xb2, 0x0b, 0x3e, 0x3e, 0xc1, 0xe3,
							 | 
						||
| 
								 | 
							
									0xe4, 0x35, 0x81, 0x0d, 0xa8, 0x79, 0x0f, 0x63, 0xfb, 0x18, 0x47, 0xc2, 0xe6, 0x62, 0xc4, 0x6e,
							 | 
						||
| 
								 | 
							
									0xf3, 0xf8, 0x34, 0x12, 0x46, 0x67, 0xdf, 0xfa, 0x23, 0xb8, 0x90, 0x72, 0x7c, 0x86, 0x27, 0x5e,
							 | 
						||
| 
								 | 
							
									0x30, 0x35, 0x30, 0x8f, 0x39, 0x39, 0x81, 0x74, 0xb2, 0x04, 0x32, 0x2b, 0x6e, 0x37, 0x60, 0xbe,
							 | 
						||
| 
								 | 
							
									0xc0, 0x88, 0xb9, 0x99, 0x7d, 0x25, 0x01, 0xc1, 0x47, 0xfa, 0x7f, 0xc0, 0xc5, 0x02, 0xf4, 0xab,
							 | 
						||
| 
								 | 
							
									0x80, 0x44, 0xf8, 0xfc, 0x45, 0x05, 0xa7, 0x8a, 0xcc, 0x49, 0xbc, 0xa6, 0x84, 0x23, 0x71, 0x5b,
							 | 
						||
| 
								 | 
							
									0xe4, 0x03, 0xfd, 0x6d, 0x49, 0xa7, 0x3d, 0x4a, 0x49, 0x37, 0x6d, 0x88, 0xed, 0xc8, 0x4b, 0x76,
							 | 
						||
| 
								 | 
							
									0xb8, 0x18, 0xdd, 0xfd, 0x71, 0x11, 0xda, 0xe2, 0x1c, 0x61, 0x75, 0xd8, 0x0a, 0x5c, 0x92, 0x86,
							 | 
						||
| 
								 | 
							
									0x66, 0xf6, 0x60, 0x8a, 0xfe, 0x69, 0xa9, 0xf6, 0xed, 0x1f, 0x7a, 0x8a, 0xb6, 0x94, 0x5e, 0x9e,
							 | 
						||
| 
								 | 
							
									0x19, 0x62, 0x9f, 0xb8, 0x43, 0xa4, 0x88, 0xb9, 0x65, 0xb8, 0x20, 0xcf, 0x89, 0x57, 0x10, 0x54,
							 | 
						||
| 
								 | 
							
									0x59, 0xaa, 0x7d, 0x57, 0x32, 0x2d, 0xde, 0x39, 0x50, 0x55, 0x4c, 0xdf, 0x80, 0x45, 0x79, 0x3a,
							 | 
						||
| 
								 | 
							
									0x7d, 0x14, 0x42, 0x35, 0xc1, 0xbe, 0x20, 0x5c, 0xd6, 0x2e, 0x45, 0x73, 0x02, 0x71, 0x07, 0xae,
							 | 
						||
| 
								 | 
							
									0xe4, 0x56, 0x90, 0x13, 0x17, 0xaa, 0x2f, 0x35, 0x29, 0xe8, 0x8f, 0x14, 0xb8, 0x0e, 0x4b, 0x65,
							 | 
						||
| 
								 | 
							
									0x40, 0x9e, 0x75, 0x50, 0x43, 0x42, 0x6e, 0xc0, 0xd5, 0x32, 0xa4, 0x48, 0x71, 0xa8, 0xb9, 0xd4,
							 | 
						||
| 
								 | 
							
									0xfc, 0x2e, 0x81, 0x16, 0xe4, 0xcb, 0x5e, 0x23, 0x50, 0xab, 0xdc, 0x40, 0xc9, 0x34, 0x08, 0x0b,
							 | 
						||
| 
								 | 
							
									0xe8, 0xd0, 0x2b, 0x30, 0x48, 0x8f, 0x05, 0xd4, 0x16, 0x2c, 0x0a, 0x56, 0xca, 0x00, 0xaa, 0x60,
							 | 
						||
| 
								 | 
							
									0x52, 0x90, 0x22, 0xeb, 0x22, 0xa3, 0x8e, 0x60, 0x71, 0x13, 0x2e, 0xcb, 0x08, 0xa9, 0xa7, 0x8a,
							 | 
						||
| 
								 | 
							
									0xba, 0x02, 0x72, 0x0d, 0xb4, 0x9c, 0x27, 0x59, 0xf1, 0x8b, 0xe6, 0xc5, 0xec, 0x5a, 0x5e, 0x4e,
							 | 
						||
| 
								 | 
							
									0xf9, 0xc2, 0x83, 0xd0, 0x52, 0x9d, 0x62, 0x9a, 0x8a, 0x76, 0x1d, 0x2e, 0xe6, 0x2c, 0x27, 0x9e,
							 | 
						||
| 
								 | 
							
									0xd7, 0xd1, 0x82, 0x10, 0xf4, 0x36, 0x5c, 0x2b, 0x44, 0x52, 0xee, 0x31, 0x09, 0x69, 0x29, 0xae,
							 | 
						||
| 
								 | 
							
									0x57, 0x8a, 0xdb, 0xb2, 0x8f, 0xd1, 0x05, 0xee, 0xa9, 0xdf, 0x95, 0xc8, 0xcc, 0x1f, 0x97, 0xd0,
							 | 
						||
| 
								 | 
							
									0xc5, 0x72, 0xbb, 0xa5, 0xe5, 0x2b, 0x5a, 0x14, 0xcb, 0x5c, 0x85, 0x85, 0x3c, 0x80, 0xf2, 0xbf,
							 | 
						||
| 
								 | 
							
									0x94, 0x6a, 0x9c, 0x8b, 0x97, 0x7c, 0xcf, 0x00, 0x5d, 0x16, 0xa8, 0x82, 0xff, 0xe4, 0x57, 0x59,
							 | 
						||
| 
								 | 
							
									0xd4, 0x13, 0x98, 0xd5, 0x7c, 0x88, 0xe6, 0x1e, 0x6a, 0xd1, 0x95, 0x72, 0x50, 0xee, 0x11, 0x0f,
							 | 
						||
| 
								 | 
							
									0x2d, 0x09, 0x81, 0x57, 0xf3, 0x1a, 0xa5, 0x4f, 0x77, 0xe8, 0xaa, 0x64, 0x94, 0x42, 0x34, 0x64,
							 | 
						||
| 
								 | 
							
									0xaf, 0xb1, 0xe8, 0x5a, 0xf9, 0xae, 0xca, 0x1e, 0x49, 0xd0, 0x72, 0x79, 0xd4, 0x26, 0xd3, 0xd7,
							 | 
						||
| 
								 | 
							
									0xd3, 0xa8, 0xcd, 0xf9, 0x39, 0x39, 0x81, 0xd1, 0x8a, 0xb4, 0x8b, 0x0a, 0x96, 0x91, 0xdb, 0xd2,
							 | 
						||
| 
								 | 
							
									0x48, 0x2f, 0xb7, 0x71, 0xbe, 0x55, 0x8d, 0x56, 0xcb, 0xc3, 0x3b, 0x6b, 0x5f, 0xa3, 0xb5, 0xf2,
							 | 
						||
| 
								 | 
							
									0xf0, 0x96, 0xea, 0x7b, 0x74, 0xbb, 0xdc, 0xbe, 0xb9, 0xa2, 0x1d, 0xdd, 0x11, 0xa0, 0x42, 0x7c,
							 | 
						||
| 
								 | 
							
									0x16, 0xcb, 0x6d, 0xb4, 0x2e, 0x24, 0xba, 0x03, 0xcb, 0xb9, 0xf8, 0x2c, 0x3e, 0x65, 0xa2, 0x8d,
							 | 
						||
| 
								 | 
							
									0x14, 0x78, 0xa5, 0x1c, 0x48, 0xa5, 0xbf, 0x2b, 0x39, 0xed, 0x76, 0xc1, 0x12, 0xb9, 0x56, 0x0d,
							 | 
						||
| 
								 | 
							
									0xba, 0x27, 0xed, 0x30, 0x2d, 0x1f, 0xb2, 0x6c, 0xfe, 0xad, 0xa5, 0xfa, 0x77, 0x7c, 0xbe, 0x60,
							 | 
						||
| 
								 | 
							
									0xd1, 0x7c, 0x07, 0x1f, 0xbd, 0x5d, 0x6e, 0x2f, 0xa9, 0x15, 0x8d, 0xfa, 0xe5, 0x99, 0x5b, 0x34,
							 | 
						||
| 
								 | 
							
									0xa5, 0xd1, 0xfd, 0x72, 0x4b, 0x15, 0x9b, 0x50, 0xe8, 0x9d, 0x74, 0x27, 0x17, 0x3c, 0x2c, 0x77,
							 | 
						||
| 
								 | 
							
									0x0d, 0xd1, 0xbb, 0xa9, 0x5e, 0xeb, 0x79, 0x7e, 0xc5, 0xae, 0x25, 0xda, 0x4c, 0x35, 0x2c, 0x70,
							 | 
						||
| 
								 | 
							
									0xcc, 0xf7, 0x21, 0xd1, 0x7b, 0xb3, 0x38, 0x16, 0x9b, 0x87, 0xe8, 0xfd, 0x94, 0xa3, 0x5e, 0xcc,
							 | 
						||
| 
								 | 
							
									0x6d, 0xd9, 0xbd, 0x08, 0x7d, 0x50, 0x1e, 0xa9, 0xf9, 0x0b, 0x08, 0xfa, 0x50, 0x68, 0x5b, 0xb0,
							 | 
						||
| 
								 | 
							
									0xab, 0xf4, 0xef, 0x46, 0xe8, 0x9f, 0x05, 0xa3, 0x75, 0xb8, 0x9e, 0x53, 0xf4, 0xcc, 0x43, 0x25,
							 | 
						||
| 
								 | 
							
									0xfa, 0x48, 0x20, 0x6f, 0xe5, 0x8f, 0xa1, 0xc2, 0xbb, 0x22, 0xfa, 0x17, 0xb1, 0x66, 0x71, 0x0f,
							 | 
						||
| 
								 | 
							
									0xe5, 0x9a, 0x17, 0xe8, 0x41, 0x7a, 0x4c, 0x2e, 0x97, 0xa1, 0xb2, 0x9c, 0xf8, 0xaf, 0x69, 0x8a,
							 | 
						||
| 
								 | 
							
									0xb9, 0x52, 0x0e, 0xa4, 0xde, 0xff, 0xb7, 0x72, 0x6e, 0x67, 0x2e, 0x49, 0xe8, 0xe3, 0x19, 0x1b,
							 | 
						||
| 
								 | 
							
									0x3c, 0x8f, 0xfa, 0xa4, 0x7c, 0xcd, 0xdc, 0x75, 0x05, 0x7d, 0x2a, 0x58, 0x6d, 0xc0, 0x8d, 0x59,
							 | 
						||
| 
								 | 
							
									0x7a, 0x26, 0x2e, 0xfd, 0x4c, 0x40, 0xef, 0xc1, 0xcd, 0x32, 0x68, 0x7e, 0xcf, 0x6f, 0x09, 0x70,
							 | 
						||
| 
								 | 
							
									0x1f, 0xd6, 0xca, 0xc0, 0x67, 0xf6, 0xfe, 0x43, 0x21, 0xec, 0xbd, 0xbc, 0xee, 0x67, 0xee, 0x15,
							 | 
						||
| 
								 | 
							
									0xc8, 0x59, 0x6a, 0x7e, 0x9f, 0x6c, 0xeb, 0x3b, 0x33, 0xc0, 0xc9, 0xc5, 0x02, 0xe1, 0xa5, 0xda,
							 | 
						||
| 
								 | 
							
									0xf7, 0x25, 0x86, 0xca, 0xdf, 0x35, 0xd0, 0xd1, 0x52, 0xed, 0x87, 0x12, 0x43, 0xe5, 0xaa, 0x65,
							 | 
						||
| 
								 | 
							
									0x34, 0x14, 0xac, 0x0a, 0xe1, 0x2c, 0x57, 0xd0, 0x68, 0x24, 0x18, 0x15, 0x8c, 0x59, 0x52, 0x13,
							 | 
						||
| 
								 | 
							
									0x23, 0x57, 0xb0, 0x2b, 0x84, 0x61, 0x01, 0x8a, 0x3c, 0xc1, 0xf1, 0x2e, 0xac, 0x9c, 0x03, 0x63,
							 | 
						||
| 
								 | 
							
									0x15, 0x2f, 0xf2, 0x05, 0xcb, 0x59, 0xab, 0x67, 0xd5, 0x2b, 0xfa, 0x9a, 0x43, 0x1f, 0xbe, 0x0f,
							 | 
						||
| 
								 | 
							
									0xab, 0xb6, 0x37, 0xe9, 0x87, 0x56, 0xe4, 0x85, 0x23, 0x32, 0xb6, 0x0e, 0xc3, 0x7e, 0x14, 0xe0,
							 | 
						||
| 
								 | 
							
									0x97, 0x5e, 0xd0, 0x1f, 0x93, 0x43, 0xfe, 0x6f, 0x7e, 0x87, 0xf1, 0xd1, 0xc3, 0xce, 0x01, 0x23,
							 | 
						||
| 
								 | 
							
									0x0a, 0xae, 0x7f, 0x0f, 0x00, 0x00, 0xff, 0xff, 0x2a, 0xe4, 0xc0, 0x85, 0x16, 0x28, 0x00, 0x00,
							 | 
						||
| 
								 | 
							
								}
							 |