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

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

_sym_db = _symbol_database.Default()


import qrl.generated.qrl_pb2 as qrl__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='qrlwallet.proto',
  package='qrl',
  syntax='proto3',
  serialized_pb=_b('\n\x0fqrlwallet.proto\x12\x03qrl\x1a\tqrl.proto\"9\n\x10\x41\x64\x64NewAddressReq\x12\x0e\n\x06height\x18\x01 \x01(\x04\x12\x15\n\rhash_function\x18\x02 \x01(\t\"A\n\x11\x41\x64\x64NewAddressResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\"]\n\x1a\x41\x64\x64NewAddressWithSlavesReq\x12\x0e\n\x06height\x18\x01 \x01(\x04\x12\x18\n\x10number_of_slaves\x18\x02 \x01(\x04\x12\x15\n\rhash_function\x18\x03 \x01(\t\"%\n\x15\x41\x64\x64\x41\x64\x64ressFromSeedReq\x12\x0c\n\x04seed\x18\x01 \x01(\t\"F\n\x16\x41\x64\x64\x41\x64\x64ressFromSeedResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\"\x12\n\x10ListAddressesReq\"C\n\x11ListAddressesResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x11\n\taddresses\x18\x03 \x03(\t\"#\n\x10RemoveAddressReq\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"0\n\x11RemoveAddressResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\"\"\n\x0fValidAddressReq\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\">\n\x10ValidAddressResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\r\n\x05valid\x18\x03 \x01(\t\"&\n\x10\x45ncryptWalletReq\x12\x12\n\npassphrase\x18\x01 \x01(\t\"0\n\x11\x45ncryptWalletResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\"%\n\x0fUnlockWalletReq\x12\x12\n\npassphrase\x18\x01 \x01(\t\"/\n\x10UnlockWalletResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\"\x0f\n\rLockWalletReq\"-\n\x0eLockWalletResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\"&\n\x13GetRecoverySeedsReq\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"V\n\x14GetRecoverySeedsResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07hexseed\x18\x03 \x01(\t\x12\x10\n\x08mnemonic\x18\x04 \x01(\t\"\x12\n\x10GetWalletInfoReq\"n\n\x11GetWalletInfoResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\r\x12\x15\n\raddress_count\x18\x04 \x01(\x04\x12\x14\n\x0cis_encrypted\x18\x05 \x01(\x08\"\x8c\x01\n\x13RelayTransferTxnReq\x12\x14\n\x0c\x61\x64\x64resses_to\x18\x01 \x03(\t\x12\x0f\n\x07\x61mounts\x18\x02 \x03(\x04\x12\x0b\n\x03\x66\x65\x65\x18\x03 \x01(\x04\x12\x16\n\x0emaster_address\x18\x04 \x01(\t\x12\x16\n\x0esigner_address\x18\x05 \x01(\t\x12\x11\n\tots_index\x18\x06 \x01(\x04\"h\n\x1aRelayTransferTxnBySlaveReq\x12\x14\n\x0c\x61\x64\x64resses_to\x18\x01 \x03(\t\x12\x0f\n\x07\x61mounts\x18\x02 \x03(\x04\x12\x0b\n\x03\x66\x65\x65\x18\x03 \x01(\x04\x12\x16\n\x0emaster_address\x18\x04 \x01(\t\"u\n\x12RelayMessageTxnReq\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x0b\n\x03\x66\x65\x65\x18\x02 \x01(\x04\x12\x16\n\x0emaster_address\x18\x03 \x01(\t\x12\x16\n\x0esigner_address\x18\x04 \x01(\t\x12\x11\n\tots_index\x18\x05 \x01(\x04\"Q\n\x19RelayMessageTxnBySlaveReq\x12\x0f\n\x07message\x18\x01 \x01(\t\x12\x0b\n\x03\x66\x65\x65\x18\x02 \x01(\x04\x12\x16\n\x0emaster_address\x18\x03 \x01(\t\"\xc5\x01\n\x10RelayTokenTxnReq\x12\x0e\n\x06symbol\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05owner\x18\x03 \x01(\t\x12\x10\n\x08\x64\x65\x63imals\x18\x04 \x01(\x04\x12\x11\n\taddresses\x18\x05 \x03(\t\x12\x0f\n\x07\x61mounts\x18\x06 \x03(\x04\x12\x0b\n\x03\x66\x65\x65\x18\x07 \x01(\x04\x12\x16\n\x0emaster_address\x18\x08 \x01(\t\x12\x16\n\x0esigner_address\x18\t \x01(\t\x12\x11\n\tots_index\x18\n \x01(\x04\"\xa1\x01\n\x17RelayTokenTxnBySlaveReq\x12\x0e\n\x06symbol\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05owner\x18\x03 \x01(\t\x12\x10\n\x08\x64\x65\x63imals\x18\x04 \x01(\x04\x12\x11\n\taddresses\x18\x05 \x03(\t\x12\x0f\n\x07\x61mounts\x18\x06 \x03(\x04\x12\x0b\n\x03\x66\x65\x65\x18\x07 \x01(\x04\x12\x16\n\x0emaster_address\x18\x08 \x01(\t\"\xa7\x01\n\x18RelayTransferTokenTxnReq\x12\x14\n\x0c\x61\x64\x64resses_to\x18\x01 \x03(\t\x12\x14\n\x0ctoken_txhash\x18\x02 \x01(\t\x12\x0f\n\x07\x61mounts\x18\x03 \x03(\x04\x12\x0b\n\x03\x66\x65\x65\x18\x04 \x01(\x04\x12\x16\n\x0emaster_address\x18\x05 \x01(\t\x12\x16\n\x0esigner_address\x18\x06 \x01(\t\x12\x11\n\tots_index\x18\x07 \x01(\x04\"\x83\x01\n\x1fRelayTransferTokenTxnBySlaveReq\x12\x14\n\x0c\x61\x64\x64resses_to\x18\x01 \x03(\t\x12\x14\n\x0ctoken_txhash\x18\x02 \x01(\t\x12\x0f\n\x07\x61mounts\x18\x03 \x03(\x04\x12\x0b\n\x03\x66\x65\x65\x18\x04 \x01(\x04\x12\x16\n\x0emaster_address\x18\x05 \x01(\t\"\x8b\x01\n\x10RelaySlaveTxnReq\x12\x11\n\tslave_pks\x18\x01 \x03(\x0c\x12\x14\n\x0c\x61\x63\x63\x65ss_types\x18\x02 \x03(\r\x12\x0b\n\x03\x66\x65\x65\x18\x03 \x01(\x04\x12\x16\n\x0emaster_address\x18\x04 \x01(\t\x12\x16\n\x0esigner_address\x18\x05 \x01(\t\x12\x11\n\tots_index\x18\x06 \x01(\x04\"g\n\x17RelaySlaveTxnBySlaveReq\x12\x11\n\tslave_pks\x18\x01 \x03(\x0c\x12\x14\n\x0c\x61\x63\x63\x65ss_types\x18\x02 \x03(\r\x12\x0b\n\x03\x66\x65\x65\x18\x03 \x01(\x04\x12\x16\n\x0emaster_address\x18\x04 \x01(\t\"N\n\x0cRelayTxnResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12!\n\x02tx\x18\x03 \x01(\x0b\x32\x15.qrl.PlainTransaction\"C\n\x13\x43hangePassphraseReq\x12\x15\n\roldPassphrase\x18\x01 \x01(\t\x12\x15\n\rnewPassphrase\x18\x02 \x01(\t\"3\n\x14\x43hangePassphraseResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\"+\n\x18TransactionsByAddressReq\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"z\n\x19TransactionsByAddressResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12/\n\x11mini_transactions\x18\x03 \x03(\x0b\x32\x14.qrl.MiniTransaction\x12\x0f\n\x07\x62\x61lance\x18\x04 \x01(\x04\"!\n\x0eTransactionReq\x12\x0f\n\x07tx_hash\x18\x01 \x01(\t\"\x99\x01\n\x0fTransactionResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12!\n\x02tx\x18\x03 \x01(\x0b\x32\x15.qrl.PlainTransaction\x12\x15\n\rconfirmations\x18\x04 \x01(\t\x12\x14\n\x0c\x62lock_number\x18\x05 \x01(\x04\x12\x19\n\x11\x62lock_header_hash\x18\x06 \x01(\t\"\x1d\n\nBalanceReq\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\";\n\x0b\x42\x61lanceResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07\x62\x61lance\x18\x03 \x01(\t\"\x19\n\x06OTSReq\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\"[\n\x07OTSResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x14\n\x0cots_bitfield\x18\x03 \x03(\x0c\x12\x1d\n\x15next_unused_ots_index\x18\x04 \x01(\x04\"\x0b\n\tHeightReq\"9\n\nHeightResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0e\n\x06height\x18\x03 \x01(\x04\"\x1f\n\x08\x42lockReq\x12\x13\n\x0bheader_hash\x18\x01 \x01(\t\"H\n\tBlockResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x1e\n\x05\x62lock\x18\x03 \x01(\x0b\x32\x0f.qrl.PlainBlock\"(\n\x10\x42lockByNumberReq\x12\x14\n\x0c\x62lock_number\x18\x01 \x01(\x04\"\x1e\n\x10\x41\x64\x64ressFromPKReq\x12\n\n\x02pk\x18\x01 \x01(\t\"A\n\x11\x41\x64\x64ressFromPKResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x03 \x01(\t\"\r\n\x0bNodeInfoReq\"\xc1\x01\n\x0cNodeInfoResp\x12\x0c\n\x04\x63ode\x18\x01 \x01(\r\x12\r\n\x05\x65rror\x18\x02 \x01(\t\x12\x0f\n\x07version\x18\x03 \x01(\t\x12\x17\n\x0fnum_connections\x18\x04 \x01(\t\x12\x17\n\x0fnum_known_peers\x18\x05 \x01(\t\x12\x0e\n\x06uptime\x18\x06 \x01(\x04\x12\x14\n\x0c\x62lock_height\x18\x07 \x01(\x04\x12\x17\n\x0f\x62lock_last_hash\x18\x08 \x01(\t\x12\x12\n\nnetwork_id\x18\t \x01(\t\"7\n\x13PlainGenesisBalance\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x0f\n\x07\x62\x61lance\x18\x02 \x01(\x04\"5\n\x12PlainAddressAmount\x12\x0f\n\x07\x61\x64\x64ress\x18\x01 \x01(\t\x12\x0e\n\x06\x61mount\x18\x02 \x01(\x04\"\xce\x07\n\x10PlainTransaction\x12\x13\n\x0bmaster_addr\x18\x01 \x01(\t\x12\x0b\n\x03\x66\x65\x65\x18\x02 \x01(\x04\x12\x12\n\npublic_key\x18\x03 \x01(\t\x12\x11\n\tsignature\x18\x04 \x01(\t\x12\r\n\x05nonce\x18\x05 \x01(\x04\x12\x18\n\x10transaction_hash\x18\x06 \x01(\t\x12\x13\n\x0bsigner_addr\x18\x07 \x01(\t\x12\x32\n\x08transfer\x18\x08 \x01(\x0b\x32\x1e.qrl.PlainTransaction.TransferH\x00\x12\x32\n\x08\x63oinbase\x18\t \x01(\x0b\x32\x1e.qrl.PlainTransaction.CoinBaseH\x00\x12;\n\tlatticePK\x18\n \x01(\x0b\x32&.qrl.PlainTransaction.LatticePublicKeyH\x00\x12\x30\n\x07message\x18\x0b \x01(\x0b\x32\x1d.qrl.PlainTransaction.MessageH\x00\x12,\n\x05token\x18\x0c \x01(\x0b\x32\x1b.qrl.PlainTransaction.TokenH\x00\x12=\n\x0etransfer_token\x18\r \x01(\x0b\x32#.qrl.PlainTransaction.TransferTokenH\x00\x12,\n\x05slave\x18\x0e \x01(\x0b\x32\x1b.qrl.PlainTransaction.SlaveH\x00\x1a-\n\x08Transfer\x12\x10\n\x08\x61\x64\x64rs_to\x18\x01 \x03(\t\x12\x0f\n\x07\x61mounts\x18\x02 \x03(\x04\x1a+\n\x08\x43oinBase\x12\x0f\n\x07\x61\x64\x64r_to\x18\x01 \x01(\t\x12\x0e\n\x06\x61mount\x18\x02 \x01(\x04\x1a:\n\x10LatticePublicKey\x12\x10\n\x08kyber_pk\x18\x01 \x01(\t\x12\x14\n\x0c\x64ilithium_pk\x18\x02 \x01(\t\x1a\x1f\n\x07Message\x12\x14\n\x0cmessage_hash\x18\x01 \x01(\t\x1ay\n\x05Token\x12\x0e\n\x06symbol\x18\x01 \x01(\t\x12\x0c\n\x04name\x18\x02 \x01(\t\x12\r\n\x05owner\x18\x03 \x01(\t\x12\x10\n\x08\x64\x65\x63imals\x18\x04 \x01(\x04\x12\x31\n\x10initial_balances\x18\x05 \x03(\x0b\x32\x17.qrl.PlainAddressAmount\x1aH\n\rTransferToken\x12\x14\n\x0ctoken_txhash\x18\x01 \x01(\t\x12\x10\n\x08\x61\x64\x64rs_to\x18\x02 \x03(\t\x12\x0f\n\x07\x61mounts\x18\x03 \x03(\x04\x1a\x30\n\x05Slave\x12\x11\n\tslave_pks\x18\x01 \x03(\t\x12\x14\n\x0c\x61\x63\x63\x65ss_types\x18\x02 \x03(\rB\x11\n\x0ftransactionType\"\xdc\x01\n\x10PlainBlockHeader\x12\x13\n\x0bhash_header\x18\x01 \x01(\t\x12\x14\n\x0c\x62lock_number\x18\x02 \x01(\x04\x12\x19\n\x11timestamp_seconds\x18\x03 \x01(\x04\x12\x18\n\x10hash_header_prev\x18\x04 \x01(\t\x12\x14\n\x0creward_block\x18\x05 \x01(\x04\x12\x12\n\nreward_fee\x18\x06 \x01(\x04\x12\x13\n\x0bmerkle_root\x18\x07 \x01(\t\x12\x14\n\x0cmining_nonce\x18\x08 \x01(\r\x12\x13\n\x0b\x65xtra_nonce\x18\t \x01(\x04\"\x93\x01\n\nPlainBlock\x12%\n\x06header\x18\x01 \x01(\x0b\x32\x15.qrl.PlainBlockHeader\x12+\n\x0ctransactions\x18\x02 \x03(\x0b\x32\x15.qrl.PlainTransaction\x12\x31\n\x0fgenesis_balance\x18\x03 \x03(\x0b\x32\x18.qrl.PlainGenesisBalance2\xa5\x0f\n\tWalletAPI\x12>\n\rAddNewAddress\x12\x15.qrl.AddNewAddressReq\x1a\x16.qrl.AddNewAddressResp\x12R\n\x17\x41\x64\x64NewAddressWithSlaves\x12\x1f.qrl.AddNewAddressWithSlavesReq\x1a\x16.qrl.AddNewAddressResp\x12>\n\rListAddresses\x12\x15.qrl.ListAddressesReq\x1a\x16.qrl.ListAddressesResp\x12>\n\rRemoveAddress\x12\x15.qrl.RemoveAddressReq\x1a\x16.qrl.RemoveAddressResp\x12=\n\x0eIsValidAddress\x12\x14.qrl.ValidAddressReq\x1a\x15.qrl.ValidAddressResp\x12>\n\rEncryptWallet\x12\x15.qrl.EncryptWalletReq\x1a\x16.qrl.EncryptWalletResp\x12\x35\n\nLockWallet\x12\x12.qrl.LockWalletReq\x1a\x13.qrl.LockWalletResp\x12;\n\x0cUnlockWallet\x12\x14.qrl.UnlockWalletReq\x1a\x15.qrl.UnlockWalletResp\x12G\n\x10GetRecoverySeeds\x12\x18.qrl.GetRecoverySeedsReq\x1a\x19.qrl.GetRecoverySeedsResp\x12>\n\rGetWalletInfo\x12\x15.qrl.GetWalletInfoReq\x1a\x16.qrl.GetWalletInfoResp\x12?\n\x10RelayTransferTxn\x12\x18.qrl.RelayTransferTxnReq\x1a\x11.qrl.RelayTxnResp\x12M\n\x17RelayTransferTxnBySlave\x12\x1f.qrl.RelayTransferTxnBySlaveReq\x1a\x11.qrl.RelayTxnResp\x12=\n\x0fRelayMessageTxn\x12\x17.qrl.RelayMessageTxnReq\x1a\x11.qrl.RelayTxnResp\x12K\n\x16RelayMessageTxnBySlave\x12\x1e.qrl.RelayMessageTxnBySlaveReq\x1a\x11.qrl.RelayTxnResp\x12\x39\n\rRelayTokenTxn\x12\x15.qrl.RelayTokenTxnReq\x1a\x11.qrl.RelayTxnResp\x12G\n\x14RelayTokenTxnBySlave\x12\x1c.qrl.RelayTokenTxnBySlaveReq\x1a\x11.qrl.RelayTxnResp\x12I\n\x15RelayTransferTokenTxn\x12\x1d.qrl.RelayTransferTokenTxnReq\x1a\x11.qrl.RelayTxnResp\x12W\n\x1cRelayTransferTokenTxnBySlave\x12$.qrl.RelayTransferTokenTxnBySlaveReq\x1a\x11.qrl.RelayTxnResp\x12\x39\n\rRelaySlaveTxn\x12\x15.qrl.RelaySlaveTxnReq\x1a\x11.qrl.RelayTxnResp\x12G\n\x14RelaySlaveTxnBySlave\x12\x1c.qrl.RelaySlaveTxnBySlaveReq\x1a\x11.qrl.RelayTxnResp\x12G\n\x10\x43hangePassphrase\x12\x18.qrl.ChangePassphraseReq\x1a\x19.qrl.ChangePassphraseResp\x12Y\n\x18GetTransactionsByAddress\x12\x1d.qrl.TransactionsByAddressReq\x1a\x1e.qrl.TransactionsByAddressResp\x12;\n\x0eGetTransaction\x12\x13.qrl.TransactionReq\x1a\x14.qrl.TransactionResp\x12/\n\nGetBalance\x12\x0f.qrl.BalanceReq\x1a\x10.qrl.BalanceResp\x12#\n\x06GetOTS\x12\x0b.qrl.OTSReq\x1a\x0c.qrl.OTSResp\x12,\n\tGetHeight\x12\x0e.qrl.HeightReq\x1a\x0f.qrl.HeightResp\x12)\n\x08GetBlock\x12\r.qrl.BlockReq\x1a\x0e.qrl.BlockResp\x12\x39\n\x10GetBlockByNumber\x12\x15.qrl.BlockByNumberReq\x1a\x0e.qrl.BlockResp\x12\x41\n\x10GetAddressFromPK\x12\x15.qrl.AddressFromPKReq\x1a\x16.qrl.AddressFromPKResp\x12\x32\n\x0bGetNodeInfo\x12\x10.qrl.NodeInfoReq\x1a\x11.qrl.NodeInfoRespb\x06proto3')
  ,
  dependencies=[qrl__pb2.DESCRIPTOR,])




_ADDNEWADDRESSREQ = _descriptor.Descriptor(
  name='AddNewAddressReq',
  full_name='qrl.AddNewAddressReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='height', full_name='qrl.AddNewAddressReq.height', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hash_function', full_name='qrl.AddNewAddressReq.hash_function', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=35,
  serialized_end=92,
)


_ADDNEWADDRESSRESP = _descriptor.Descriptor(
  name='AddNewAddressResp',
  full_name='qrl.AddNewAddressResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.AddNewAddressResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.AddNewAddressResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address', full_name='qrl.AddNewAddressResp.address', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=94,
  serialized_end=159,
)


_ADDNEWADDRESSWITHSLAVESREQ = _descriptor.Descriptor(
  name='AddNewAddressWithSlavesReq',
  full_name='qrl.AddNewAddressWithSlavesReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='height', full_name='qrl.AddNewAddressWithSlavesReq.height', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='number_of_slaves', full_name='qrl.AddNewAddressWithSlavesReq.number_of_slaves', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hash_function', full_name='qrl.AddNewAddressWithSlavesReq.hash_function', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=161,
  serialized_end=254,
)


_ADDADDRESSFROMSEEDREQ = _descriptor.Descriptor(
  name='AddAddressFromSeedReq',
  full_name='qrl.AddAddressFromSeedReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='seed', full_name='qrl.AddAddressFromSeedReq.seed', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=256,
  serialized_end=293,
)


_ADDADDRESSFROMSEEDRESP = _descriptor.Descriptor(
  name='AddAddressFromSeedResp',
  full_name='qrl.AddAddressFromSeedResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.AddAddressFromSeedResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.AddAddressFromSeedResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address', full_name='qrl.AddAddressFromSeedResp.address', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=295,
  serialized_end=365,
)


_LISTADDRESSESREQ = _descriptor.Descriptor(
  name='ListAddressesReq',
  full_name='qrl.ListAddressesReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=367,
  serialized_end=385,
)


_LISTADDRESSESRESP = _descriptor.Descriptor(
  name='ListAddressesResp',
  full_name='qrl.ListAddressesResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.ListAddressesResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.ListAddressesResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='addresses', full_name='qrl.ListAddressesResp.addresses', index=2,
      number=3, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=387,
  serialized_end=454,
)


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


_REMOVEADDRESSRESP = _descriptor.Descriptor(
  name='RemoveAddressResp',
  full_name='qrl.RemoveAddressResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.RemoveAddressResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.RemoveAddressResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=493,
  serialized_end=541,
)


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


_VALIDADDRESSRESP = _descriptor.Descriptor(
  name='ValidAddressResp',
  full_name='qrl.ValidAddressResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.ValidAddressResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.ValidAddressResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='valid', full_name='qrl.ValidAddressResp.valid', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=579,
  serialized_end=641,
)


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


_ENCRYPTWALLETRESP = _descriptor.Descriptor(
  name='EncryptWalletResp',
  full_name='qrl.EncryptWalletResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.EncryptWalletResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.EncryptWalletResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=683,
  serialized_end=731,
)


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


_UNLOCKWALLETRESP = _descriptor.Descriptor(
  name='UnlockWalletResp',
  full_name='qrl.UnlockWalletResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.UnlockWalletResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.UnlockWalletResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=772,
  serialized_end=819,
)


_LOCKWALLETREQ = _descriptor.Descriptor(
  name='LockWalletReq',
  full_name='qrl.LockWalletReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=821,
  serialized_end=836,
)


_LOCKWALLETRESP = _descriptor.Descriptor(
  name='LockWalletResp',
  full_name='qrl.LockWalletResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.LockWalletResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.LockWalletResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=838,
  serialized_end=883,
)


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


_GETRECOVERYSEEDSRESP = _descriptor.Descriptor(
  name='GetRecoverySeedsResp',
  full_name='qrl.GetRecoverySeedsResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.GetRecoverySeedsResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.GetRecoverySeedsResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hexseed', full_name='qrl.GetRecoverySeedsResp.hexseed', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mnemonic', full_name='qrl.GetRecoverySeedsResp.mnemonic', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=925,
  serialized_end=1011,
)


_GETWALLETINFOREQ = _descriptor.Descriptor(
  name='GetWalletInfoReq',
  full_name='qrl.GetWalletInfoReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1013,
  serialized_end=1031,
)


_GETWALLETINFORESP = _descriptor.Descriptor(
  name='GetWalletInfoResp',
  full_name='qrl.GetWalletInfoResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.GetWalletInfoResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.GetWalletInfoResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='version', full_name='qrl.GetWalletInfoResp.version', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address_count', full_name='qrl.GetWalletInfoResp.address_count', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='is_encrypted', full_name='qrl.GetWalletInfoResp.is_encrypted', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1033,
  serialized_end=1143,
)


_RELAYTRANSFERTXNREQ = _descriptor.Descriptor(
  name='RelayTransferTxnReq',
  full_name='qrl.RelayTransferTxnReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='addresses_to', full_name='qrl.RelayTransferTxnReq.addresses_to', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.RelayTransferTxnReq.amounts', index=1,
      number=2, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayTransferTxnReq.fee', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayTransferTxnReq.master_address', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signer_address', full_name='qrl.RelayTransferTxnReq.signer_address', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ots_index', full_name='qrl.RelayTransferTxnReq.ots_index', index=5,
      number=6, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1146,
  serialized_end=1286,
)


_RELAYTRANSFERTXNBYSLAVEREQ = _descriptor.Descriptor(
  name='RelayTransferTxnBySlaveReq',
  full_name='qrl.RelayTransferTxnBySlaveReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='addresses_to', full_name='qrl.RelayTransferTxnBySlaveReq.addresses_to', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.RelayTransferTxnBySlaveReq.amounts', index=1,
      number=2, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayTransferTxnBySlaveReq.fee', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayTransferTxnBySlaveReq.master_address', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1288,
  serialized_end=1392,
)


_RELAYMESSAGETXNREQ = _descriptor.Descriptor(
  name='RelayMessageTxnReq',
  full_name='qrl.RelayMessageTxnReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='message', full_name='qrl.RelayMessageTxnReq.message', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayMessageTxnReq.fee', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayMessageTxnReq.master_address', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signer_address', full_name='qrl.RelayMessageTxnReq.signer_address', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ots_index', full_name='qrl.RelayMessageTxnReq.ots_index', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1394,
  serialized_end=1511,
)


_RELAYMESSAGETXNBYSLAVEREQ = _descriptor.Descriptor(
  name='RelayMessageTxnBySlaveReq',
  full_name='qrl.RelayMessageTxnBySlaveReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='message', full_name='qrl.RelayMessageTxnBySlaveReq.message', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayMessageTxnBySlaveReq.fee', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayMessageTxnBySlaveReq.master_address', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1513,
  serialized_end=1594,
)


_RELAYTOKENTXNREQ = _descriptor.Descriptor(
  name='RelayTokenTxnReq',
  full_name='qrl.RelayTokenTxnReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='symbol', full_name='qrl.RelayTokenTxnReq.symbol', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='qrl.RelayTokenTxnReq.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='owner', full_name='qrl.RelayTokenTxnReq.owner', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='decimals', full_name='qrl.RelayTokenTxnReq.decimals', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='addresses', full_name='qrl.RelayTokenTxnReq.addresses', index=4,
      number=5, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.RelayTokenTxnReq.amounts', index=5,
      number=6, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayTokenTxnReq.fee', index=6,
      number=7, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayTokenTxnReq.master_address', index=7,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signer_address', full_name='qrl.RelayTokenTxnReq.signer_address', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ots_index', full_name='qrl.RelayTokenTxnReq.ots_index', index=9,
      number=10, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1597,
  serialized_end=1794,
)


_RELAYTOKENTXNBYSLAVEREQ = _descriptor.Descriptor(
  name='RelayTokenTxnBySlaveReq',
  full_name='qrl.RelayTokenTxnBySlaveReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='symbol', full_name='qrl.RelayTokenTxnBySlaveReq.symbol', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='qrl.RelayTokenTxnBySlaveReq.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='owner', full_name='qrl.RelayTokenTxnBySlaveReq.owner', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='decimals', full_name='qrl.RelayTokenTxnBySlaveReq.decimals', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='addresses', full_name='qrl.RelayTokenTxnBySlaveReq.addresses', index=4,
      number=5, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.RelayTokenTxnBySlaveReq.amounts', index=5,
      number=6, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayTokenTxnBySlaveReq.fee', index=6,
      number=7, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayTokenTxnBySlaveReq.master_address', index=7,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1797,
  serialized_end=1958,
)


_RELAYTRANSFERTOKENTXNREQ = _descriptor.Descriptor(
  name='RelayTransferTokenTxnReq',
  full_name='qrl.RelayTransferTokenTxnReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='addresses_to', full_name='qrl.RelayTransferTokenTxnReq.addresses_to', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='token_txhash', full_name='qrl.RelayTransferTokenTxnReq.token_txhash', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.RelayTransferTokenTxnReq.amounts', index=2,
      number=3, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayTransferTokenTxnReq.fee', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayTransferTokenTxnReq.master_address', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signer_address', full_name='qrl.RelayTransferTokenTxnReq.signer_address', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ots_index', full_name='qrl.RelayTransferTokenTxnReq.ots_index', index=6,
      number=7, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1961,
  serialized_end=2128,
)


_RELAYTRANSFERTOKENTXNBYSLAVEREQ = _descriptor.Descriptor(
  name='RelayTransferTokenTxnBySlaveReq',
  full_name='qrl.RelayTransferTokenTxnBySlaveReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='addresses_to', full_name='qrl.RelayTransferTokenTxnBySlaveReq.addresses_to', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='token_txhash', full_name='qrl.RelayTransferTokenTxnBySlaveReq.token_txhash', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.RelayTransferTokenTxnBySlaveReq.amounts', index=2,
      number=3, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelayTransferTokenTxnBySlaveReq.fee', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelayTransferTokenTxnBySlaveReq.master_address', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2131,
  serialized_end=2262,
)


_RELAYSLAVETXNREQ = _descriptor.Descriptor(
  name='RelaySlaveTxnReq',
  full_name='qrl.RelaySlaveTxnReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='slave_pks', full_name='qrl.RelaySlaveTxnReq.slave_pks', index=0,
      number=1, type=12, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='access_types', full_name='qrl.RelaySlaveTxnReq.access_types', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelaySlaveTxnReq.fee', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelaySlaveTxnReq.master_address', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signer_address', full_name='qrl.RelaySlaveTxnReq.signer_address', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ots_index', full_name='qrl.RelaySlaveTxnReq.ots_index', index=5,
      number=6, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2265,
  serialized_end=2404,
)


_RELAYSLAVETXNBYSLAVEREQ = _descriptor.Descriptor(
  name='RelaySlaveTxnBySlaveReq',
  full_name='qrl.RelaySlaveTxnBySlaveReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='slave_pks', full_name='qrl.RelaySlaveTxnBySlaveReq.slave_pks', index=0,
      number=1, type=12, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='access_types', full_name='qrl.RelaySlaveTxnBySlaveReq.access_types', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.RelaySlaveTxnBySlaveReq.fee', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='master_address', full_name='qrl.RelaySlaveTxnBySlaveReq.master_address', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2406,
  serialized_end=2509,
)


_RELAYTXNRESP = _descriptor.Descriptor(
  name='RelayTxnResp',
  full_name='qrl.RelayTxnResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.RelayTxnResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.RelayTxnResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tx', full_name='qrl.RelayTxnResp.tx', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2511,
  serialized_end=2589,
)


_CHANGEPASSPHRASEREQ = _descriptor.Descriptor(
  name='ChangePassphraseReq',
  full_name='qrl.ChangePassphraseReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='oldPassphrase', full_name='qrl.ChangePassphraseReq.oldPassphrase', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='newPassphrase', full_name='qrl.ChangePassphraseReq.newPassphrase', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2591,
  serialized_end=2658,
)


_CHANGEPASSPHRASERESP = _descriptor.Descriptor(
  name='ChangePassphraseResp',
  full_name='qrl.ChangePassphraseResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.ChangePassphraseResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.ChangePassphraseResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2660,
  serialized_end=2711,
)


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


_TRANSACTIONSBYADDRESSRESP = _descriptor.Descriptor(
  name='TransactionsByAddressResp',
  full_name='qrl.TransactionsByAddressResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.TransactionsByAddressResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.TransactionsByAddressResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mini_transactions', full_name='qrl.TransactionsByAddressResp.mini_transactions', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='balance', full_name='qrl.TransactionsByAddressResp.balance', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2758,
  serialized_end=2880,
)


_TRANSACTIONREQ = _descriptor.Descriptor(
  name='TransactionReq',
  full_name='qrl.TransactionReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='tx_hash', full_name='qrl.TransactionReq.tx_hash', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2882,
  serialized_end=2915,
)


_TRANSACTIONRESP = _descriptor.Descriptor(
  name='TransactionResp',
  full_name='qrl.TransactionResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.TransactionResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.TransactionResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='tx', full_name='qrl.TransactionResp.tx', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='confirmations', full_name='qrl.TransactionResp.confirmations', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='block_number', full_name='qrl.TransactionResp.block_number', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='block_header_hash', full_name='qrl.TransactionResp.block_header_hash', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2918,
  serialized_end=3071,
)


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


_BALANCERESP = _descriptor.Descriptor(
  name='BalanceResp',
  full_name='qrl.BalanceResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.BalanceResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.BalanceResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='balance', full_name='qrl.BalanceResp.balance', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3104,
  serialized_end=3163,
)


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


_OTSRESP = _descriptor.Descriptor(
  name='OTSResp',
  full_name='qrl.OTSResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.OTSResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.OTSResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='ots_bitfield', full_name='qrl.OTSResp.ots_bitfield', index=2,
      number=3, type=12, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='next_unused_ots_index', full_name='qrl.OTSResp.next_unused_ots_index', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3192,
  serialized_end=3283,
)


_HEIGHTREQ = _descriptor.Descriptor(
  name='HeightReq',
  full_name='qrl.HeightReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3285,
  serialized_end=3296,
)


_HEIGHTRESP = _descriptor.Descriptor(
  name='HeightResp',
  full_name='qrl.HeightResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.HeightResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.HeightResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='height', full_name='qrl.HeightResp.height', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3298,
  serialized_end=3355,
)


_BLOCKREQ = _descriptor.Descriptor(
  name='BlockReq',
  full_name='qrl.BlockReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header_hash', full_name='qrl.BlockReq.header_hash', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3357,
  serialized_end=3388,
)


_BLOCKRESP = _descriptor.Descriptor(
  name='BlockResp',
  full_name='qrl.BlockResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.BlockResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.BlockResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='block', full_name='qrl.BlockResp.block', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3390,
  serialized_end=3462,
)


_BLOCKBYNUMBERREQ = _descriptor.Descriptor(
  name='BlockByNumberReq',
  full_name='qrl.BlockByNumberReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='block_number', full_name='qrl.BlockByNumberReq.block_number', index=0,
      number=1, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3464,
  serialized_end=3504,
)


_ADDRESSFROMPKREQ = _descriptor.Descriptor(
  name='AddressFromPKReq',
  full_name='qrl.AddressFromPKReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='pk', full_name='qrl.AddressFromPKReq.pk', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3506,
  serialized_end=3536,
)


_ADDRESSFROMPKRESP = _descriptor.Descriptor(
  name='AddressFromPKResp',
  full_name='qrl.AddressFromPKResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.AddressFromPKResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.AddressFromPKResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='address', full_name='qrl.AddressFromPKResp.address', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3538,
  serialized_end=3603,
)


_NODEINFOREQ = _descriptor.Descriptor(
  name='NodeInfoReq',
  full_name='qrl.NodeInfoReq',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3605,
  serialized_end=3618,
)


_NODEINFORESP = _descriptor.Descriptor(
  name='NodeInfoResp',
  full_name='qrl.NodeInfoResp',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='code', full_name='qrl.NodeInfoResp.code', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='error', full_name='qrl.NodeInfoResp.error', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='version', full_name='qrl.NodeInfoResp.version', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='num_connections', full_name='qrl.NodeInfoResp.num_connections', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='num_known_peers', full_name='qrl.NodeInfoResp.num_known_peers', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='uptime', full_name='qrl.NodeInfoResp.uptime', index=5,
      number=6, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='block_height', full_name='qrl.NodeInfoResp.block_height', index=6,
      number=7, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='block_last_hash', full_name='qrl.NodeInfoResp.block_last_hash', index=7,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='network_id', full_name='qrl.NodeInfoResp.network_id', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3621,
  serialized_end=3814,
)


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


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


_PLAINTRANSACTION_TRANSFER = _descriptor.Descriptor(
  name='Transfer',
  full_name='qrl.PlainTransaction.Transfer',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='addrs_to', full_name='qrl.PlainTransaction.Transfer.addrs_to', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.PlainTransaction.Transfer.amounts', index=1,
      number=2, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4454,
  serialized_end=4499,
)

_PLAINTRANSACTION_COINBASE = _descriptor.Descriptor(
  name='CoinBase',
  full_name='qrl.PlainTransaction.CoinBase',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='addr_to', full_name='qrl.PlainTransaction.CoinBase.addr_to', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amount', full_name='qrl.PlainTransaction.CoinBase.amount', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4501,
  serialized_end=4544,
)

_PLAINTRANSACTION_LATTICEPUBLICKEY = _descriptor.Descriptor(
  name='LatticePublicKey',
  full_name='qrl.PlainTransaction.LatticePublicKey',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='kyber_pk', full_name='qrl.PlainTransaction.LatticePublicKey.kyber_pk', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='dilithium_pk', full_name='qrl.PlainTransaction.LatticePublicKey.dilithium_pk', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4546,
  serialized_end=4604,
)

_PLAINTRANSACTION_MESSAGE = _descriptor.Descriptor(
  name='Message',
  full_name='qrl.PlainTransaction.Message',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='message_hash', full_name='qrl.PlainTransaction.Message.message_hash', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4606,
  serialized_end=4637,
)

_PLAINTRANSACTION_TOKEN = _descriptor.Descriptor(
  name='Token',
  full_name='qrl.PlainTransaction.Token',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='symbol', full_name='qrl.PlainTransaction.Token.symbol', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='name', full_name='qrl.PlainTransaction.Token.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='owner', full_name='qrl.PlainTransaction.Token.owner', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='decimals', full_name='qrl.PlainTransaction.Token.decimals', index=3,
      number=4, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='initial_balances', full_name='qrl.PlainTransaction.Token.initial_balances', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4639,
  serialized_end=4760,
)

_PLAINTRANSACTION_TRANSFERTOKEN = _descriptor.Descriptor(
  name='TransferToken',
  full_name='qrl.PlainTransaction.TransferToken',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='token_txhash', full_name='qrl.PlainTransaction.TransferToken.token_txhash', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='addrs_to', full_name='qrl.PlainTransaction.TransferToken.addrs_to', index=1,
      number=2, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='amounts', full_name='qrl.PlainTransaction.TransferToken.amounts', index=2,
      number=3, type=4, cpp_type=4, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4762,
  serialized_end=4834,
)

_PLAINTRANSACTION_SLAVE = _descriptor.Descriptor(
  name='Slave',
  full_name='qrl.PlainTransaction.Slave',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='slave_pks', full_name='qrl.PlainTransaction.Slave.slave_pks', index=0,
      number=1, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='access_types', full_name='qrl.PlainTransaction.Slave.access_types', index=1,
      number=2, type=13, cpp_type=3, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4836,
  serialized_end=4884,
)

_PLAINTRANSACTION = _descriptor.Descriptor(
  name='PlainTransaction',
  full_name='qrl.PlainTransaction',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='master_addr', full_name='qrl.PlainTransaction.master_addr', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='fee', full_name='qrl.PlainTransaction.fee', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='public_key', full_name='qrl.PlainTransaction.public_key', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signature', full_name='qrl.PlainTransaction.signature', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='nonce', full_name='qrl.PlainTransaction.nonce', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='transaction_hash', full_name='qrl.PlainTransaction.transaction_hash', index=5,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='signer_addr', full_name='qrl.PlainTransaction.signer_addr', index=6,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='transfer', full_name='qrl.PlainTransaction.transfer', index=7,
      number=8, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='coinbase', full_name='qrl.PlainTransaction.coinbase', index=8,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='latticePK', full_name='qrl.PlainTransaction.latticePK', index=9,
      number=10, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='message', full_name='qrl.PlainTransaction.message', index=10,
      number=11, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='token', full_name='qrl.PlainTransaction.token', index=11,
      number=12, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='transfer_token', full_name='qrl.PlainTransaction.transfer_token', index=12,
      number=13, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='slave', full_name='qrl.PlainTransaction.slave', index=13,
      number=14, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[_PLAINTRANSACTION_TRANSFER, _PLAINTRANSACTION_COINBASE, _PLAINTRANSACTION_LATTICEPUBLICKEY, _PLAINTRANSACTION_MESSAGE, _PLAINTRANSACTION_TOKEN, _PLAINTRANSACTION_TRANSFERTOKEN, _PLAINTRANSACTION_SLAVE, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='transactionType', full_name='qrl.PlainTransaction.transactionType',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=3929,
  serialized_end=4903,
)


_PLAINBLOCKHEADER = _descriptor.Descriptor(
  name='PlainBlockHeader',
  full_name='qrl.PlainBlockHeader',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hash_header', full_name='qrl.PlainBlockHeader.hash_header', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='block_number', full_name='qrl.PlainBlockHeader.block_number', index=1,
      number=2, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timestamp_seconds', full_name='qrl.PlainBlockHeader.timestamp_seconds', index=2,
      number=3, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hash_header_prev', full_name='qrl.PlainBlockHeader.hash_header_prev', index=3,
      number=4, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='reward_block', full_name='qrl.PlainBlockHeader.reward_block', index=4,
      number=5, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='reward_fee', full_name='qrl.PlainBlockHeader.reward_fee', index=5,
      number=6, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='merkle_root', full_name='qrl.PlainBlockHeader.merkle_root', index=6,
      number=7, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='mining_nonce', full_name='qrl.PlainBlockHeader.mining_nonce', index=7,
      number=8, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='extra_nonce', full_name='qrl.PlainBlockHeader.extra_nonce', index=8,
      number=9, type=4, cpp_type=4, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=4906,
  serialized_end=5126,
)


_PLAINBLOCK = _descriptor.Descriptor(
  name='PlainBlock',
  full_name='qrl.PlainBlock',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='qrl.PlainBlock.header', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='transactions', full_name='qrl.PlainBlock.transactions', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='genesis_balance', full_name='qrl.PlainBlock.genesis_balance', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=5129,
  serialized_end=5276,
)

_RELAYTXNRESP.fields_by_name['tx'].message_type = _PLAINTRANSACTION
_TRANSACTIONSBYADDRESSRESP.fields_by_name['mini_transactions'].message_type = qrl__pb2._MINITRANSACTION
_TRANSACTIONRESP.fields_by_name['tx'].message_type = _PLAINTRANSACTION
_BLOCKRESP.fields_by_name['block'].message_type = _PLAINBLOCK
_PLAINTRANSACTION_TRANSFER.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION_COINBASE.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION_LATTICEPUBLICKEY.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION_MESSAGE.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION_TOKEN.fields_by_name['initial_balances'].message_type = _PLAINADDRESSAMOUNT
_PLAINTRANSACTION_TOKEN.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION_TRANSFERTOKEN.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION_SLAVE.containing_type = _PLAINTRANSACTION
_PLAINTRANSACTION.fields_by_name['transfer'].message_type = _PLAINTRANSACTION_TRANSFER
_PLAINTRANSACTION.fields_by_name['coinbase'].message_type = _PLAINTRANSACTION_COINBASE
_PLAINTRANSACTION.fields_by_name['latticePK'].message_type = _PLAINTRANSACTION_LATTICEPUBLICKEY
_PLAINTRANSACTION.fields_by_name['message'].message_type = _PLAINTRANSACTION_MESSAGE
_PLAINTRANSACTION.fields_by_name['token'].message_type = _PLAINTRANSACTION_TOKEN
_PLAINTRANSACTION.fields_by_name['transfer_token'].message_type = _PLAINTRANSACTION_TRANSFERTOKEN
_PLAINTRANSACTION.fields_by_name['slave'].message_type = _PLAINTRANSACTION_SLAVE
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['transfer'])
_PLAINTRANSACTION.fields_by_name['transfer'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['coinbase'])
_PLAINTRANSACTION.fields_by_name['coinbase'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['latticePK'])
_PLAINTRANSACTION.fields_by_name['latticePK'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['message'])
_PLAINTRANSACTION.fields_by_name['message'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['token'])
_PLAINTRANSACTION.fields_by_name['token'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['transfer_token'])
_PLAINTRANSACTION.fields_by_name['transfer_token'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINTRANSACTION.oneofs_by_name['transactionType'].fields.append(
  _PLAINTRANSACTION.fields_by_name['slave'])
_PLAINTRANSACTION.fields_by_name['slave'].containing_oneof = _PLAINTRANSACTION.oneofs_by_name['transactionType']
_PLAINBLOCK.fields_by_name['header'].message_type = _PLAINBLOCKHEADER
_PLAINBLOCK.fields_by_name['transactions'].message_type = _PLAINTRANSACTION
_PLAINBLOCK.fields_by_name['genesis_balance'].message_type = _PLAINGENESISBALANCE
DESCRIPTOR.message_types_by_name['AddNewAddressReq'] = _ADDNEWADDRESSREQ
DESCRIPTOR.message_types_by_name['AddNewAddressResp'] = _ADDNEWADDRESSRESP
DESCRIPTOR.message_types_by_name['AddNewAddressWithSlavesReq'] = _ADDNEWADDRESSWITHSLAVESREQ
DESCRIPTOR.message_types_by_name['AddAddressFromSeedReq'] = _ADDADDRESSFROMSEEDREQ
DESCRIPTOR.message_types_by_name['AddAddressFromSeedResp'] = _ADDADDRESSFROMSEEDRESP
DESCRIPTOR.message_types_by_name['ListAddressesReq'] = _LISTADDRESSESREQ
DESCRIPTOR.message_types_by_name['ListAddressesResp'] = _LISTADDRESSESRESP
DESCRIPTOR.message_types_by_name['RemoveAddressReq'] = _REMOVEADDRESSREQ
DESCRIPTOR.message_types_by_name['RemoveAddressResp'] = _REMOVEADDRESSRESP
DESCRIPTOR.message_types_by_name['ValidAddressReq'] = _VALIDADDRESSREQ
DESCRIPTOR.message_types_by_name['ValidAddressResp'] = _VALIDADDRESSRESP
DESCRIPTOR.message_types_by_name['EncryptWalletReq'] = _ENCRYPTWALLETREQ
DESCRIPTOR.message_types_by_name['EncryptWalletResp'] = _ENCRYPTWALLETRESP
DESCRIPTOR.message_types_by_name['UnlockWalletReq'] = _UNLOCKWALLETREQ
DESCRIPTOR.message_types_by_name['UnlockWalletResp'] = _UNLOCKWALLETRESP
DESCRIPTOR.message_types_by_name['LockWalletReq'] = _LOCKWALLETREQ
DESCRIPTOR.message_types_by_name['LockWalletResp'] = _LOCKWALLETRESP
DESCRIPTOR.message_types_by_name['GetRecoverySeedsReq'] = _GETRECOVERYSEEDSREQ
DESCRIPTOR.message_types_by_name['GetRecoverySeedsResp'] = _GETRECOVERYSEEDSRESP
DESCRIPTOR.message_types_by_name['GetWalletInfoReq'] = _GETWALLETINFOREQ
DESCRIPTOR.message_types_by_name['GetWalletInfoResp'] = _GETWALLETINFORESP
DESCRIPTOR.message_types_by_name['RelayTransferTxnReq'] = _RELAYTRANSFERTXNREQ
DESCRIPTOR.message_types_by_name['RelayTransferTxnBySlaveReq'] = _RELAYTRANSFERTXNBYSLAVEREQ
DESCRIPTOR.message_types_by_name['RelayMessageTxnReq'] = _RELAYMESSAGETXNREQ
DESCRIPTOR.message_types_by_name['RelayMessageTxnBySlaveReq'] = _RELAYMESSAGETXNBYSLAVEREQ
DESCRIPTOR.message_types_by_name['RelayTokenTxnReq'] = _RELAYTOKENTXNREQ
DESCRIPTOR.message_types_by_name['RelayTokenTxnBySlaveReq'] = _RELAYTOKENTXNBYSLAVEREQ
DESCRIPTOR.message_types_by_name['RelayTransferTokenTxnReq'] = _RELAYTRANSFERTOKENTXNREQ
DESCRIPTOR.message_types_by_name['RelayTransferTokenTxnBySlaveReq'] = _RELAYTRANSFERTOKENTXNBYSLAVEREQ
DESCRIPTOR.message_types_by_name['RelaySlaveTxnReq'] = _RELAYSLAVETXNREQ
DESCRIPTOR.message_types_by_name['RelaySlaveTxnBySlaveReq'] = _RELAYSLAVETXNBYSLAVEREQ
DESCRIPTOR.message_types_by_name['RelayTxnResp'] = _RELAYTXNRESP
DESCRIPTOR.message_types_by_name['ChangePassphraseReq'] = _CHANGEPASSPHRASEREQ
DESCRIPTOR.message_types_by_name['ChangePassphraseResp'] = _CHANGEPASSPHRASERESP
DESCRIPTOR.message_types_by_name['TransactionsByAddressReq'] = _TRANSACTIONSBYADDRESSREQ
DESCRIPTOR.message_types_by_name['TransactionsByAddressResp'] = _TRANSACTIONSBYADDRESSRESP
DESCRIPTOR.message_types_by_name['TransactionReq'] = _TRANSACTIONREQ
DESCRIPTOR.message_types_by_name['TransactionResp'] = _TRANSACTIONRESP
DESCRIPTOR.message_types_by_name['BalanceReq'] = _BALANCEREQ
DESCRIPTOR.message_types_by_name['BalanceResp'] = _BALANCERESP
DESCRIPTOR.message_types_by_name['OTSReq'] = _OTSREQ
DESCRIPTOR.message_types_by_name['OTSResp'] = _OTSRESP
DESCRIPTOR.message_types_by_name['HeightReq'] = _HEIGHTREQ
DESCRIPTOR.message_types_by_name['HeightResp'] = _HEIGHTRESP
DESCRIPTOR.message_types_by_name['BlockReq'] = _BLOCKREQ
DESCRIPTOR.message_types_by_name['BlockResp'] = _BLOCKRESP
DESCRIPTOR.message_types_by_name['BlockByNumberReq'] = _BLOCKBYNUMBERREQ
DESCRIPTOR.message_types_by_name['AddressFromPKReq'] = _ADDRESSFROMPKREQ
DESCRIPTOR.message_types_by_name['AddressFromPKResp'] = _ADDRESSFROMPKRESP
DESCRIPTOR.message_types_by_name['NodeInfoReq'] = _NODEINFOREQ
DESCRIPTOR.message_types_by_name['NodeInfoResp'] = _NODEINFORESP
DESCRIPTOR.message_types_by_name['PlainGenesisBalance'] = _PLAINGENESISBALANCE
DESCRIPTOR.message_types_by_name['PlainAddressAmount'] = _PLAINADDRESSAMOUNT
DESCRIPTOR.message_types_by_name['PlainTransaction'] = _PLAINTRANSACTION
DESCRIPTOR.message_types_by_name['PlainBlockHeader'] = _PLAINBLOCKHEADER
DESCRIPTOR.message_types_by_name['PlainBlock'] = _PLAINBLOCK
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

AddNewAddressReq = _reflection.GeneratedProtocolMessageType('AddNewAddressReq', (_message.Message,), dict(
  DESCRIPTOR = _ADDNEWADDRESSREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddNewAddressReq)
  ))
_sym_db.RegisterMessage(AddNewAddressReq)

AddNewAddressResp = _reflection.GeneratedProtocolMessageType('AddNewAddressResp', (_message.Message,), dict(
  DESCRIPTOR = _ADDNEWADDRESSRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddNewAddressResp)
  ))
_sym_db.RegisterMessage(AddNewAddressResp)

AddNewAddressWithSlavesReq = _reflection.GeneratedProtocolMessageType('AddNewAddressWithSlavesReq', (_message.Message,), dict(
  DESCRIPTOR = _ADDNEWADDRESSWITHSLAVESREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddNewAddressWithSlavesReq)
  ))
_sym_db.RegisterMessage(AddNewAddressWithSlavesReq)

AddAddressFromSeedReq = _reflection.GeneratedProtocolMessageType('AddAddressFromSeedReq', (_message.Message,), dict(
  DESCRIPTOR = _ADDADDRESSFROMSEEDREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddAddressFromSeedReq)
  ))
_sym_db.RegisterMessage(AddAddressFromSeedReq)

AddAddressFromSeedResp = _reflection.GeneratedProtocolMessageType('AddAddressFromSeedResp', (_message.Message,), dict(
  DESCRIPTOR = _ADDADDRESSFROMSEEDRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddAddressFromSeedResp)
  ))
_sym_db.RegisterMessage(AddAddressFromSeedResp)

ListAddressesReq = _reflection.GeneratedProtocolMessageType('ListAddressesReq', (_message.Message,), dict(
  DESCRIPTOR = _LISTADDRESSESREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.ListAddressesReq)
  ))
_sym_db.RegisterMessage(ListAddressesReq)

ListAddressesResp = _reflection.GeneratedProtocolMessageType('ListAddressesResp', (_message.Message,), dict(
  DESCRIPTOR = _LISTADDRESSESRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.ListAddressesResp)
  ))
_sym_db.RegisterMessage(ListAddressesResp)

RemoveAddressReq = _reflection.GeneratedProtocolMessageType('RemoveAddressReq', (_message.Message,), dict(
  DESCRIPTOR = _REMOVEADDRESSREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RemoveAddressReq)
  ))
_sym_db.RegisterMessage(RemoveAddressReq)

RemoveAddressResp = _reflection.GeneratedProtocolMessageType('RemoveAddressResp', (_message.Message,), dict(
  DESCRIPTOR = _REMOVEADDRESSRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RemoveAddressResp)
  ))
_sym_db.RegisterMessage(RemoveAddressResp)

ValidAddressReq = _reflection.GeneratedProtocolMessageType('ValidAddressReq', (_message.Message,), dict(
  DESCRIPTOR = _VALIDADDRESSREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.ValidAddressReq)
  ))
_sym_db.RegisterMessage(ValidAddressReq)

ValidAddressResp = _reflection.GeneratedProtocolMessageType('ValidAddressResp', (_message.Message,), dict(
  DESCRIPTOR = _VALIDADDRESSRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.ValidAddressResp)
  ))
_sym_db.RegisterMessage(ValidAddressResp)

EncryptWalletReq = _reflection.GeneratedProtocolMessageType('EncryptWalletReq', (_message.Message,), dict(
  DESCRIPTOR = _ENCRYPTWALLETREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.EncryptWalletReq)
  ))
_sym_db.RegisterMessage(EncryptWalletReq)

EncryptWalletResp = _reflection.GeneratedProtocolMessageType('EncryptWalletResp', (_message.Message,), dict(
  DESCRIPTOR = _ENCRYPTWALLETRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.EncryptWalletResp)
  ))
_sym_db.RegisterMessage(EncryptWalletResp)

UnlockWalletReq = _reflection.GeneratedProtocolMessageType('UnlockWalletReq', (_message.Message,), dict(
  DESCRIPTOR = _UNLOCKWALLETREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.UnlockWalletReq)
  ))
_sym_db.RegisterMessage(UnlockWalletReq)

UnlockWalletResp = _reflection.GeneratedProtocolMessageType('UnlockWalletResp', (_message.Message,), dict(
  DESCRIPTOR = _UNLOCKWALLETRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.UnlockWalletResp)
  ))
_sym_db.RegisterMessage(UnlockWalletResp)

LockWalletReq = _reflection.GeneratedProtocolMessageType('LockWalletReq', (_message.Message,), dict(
  DESCRIPTOR = _LOCKWALLETREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.LockWalletReq)
  ))
_sym_db.RegisterMessage(LockWalletReq)

LockWalletResp = _reflection.GeneratedProtocolMessageType('LockWalletResp', (_message.Message,), dict(
  DESCRIPTOR = _LOCKWALLETRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.LockWalletResp)
  ))
_sym_db.RegisterMessage(LockWalletResp)

GetRecoverySeedsReq = _reflection.GeneratedProtocolMessageType('GetRecoverySeedsReq', (_message.Message,), dict(
  DESCRIPTOR = _GETRECOVERYSEEDSREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.GetRecoverySeedsReq)
  ))
_sym_db.RegisterMessage(GetRecoverySeedsReq)

GetRecoverySeedsResp = _reflection.GeneratedProtocolMessageType('GetRecoverySeedsResp', (_message.Message,), dict(
  DESCRIPTOR = _GETRECOVERYSEEDSRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.GetRecoverySeedsResp)
  ))
_sym_db.RegisterMessage(GetRecoverySeedsResp)

GetWalletInfoReq = _reflection.GeneratedProtocolMessageType('GetWalletInfoReq', (_message.Message,), dict(
  DESCRIPTOR = _GETWALLETINFOREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.GetWalletInfoReq)
  ))
_sym_db.RegisterMessage(GetWalletInfoReq)

GetWalletInfoResp = _reflection.GeneratedProtocolMessageType('GetWalletInfoResp', (_message.Message,), dict(
  DESCRIPTOR = _GETWALLETINFORESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.GetWalletInfoResp)
  ))
_sym_db.RegisterMessage(GetWalletInfoResp)

RelayTransferTxnReq = _reflection.GeneratedProtocolMessageType('RelayTransferTxnReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTRANSFERTXNREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTransferTxnReq)
  ))
_sym_db.RegisterMessage(RelayTransferTxnReq)

RelayTransferTxnBySlaveReq = _reflection.GeneratedProtocolMessageType('RelayTransferTxnBySlaveReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTRANSFERTXNBYSLAVEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTransferTxnBySlaveReq)
  ))
_sym_db.RegisterMessage(RelayTransferTxnBySlaveReq)

RelayMessageTxnReq = _reflection.GeneratedProtocolMessageType('RelayMessageTxnReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYMESSAGETXNREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayMessageTxnReq)
  ))
_sym_db.RegisterMessage(RelayMessageTxnReq)

RelayMessageTxnBySlaveReq = _reflection.GeneratedProtocolMessageType('RelayMessageTxnBySlaveReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYMESSAGETXNBYSLAVEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayMessageTxnBySlaveReq)
  ))
_sym_db.RegisterMessage(RelayMessageTxnBySlaveReq)

RelayTokenTxnReq = _reflection.GeneratedProtocolMessageType('RelayTokenTxnReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTOKENTXNREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTokenTxnReq)
  ))
_sym_db.RegisterMessage(RelayTokenTxnReq)

RelayTokenTxnBySlaveReq = _reflection.GeneratedProtocolMessageType('RelayTokenTxnBySlaveReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTOKENTXNBYSLAVEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTokenTxnBySlaveReq)
  ))
_sym_db.RegisterMessage(RelayTokenTxnBySlaveReq)

RelayTransferTokenTxnReq = _reflection.GeneratedProtocolMessageType('RelayTransferTokenTxnReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTRANSFERTOKENTXNREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTransferTokenTxnReq)
  ))
_sym_db.RegisterMessage(RelayTransferTokenTxnReq)

RelayTransferTokenTxnBySlaveReq = _reflection.GeneratedProtocolMessageType('RelayTransferTokenTxnBySlaveReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTRANSFERTOKENTXNBYSLAVEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTransferTokenTxnBySlaveReq)
  ))
_sym_db.RegisterMessage(RelayTransferTokenTxnBySlaveReq)

RelaySlaveTxnReq = _reflection.GeneratedProtocolMessageType('RelaySlaveTxnReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYSLAVETXNREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelaySlaveTxnReq)
  ))
_sym_db.RegisterMessage(RelaySlaveTxnReq)

RelaySlaveTxnBySlaveReq = _reflection.GeneratedProtocolMessageType('RelaySlaveTxnBySlaveReq', (_message.Message,), dict(
  DESCRIPTOR = _RELAYSLAVETXNBYSLAVEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelaySlaveTxnBySlaveReq)
  ))
_sym_db.RegisterMessage(RelaySlaveTxnBySlaveReq)

RelayTxnResp = _reflection.GeneratedProtocolMessageType('RelayTxnResp', (_message.Message,), dict(
  DESCRIPTOR = _RELAYTXNRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.RelayTxnResp)
  ))
_sym_db.RegisterMessage(RelayTxnResp)

ChangePassphraseReq = _reflection.GeneratedProtocolMessageType('ChangePassphraseReq', (_message.Message,), dict(
  DESCRIPTOR = _CHANGEPASSPHRASEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.ChangePassphraseReq)
  ))
_sym_db.RegisterMessage(ChangePassphraseReq)

ChangePassphraseResp = _reflection.GeneratedProtocolMessageType('ChangePassphraseResp', (_message.Message,), dict(
  DESCRIPTOR = _CHANGEPASSPHRASERESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.ChangePassphraseResp)
  ))
_sym_db.RegisterMessage(ChangePassphraseResp)

TransactionsByAddressReq = _reflection.GeneratedProtocolMessageType('TransactionsByAddressReq', (_message.Message,), dict(
  DESCRIPTOR = _TRANSACTIONSBYADDRESSREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.TransactionsByAddressReq)
  ))
_sym_db.RegisterMessage(TransactionsByAddressReq)

TransactionsByAddressResp = _reflection.GeneratedProtocolMessageType('TransactionsByAddressResp', (_message.Message,), dict(
  DESCRIPTOR = _TRANSACTIONSBYADDRESSRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.TransactionsByAddressResp)
  ))
_sym_db.RegisterMessage(TransactionsByAddressResp)

TransactionReq = _reflection.GeneratedProtocolMessageType('TransactionReq', (_message.Message,), dict(
  DESCRIPTOR = _TRANSACTIONREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.TransactionReq)
  ))
_sym_db.RegisterMessage(TransactionReq)

TransactionResp = _reflection.GeneratedProtocolMessageType('TransactionResp', (_message.Message,), dict(
  DESCRIPTOR = _TRANSACTIONRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.TransactionResp)
  ))
_sym_db.RegisterMessage(TransactionResp)

BalanceReq = _reflection.GeneratedProtocolMessageType('BalanceReq', (_message.Message,), dict(
  DESCRIPTOR = _BALANCEREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.BalanceReq)
  ))
_sym_db.RegisterMessage(BalanceReq)

BalanceResp = _reflection.GeneratedProtocolMessageType('BalanceResp', (_message.Message,), dict(
  DESCRIPTOR = _BALANCERESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.BalanceResp)
  ))
_sym_db.RegisterMessage(BalanceResp)

OTSReq = _reflection.GeneratedProtocolMessageType('OTSReq', (_message.Message,), dict(
  DESCRIPTOR = _OTSREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.OTSReq)
  ))
_sym_db.RegisterMessage(OTSReq)

OTSResp = _reflection.GeneratedProtocolMessageType('OTSResp', (_message.Message,), dict(
  DESCRIPTOR = _OTSRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.OTSResp)
  ))
_sym_db.RegisterMessage(OTSResp)

HeightReq = _reflection.GeneratedProtocolMessageType('HeightReq', (_message.Message,), dict(
  DESCRIPTOR = _HEIGHTREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.HeightReq)
  ))
_sym_db.RegisterMessage(HeightReq)

HeightResp = _reflection.GeneratedProtocolMessageType('HeightResp', (_message.Message,), dict(
  DESCRIPTOR = _HEIGHTRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.HeightResp)
  ))
_sym_db.RegisterMessage(HeightResp)

BlockReq = _reflection.GeneratedProtocolMessageType('BlockReq', (_message.Message,), dict(
  DESCRIPTOR = _BLOCKREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.BlockReq)
  ))
_sym_db.RegisterMessage(BlockReq)

BlockResp = _reflection.GeneratedProtocolMessageType('BlockResp', (_message.Message,), dict(
  DESCRIPTOR = _BLOCKRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.BlockResp)
  ))
_sym_db.RegisterMessage(BlockResp)

BlockByNumberReq = _reflection.GeneratedProtocolMessageType('BlockByNumberReq', (_message.Message,), dict(
  DESCRIPTOR = _BLOCKBYNUMBERREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.BlockByNumberReq)
  ))
_sym_db.RegisterMessage(BlockByNumberReq)

AddressFromPKReq = _reflection.GeneratedProtocolMessageType('AddressFromPKReq', (_message.Message,), dict(
  DESCRIPTOR = _ADDRESSFROMPKREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddressFromPKReq)
  ))
_sym_db.RegisterMessage(AddressFromPKReq)

AddressFromPKResp = _reflection.GeneratedProtocolMessageType('AddressFromPKResp', (_message.Message,), dict(
  DESCRIPTOR = _ADDRESSFROMPKRESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.AddressFromPKResp)
  ))
_sym_db.RegisterMessage(AddressFromPKResp)

NodeInfoReq = _reflection.GeneratedProtocolMessageType('NodeInfoReq', (_message.Message,), dict(
  DESCRIPTOR = _NODEINFOREQ,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.NodeInfoReq)
  ))
_sym_db.RegisterMessage(NodeInfoReq)

NodeInfoResp = _reflection.GeneratedProtocolMessageType('NodeInfoResp', (_message.Message,), dict(
  DESCRIPTOR = _NODEINFORESP,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.NodeInfoResp)
  ))
_sym_db.RegisterMessage(NodeInfoResp)

PlainGenesisBalance = _reflection.GeneratedProtocolMessageType('PlainGenesisBalance', (_message.Message,), dict(
  DESCRIPTOR = _PLAINGENESISBALANCE,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.PlainGenesisBalance)
  ))
_sym_db.RegisterMessage(PlainGenesisBalance)

PlainAddressAmount = _reflection.GeneratedProtocolMessageType('PlainAddressAmount', (_message.Message,), dict(
  DESCRIPTOR = _PLAINADDRESSAMOUNT,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.PlainAddressAmount)
  ))
_sym_db.RegisterMessage(PlainAddressAmount)

PlainTransaction = _reflection.GeneratedProtocolMessageType('PlainTransaction', (_message.Message,), dict(

  Transfer = _reflection.GeneratedProtocolMessageType('Transfer', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_TRANSFER,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.Transfer)
    ))
  ,

  CoinBase = _reflection.GeneratedProtocolMessageType('CoinBase', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_COINBASE,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.CoinBase)
    ))
  ,

  LatticePublicKey = _reflection.GeneratedProtocolMessageType('LatticePublicKey', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_LATTICEPUBLICKEY,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.LatticePublicKey)
    ))
  ,

  Message = _reflection.GeneratedProtocolMessageType('Message', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_MESSAGE,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.Message)
    ))
  ,

  Token = _reflection.GeneratedProtocolMessageType('Token', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_TOKEN,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.Token)
    ))
  ,

  TransferToken = _reflection.GeneratedProtocolMessageType('TransferToken', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_TRANSFERTOKEN,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.TransferToken)
    ))
  ,

  Slave = _reflection.GeneratedProtocolMessageType('Slave', (_message.Message,), dict(
    DESCRIPTOR = _PLAINTRANSACTION_SLAVE,
    __module__ = 'qrlwallet_pb2'
    # @@protoc_insertion_point(class_scope:qrl.PlainTransaction.Slave)
    ))
  ,
  DESCRIPTOR = _PLAINTRANSACTION,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.PlainTransaction)
  ))
_sym_db.RegisterMessage(PlainTransaction)
_sym_db.RegisterMessage(PlainTransaction.Transfer)
_sym_db.RegisterMessage(PlainTransaction.CoinBase)
_sym_db.RegisterMessage(PlainTransaction.LatticePublicKey)
_sym_db.RegisterMessage(PlainTransaction.Message)
_sym_db.RegisterMessage(PlainTransaction.Token)
_sym_db.RegisterMessage(PlainTransaction.TransferToken)
_sym_db.RegisterMessage(PlainTransaction.Slave)

PlainBlockHeader = _reflection.GeneratedProtocolMessageType('PlainBlockHeader', (_message.Message,), dict(
  DESCRIPTOR = _PLAINBLOCKHEADER,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.PlainBlockHeader)
  ))
_sym_db.RegisterMessage(PlainBlockHeader)

PlainBlock = _reflection.GeneratedProtocolMessageType('PlainBlock', (_message.Message,), dict(
  DESCRIPTOR = _PLAINBLOCK,
  __module__ = 'qrlwallet_pb2'
  # @@protoc_insertion_point(class_scope:qrl.PlainBlock)
  ))
_sym_db.RegisterMessage(PlainBlock)



_WALLETAPI = _descriptor.ServiceDescriptor(
  name='WalletAPI',
  full_name='qrl.WalletAPI',
  file=DESCRIPTOR,
  index=0,
  options=None,
  serialized_start=5279,
  serialized_end=7236,
  methods=[
  _descriptor.MethodDescriptor(
    name='AddNewAddress',
    full_name='qrl.WalletAPI.AddNewAddress',
    index=0,
    containing_service=None,
    input_type=_ADDNEWADDRESSREQ,
    output_type=_ADDNEWADDRESSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='AddNewAddressWithSlaves',
    full_name='qrl.WalletAPI.AddNewAddressWithSlaves',
    index=1,
    containing_service=None,
    input_type=_ADDNEWADDRESSWITHSLAVESREQ,
    output_type=_ADDNEWADDRESSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='ListAddresses',
    full_name='qrl.WalletAPI.ListAddresses',
    index=2,
    containing_service=None,
    input_type=_LISTADDRESSESREQ,
    output_type=_LISTADDRESSESRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RemoveAddress',
    full_name='qrl.WalletAPI.RemoveAddress',
    index=3,
    containing_service=None,
    input_type=_REMOVEADDRESSREQ,
    output_type=_REMOVEADDRESSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='IsValidAddress',
    full_name='qrl.WalletAPI.IsValidAddress',
    index=4,
    containing_service=None,
    input_type=_VALIDADDRESSREQ,
    output_type=_VALIDADDRESSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='EncryptWallet',
    full_name='qrl.WalletAPI.EncryptWallet',
    index=5,
    containing_service=None,
    input_type=_ENCRYPTWALLETREQ,
    output_type=_ENCRYPTWALLETRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='LockWallet',
    full_name='qrl.WalletAPI.LockWallet',
    index=6,
    containing_service=None,
    input_type=_LOCKWALLETREQ,
    output_type=_LOCKWALLETRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='UnlockWallet',
    full_name='qrl.WalletAPI.UnlockWallet',
    index=7,
    containing_service=None,
    input_type=_UNLOCKWALLETREQ,
    output_type=_UNLOCKWALLETRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetRecoverySeeds',
    full_name='qrl.WalletAPI.GetRecoverySeeds',
    index=8,
    containing_service=None,
    input_type=_GETRECOVERYSEEDSREQ,
    output_type=_GETRECOVERYSEEDSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetWalletInfo',
    full_name='qrl.WalletAPI.GetWalletInfo',
    index=9,
    containing_service=None,
    input_type=_GETWALLETINFOREQ,
    output_type=_GETWALLETINFORESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayTransferTxn',
    full_name='qrl.WalletAPI.RelayTransferTxn',
    index=10,
    containing_service=None,
    input_type=_RELAYTRANSFERTXNREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayTransferTxnBySlave',
    full_name='qrl.WalletAPI.RelayTransferTxnBySlave',
    index=11,
    containing_service=None,
    input_type=_RELAYTRANSFERTXNBYSLAVEREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayMessageTxn',
    full_name='qrl.WalletAPI.RelayMessageTxn',
    index=12,
    containing_service=None,
    input_type=_RELAYMESSAGETXNREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayMessageTxnBySlave',
    full_name='qrl.WalletAPI.RelayMessageTxnBySlave',
    index=13,
    containing_service=None,
    input_type=_RELAYMESSAGETXNBYSLAVEREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayTokenTxn',
    full_name='qrl.WalletAPI.RelayTokenTxn',
    index=14,
    containing_service=None,
    input_type=_RELAYTOKENTXNREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayTokenTxnBySlave',
    full_name='qrl.WalletAPI.RelayTokenTxnBySlave',
    index=15,
    containing_service=None,
    input_type=_RELAYTOKENTXNBYSLAVEREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayTransferTokenTxn',
    full_name='qrl.WalletAPI.RelayTransferTokenTxn',
    index=16,
    containing_service=None,
    input_type=_RELAYTRANSFERTOKENTXNREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelayTransferTokenTxnBySlave',
    full_name='qrl.WalletAPI.RelayTransferTokenTxnBySlave',
    index=17,
    containing_service=None,
    input_type=_RELAYTRANSFERTOKENTXNBYSLAVEREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelaySlaveTxn',
    full_name='qrl.WalletAPI.RelaySlaveTxn',
    index=18,
    containing_service=None,
    input_type=_RELAYSLAVETXNREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='RelaySlaveTxnBySlave',
    full_name='qrl.WalletAPI.RelaySlaveTxnBySlave',
    index=19,
    containing_service=None,
    input_type=_RELAYSLAVETXNBYSLAVEREQ,
    output_type=_RELAYTXNRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='ChangePassphrase',
    full_name='qrl.WalletAPI.ChangePassphrase',
    index=20,
    containing_service=None,
    input_type=_CHANGEPASSPHRASEREQ,
    output_type=_CHANGEPASSPHRASERESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetTransactionsByAddress',
    full_name='qrl.WalletAPI.GetTransactionsByAddress',
    index=21,
    containing_service=None,
    input_type=_TRANSACTIONSBYADDRESSREQ,
    output_type=_TRANSACTIONSBYADDRESSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetTransaction',
    full_name='qrl.WalletAPI.GetTransaction',
    index=22,
    containing_service=None,
    input_type=_TRANSACTIONREQ,
    output_type=_TRANSACTIONRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetBalance',
    full_name='qrl.WalletAPI.GetBalance',
    index=23,
    containing_service=None,
    input_type=_BALANCEREQ,
    output_type=_BALANCERESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetOTS',
    full_name='qrl.WalletAPI.GetOTS',
    index=24,
    containing_service=None,
    input_type=_OTSREQ,
    output_type=_OTSRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetHeight',
    full_name='qrl.WalletAPI.GetHeight',
    index=25,
    containing_service=None,
    input_type=_HEIGHTREQ,
    output_type=_HEIGHTRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetBlock',
    full_name='qrl.WalletAPI.GetBlock',
    index=26,
    containing_service=None,
    input_type=_BLOCKREQ,
    output_type=_BLOCKRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetBlockByNumber',
    full_name='qrl.WalletAPI.GetBlockByNumber',
    index=27,
    containing_service=None,
    input_type=_BLOCKBYNUMBERREQ,
    output_type=_BLOCKRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetAddressFromPK',
    full_name='qrl.WalletAPI.GetAddressFromPK',
    index=28,
    containing_service=None,
    input_type=_ADDRESSFROMPKREQ,
    output_type=_ADDRESSFROMPKRESP,
    options=None,
  ),
  _descriptor.MethodDescriptor(
    name='GetNodeInfo',
    full_name='qrl.WalletAPI.GetNodeInfo',
    index=29,
    containing_service=None,
    input_type=_NODEINFOREQ,
    output_type=_NODEINFORESP,
    options=None,
  ),
])
_sym_db.RegisterServiceDescriptor(_WALLETAPI)

DESCRIPTOR.services_by_name['WalletAPI'] = _WALLETAPI

# @@protoc_insertion_point(module_scope)
