{
  "nested": {
    "protocol": {
      "options": {
        "java_package": "cn.openchain.blockchain.adapter3"
      },
      "nested": {
        "Account": {
          "fields": {
            "address": {
              "type": "string",
              "id": 1
            },
            "nonce": {
              "type": "int64",
              "id": 2
            },
            "priv": {
              "type": "AccountPrivilege",
              "id": 3
            },
            "metadatasHash": {
              "type": "bytes",
              "id": 4
            },
            "assetsHash": {
              "type": "bytes",
              "id": 5
            },
            "contract": {
              "type": "Contract",
              "id": 6
            },
            "balance": {
              "type": "int64",
              "id": 7
            }
          }
        },
        "AssetKey": {
          "fields": {
            "issuer": {
              "type": "string",
              "id": 1
            },
            "code": {
              "type": "string",
              "id": 2
            },
            "type": {
              "type": "int32",
              "id": 3
            }
          }
        },
        "Asset": {
          "fields": {
            "key": {
              "type": "AssetKey",
              "id": 1
            },
            "amount": {
              "type": "int64",
              "id": 2
            }
          }
        },
        "AssetStore": {
          "fields": {
            "key": {
              "type": "AssetKey",
              "id": 1
            },
            "amount": {
              "type": "int64",
              "id": 2
            }
          }
        },
        "LedgerHeader": {
          "fields": {
            "seq": {
              "type": "int64",
              "id": 1
            },
            "hash": {
              "type": "bytes",
              "id": 2
            },
            "previousHash": {
              "type": "bytes",
              "id": 3
            },
            "accountTreeHash": {
              "type": "bytes",
              "id": 4
            },
            "closeTime": {
              "type": "int64",
              "id": 5
            },
            "consensusValueHash": {
              "type": "bytes",
              "id": 6
            },
            "version": {
              "type": "int64",
              "id": 7
            },
            "txCount": {
              "type": "int64",
              "id": 8
            },
            "validatorsHash": {
              "type": "bytes",
              "id": 9
            },
            "reserve": {
              "type": "string",
              "id": 10
            },
            "feesHash": {
              "type": "bytes",
              "id": 11
            },
            "chainId": {
              "type": "int64",
              "id": 12
            }
          }
        },
        "Ledger": {
          "fields": {
            "header": {
              "type": "LedgerHeader",
              "id": 1
            },
            "transactionEnvs": {
              "rule": "repeated",
              "type": "TransactionEnv",
              "id": 2
            }
          }
        },
        "OperationPayAsset": {
          "fields": {
            "destAddress": {
              "type": "string",
              "id": 1
            },
            "asset": {
              "type": "Asset",
              "id": 2
            },
            "input": {
              "type": "string",
              "id": 3
            }
          }
        },
        "OperationTypeThreshold": {
          "fields": {
            "type": {
              "type": "Operation.Type",
              "id": 1
            },
            "threshold": {
              "type": "int64",
              "id": 2
            }
          }
        },
        "AccountPrivilege": {
          "fields": {
            "masterWeight": {
              "type": "int64",
              "id": 1
            },
            "signers": {
              "rule": "repeated",
              "type": "Signer",
              "id": 2
            },
            "thresholds": {
              "type": "AccountThreshold",
              "id": 3
            }
          }
        },
        "AccountThreshold": {
          "fields": {
            "txThreshold": {
              "type": "int64",
              "id": 1
            },
            "typeThresholds": {
              "rule": "repeated",
              "type": "OperationTypeThreshold",
              "id": 2
            }
          }
        },
        "OperationIssueAsset": {
          "fields": {
            "code": {
              "type": "string",
              "id": 1
            },
            "amount": {
              "type": "int64",
              "id": 2
            }
          }
        },
        "OperationPayCoin": {
          "fields": {
            "destAddress": {
              "type": "string",
              "id": 1
            },
            "amount": {
              "type": "int64",
              "id": 2
            },
            "input": {
              "type": "string",
              "id": 3
            }
          }
        },
        "OperationSetSignerWeight": {
          "fields": {
            "masterWeight": {
              "type": "int64",
              "id": 1
            },
            "signers": {
              "rule": "repeated",
              "type": "Signer",
              "id": 2
            }
          }
        },
        "OperationLog": {
          "fields": {
            "topic": {
              "type": "string",
              "id": 1
            },
            "datas": {
              "rule": "repeated",
              "type": "string",
              "id": 2
            }
          }
        },
        "OperationSetPrivilege": {
          "fields": {
            "masterWeight": {
              "type": "string",
              "id": 1
            },
            "signers": {
              "rule": "repeated",
              "type": "Signer",
              "id": 2
            },
            "txThreshold": {
              "type": "string",
              "id": 3
            },
            "typeThresholds": {
              "rule": "repeated",
              "type": "OperationTypeThreshold",
              "id": 4
            }
          }
        },
        "Operation": {
          "fields": {
            "type": {
              "type": "Type",
              "id": 1
            },
            "sourceAddress": {
              "type": "string",
              "id": 2
            },
            "metadata": {
              "type": "bytes",
              "id": 3
            },
            "exprCondition": {
              "type": "string",
              "id": 4
            },
            "createAccount": {
              "type": "OperationCreateAccount",
              "id": 5
            },
            "issueAsset": {
              "type": "OperationIssueAsset",
              "id": 6
            },
            "payAsset": {
              "type": "OperationPayAsset",
              "id": 7
            },
            "setMetadata": {
              "type": "OperationSetMetadata",
              "id": 9
            },
            "setSignerWeight": {
              "type": "OperationSetSignerWeight",
              "id": 10
            },
            "setThreshold": {
              "type": "OperationSetThreshold",
              "id": 11
            },
            "payCoin": {
              "type": "OperationPayCoin",
              "id": 12
            },
            "log": {
              "type": "OperationLog",
              "id": 13
            },
            "setPrivilege": {
              "type": "OperationSetPrivilege",
              "id": 14
            }
          },
          "nested": {
            "Type": {
              "values": {
                "UNKNOWN": 0,
                "CREATE_ACCOUNT": 1,
                "ISSUE_ASSET": 2,
                "PAY_ASSET": 3,
                "SET_METADATA": 4,
                "SET_SIGNER_WEIGHT": 5,
                "SET_THRESHOLD": 6,
                "PAY_COIN": 7,
                "LOG": 8,
                "SET_PRIVILEGE": 9
              }
            }
          }
        },
        "OperationSetThreshold": {
          "fields": {
            "txThreshold": {
              "type": "int64",
              "id": 1
            },
            "typeThresholds": {
              "rule": "repeated",
              "type": "OperationTypeThreshold",
              "id": 4
            }
          }
        },
        "Transaction": {
          "fields": {
            "sourceAddress": {
              "type": "string",
              "id": 1
            },
            "nonce": {
              "type": "int64",
              "id": 2
            },
            "exprCondition": {
              "type": "string",
              "id": 3
            },
            "operations": {
              "rule": "repeated",
              "type": "Operation",
              "id": 4
            },
            "metadata": {
              "type": "bytes",
              "id": 5
            },
            "feeLimit": {
              "type": "int64",
              "id": 6
            },
            "gasPrice": {
              "type": "int64",
              "id": 7
            },
            "ceilLedgerSeq": {
              "type": "int64",
              "id": 8
            },
            "chainId": {
              "type": "int64",
              "id": 9
            }
          },
          "nested": {
            "Limit": {
              "values": {
                "UNKNOWN": 0,
                "OPERATIONS": 1000
              }
            }
          }
        },
        "Signer": {
          "fields": {
            "address": {
              "type": "string",
              "id": 1
            },
            "weight": {
              "type": "int64",
              "id": 2
            }
          },
          "nested": {
            "Limit": {
              "values": {
                "SIGNER_NONE": 0,
                "SIGNER": 100
              }
            }
          }
        },
        "Trigger": {
          "fields": {
            "transactionType": {
              "type": "TransactionType",
              "id": 1
            },
            "ledgerSeq": {
              "type": "int64",
              "id": 2
            },
            "transaction": {
              "type": "OperationTrigger",
              "id": 3
            }
          },
          "nested": {
            "TransactionType": {
              "values": {
                "NORMAL_TRANSACTION": 0,
                "CONTRACT_TRANSACTION": 1
              }
            },
            "OperationTrigger": {
              "fields": {
                "hash": {
                  "type": "bytes",
                  "id": 1
                },
                "index": {
                  "type": "int64",
                  "id": 2
                }
              }
            }
          }
        },
        "Limit": {
          "values": {
            "UNKNOWN": 0,
            "SIGNATURE": 100
          }
        },
        "TransactionEnv": {
          "fields": {
            "transaction": {
              "type": "Transaction",
              "id": 1
            },
            "signatures": {
              "rule": "repeated",
              "type": "Signature",
              "id": 2
            },
            "trigger": {
              "type": "Trigger",
              "id": 3
            }
          }
        },
        "TransactionEnvStore": {
          "fields": {
            "transactionEnv": {
              "type": "TransactionEnv",
              "id": 1
            },
            "errorCode": {
              "type": "int32",
              "id": 2
            },
            "errorDesc": {
              "type": "string",
              "id": 3
            },
            "ledgerSeq": {
              "type": "int64",
              "id": 4
            },
            "closeTime": {
              "type": "int64",
              "id": 5
            },
            "hash": {
              "type": "bytes",
              "id": 6
            },
            "actualFee": {
              "type": "int64",
              "id": 7
            },
            "contractTxHashes": {
              "rule": "repeated",
              "type": "bytes",
              "id": 8
            }
          }
        },
        "TransactionEnvSet": {
          "fields": {
            "txs": {
              "rule": "repeated",
              "type": "TransactionEnv",
              "id": 2
            }
          }
        },
        "ConsensusValueValidation": {
          "fields": {
            "expireTxIds": {
              "rule": "repeated",
              "type": "int32",
              "id": 1
            },
            "errorTxIds": {
              "rule": "repeated",
              "type": "int32",
              "id": 2
            }
          }
        },
        "ConsensusValue": {
          "fields": {
            "txset": {
              "type": "TransactionEnvSet",
              "id": 1
            },
            "closeTime": {
              "type": "int64",
              "id": 2
            },
            "previousProof": {
              "type": "bytes",
              "id": 3
            },
            "ledgerSeq": {
              "type": "int64",
              "id": 4
            },
            "previousLedgerHash": {
              "type": "bytes",
              "id": 5
            },
            "ledgerUpgrade": {
              "type": "LedgerUpgrade",
              "id": 6
            },
            "validation": {
              "type": "ConsensusValueValidation",
              "id": 7
            }
          }
        },
        "Contract": {
          "fields": {
            "type": {
              "type": "ContractType",
              "id": 1
            },
            "payload": {
              "type": "string",
              "id": 2
            }
          },
          "nested": {
            "ContractType": {
              "values": {
                "JAVASCRIPT": 0
              }
            }
          }
        },
        "OperationCreateAccount": {
          "fields": {
            "destAddress": {
              "type": "string",
              "id": 1
            },
            "contract": {
              "type": "Contract",
              "id": 2
            },
            "priv": {
              "type": "AccountPrivilege",
              "id": 3
            },
            "metadatas": {
              "rule": "repeated",
              "type": "KeyPair",
              "id": 4
            },
            "initBalance": {
              "type": "int64",
              "id": 5
            },
            "initInput": {
              "type": "string",
              "id": 6
            }
          }
        },
        "OperationSetMetadata": {
          "fields": {
            "key": {
              "type": "string",
              "id": 1
            },
            "value": {
              "type": "string",
              "id": 2
            },
            "version": {
              "type": "int64",
              "id": 3
            },
            "deleteFlag": {
              "type": "bool",
              "id": 4
            }
          }
        },
        "KeyPair": {
          "fields": {
            "key": {
              "type": "string",
              "id": 1
            },
            "value": {
              "type": "string",
              "id": 2
            },
            "version": {
              "type": "int64",
              "id": 3
            }
          }
        },
        "Signature": {
          "fields": {
            "publicKey": {
              "type": "string",
              "id": 1
            },
            "signData": {
              "type": "bytes",
              "id": 2
            }
          }
        },
        "LedgerUpgrade": {
          "fields": {
            "newLedgerVersion": {
              "type": "int64",
              "id": 1
            },
            "newValidatorList": {
              "rule": "repeated",
              "type": "string",
              "id": 2
            },
            "delValidators": {
              "rule": "repeated",
              "type": "string",
              "id": 3
            },
            "chainId": {
              "type": "int64",
              "id": 4
            }
          }
        },
        "WsMessage": {
          "fields": {
            "type": {
              "type": "int64",
              "id": 1
            },
            "request": {
              "type": "bool",
              "id": 2
            },
            "sequence": {
              "type": "int64",
              "id": 3
            },
            "data": {
              "type": "bytes",
              "id": 4
            }
          }
        },
        "Ping": {
          "fields": {
            "nonce": {
              "type": "int64",
              "id": 1
            }
          }
        },
        "Pong": {
          "fields": {
            "nonce": {
              "type": "int64",
              "id": 1
            }
          }
        },
        "ERRORCODE": {
          "values": {
            "ERRCODE_SUCCESS": 0,
            "ERRCODE_INTERNAL_ERROR": 1,
            "ERRCODE_INVALID_PARAMETER": 2,
            "ERRCODE_ALREADY_EXIST": 3,
            "ERRCODE_NOT_EXIST": 4,
            "ERRCODE_TX_TIMEOUT": 5,
            "ERRCODE_ACCESS_DENIED": 6,
            "ERRCODE_MATH_OVERFLOW": 7,
            "ERRCODE_EXPR_CONDITION_RESULT_FALSE": 20,
            "ERRCODE_EXPR_CONDITION_SYNTAX_ERROR": 21,
            "ERRCODE_INVALID_PUBKEY": 90,
            "ERRCODE_INVALID_PRIKEY": 91,
            "ERRCODE_ASSET_INVALID": 92,
            "ERRCODE_INVALID_SIGNATURE": 93,
            "ERRCODE_INVALID_ADDRESS": 94,
            "ERRCODE_MISSING_OPERATIONS": 97,
            "ERRCODE_TOO_MANY_OPERATIONS": 98,
            "ERRCODE_BAD_SEQUENCE": 99,
            "ERRCODE_ACCOUNT_LOW_RESERVE": 100,
            "ERRCODE_ACCOUNT_SOURCEDEST_EQUAL": 101,
            "ERRCODE_ACCOUNT_DEST_EXIST": 102,
            "ERRCODE_ACCOUNT_NOT_EXIST": 103,
            "ERRCODE_ACCOUNT_ASSET_LOW_RESERVE": 104,
            "ERRCODE_ACCOUNT_ASSET_AMOUNT_TOO_LARGE": 105,
            "ERRCODE_ACCOUNT_INIT_LOW_RESERVE": 106,
            "ERRCODE_FEE_NOT_ENOUGH": 111,
            "ERRCODE_FEE_INVALID": 112,
            "ERRCODE_OUT_OF_TXCACHE": 114,
            "ERRCODE_WEIGHT_NOT_VALID": 120,
            "ERRCODE_THRESHOLD_NOT_VALID": 121,
            "ERRCODE_INVALID_DATAVERSION": 144,
            "ERRCODE_TX_SIZE_TOO_BIG": 146,
            "ERRCODE_CONTRACT_EXECUTE_FAIL": 151,
            "ERRCODE_CONTRACT_SYNTAX_ERROR": 152,
            "ERRCODE_CONTRACT_TOO_MANY_RECURSION": 153,
            "ERRCODE_CONTRACT_TOO_MANY_TRANSACTIONS": 154,
            "ERRCODE_CONTRACT_EXECUTE_EXPIRED": 155,
            "ERRCODE_TX_INSERT_QUEUE_FAIL": 160
          }
        },
        "OVERLAY_MESSAGE_TYPE": {
          "values": {
            "OVERLAY_MSGTYPE_NONE": 0,
            "OVERLAY_MSGTYPE_PING": 1,
            "OVERLAY_MSGTYPE_HELLO": 2,
            "OVERLAY_MSGTYPE_PEERS": 3,
            "OVERLAY_MSGTYPE_TRANSACTION": 4,
            "OVERLAY_MSGTYPE_LEDGERS": 5,
            "OVERLAY_MSGTYPE_PBFT": 6,
            "OVERLAY_MSGTYPE_LEDGER_UPGRADE_NOTIFY": 7
          }
        },
        "Hello": {
          "fields": {
            "networkId": {
              "type": "int64",
              "id": 1
            },
            "ledgerVersion": {
              "type": "int64",
              "id": 2
            },
            "overlayVersion": {
              "type": "int64",
              "id": 3
            },
            "opchainVersion": {
              "type": "string",
              "id": 4
            },
            "listeningPort": {
              "type": "int64",
              "id": 5
            },
            "nodeAddress": {
              "type": "string",
              "id": 6
            },
            "nodeRand": {
              "type": "string",
              "id": 7
            },
            "license": {
              "type": "string",
              "id": 8
            }
          }
        },
        "HelloResponse": {
          "fields": {
            "errorCode": {
              "type": "ERRORCODE",
              "id": 1
            },
            "errorDesc": {
              "type": "string",
              "id": 2
            }
          }
        },
        "Peer": {
          "fields": {
            "ip": {
              "type": "string",
              "id": 1
            },
            "port": {
              "type": "int64",
              "id": 2
            },
            "numFailures": {
              "type": "int64",
              "id": 3
            },
            "nextAttemptTime": {
              "type": "int64",
              "id": 4
            },
            "activeTime": {
              "type": "int64",
              "id": 5
            },
            "connectionId": {
              "type": "int64",
              "id": 6
            }
          }
        },
        "Peers": {
          "fields": {
            "peers": {
              "rule": "repeated",
              "type": "Peer",
              "id": 1
            }
          }
        },
        "GetLedgers": {
          "fields": {
            "begin": {
              "type": "int64",
              "id": 1
            },
            "end": {
              "type": "int64",
              "id": 2
            },
            "timestamp": {
              "type": "int64",
              "id": 3
            },
            "chainId": {
              "type": "int64",
              "id": 4
            }
          }
        },
        "Ledgers": {
          "fields": {
            "values": {
              "rule": "repeated",
              "type": "ConsensusValue",
              "id": 1
            },
            "syncCode": {
              "type": "SyncCode",
              "id": 2
            },
            "maxSeq": {
              "type": "int64",
              "id": 3
            },
            "proof": {
              "type": "bytes",
              "id": 4
            },
            "chainId": {
              "type": "int64",
              "id": 5
            }
          },
          "nested": {
            "SyncCode": {
              "values": {
                "OK": 0,
                "OUT_OF_SYNC": 1,
                "OUT_OF_LEDGERS": 2,
                "BUSY": 3,
                "REFUSE": 4,
                "INTERNAL": 5
              }
            }
          }
        },
        "DontHave": {
          "fields": {
            "type": {
              "type": "int64",
              "id": 1
            },
            "hash": {
              "type": "bytes",
              "id": 2
            }
          }
        },
        "LedgerUpgradeNotify": {
          "fields": {
            "nonce": {
              "type": "int64",
              "id": 1
            },
            "upgrade": {
              "type": "LedgerUpgrade",
              "id": 2
            },
            "signature": {
              "type": "Signature",
              "id": 3
            }
          }
        },
        "EntryList": {
          "fields": {
            "entry": {
              "rule": "repeated",
              "type": "bytes",
              "id": 1
            }
          }
        },
        "ChainMessageType": {
          "values": {
            "CHAIN_TYPE_NONE": 0,
            "CHAIN_HELLO": 10,
            "CHAIN_TX_STATUS": 11,
            "CHAIN_PEER_ONLINE": 12,
            "CHAIN_PEER_OFFLINE": 13,
            "CHAIN_PEER_MESSAGE": 14,
            "CHAIN_SUBMITTRANSACTION": 15,
            "CHAIN_LEDGER_HEADER": 16,
            "CHAIN_CONTRACT_LOG": 17,
            "CHAIN_LEDGER_TXS": 18,
            "CHAIN_SUBSCRIBE_TX": 19,
            "CHAIN_TX_ENV_STORE": 20
          }
        },
        "ChainHello": {
          "fields": {
            "apiList": {
              "rule": "repeated",
              "type": "ChainMessageType",
              "id": 1
            },
            "timestamp": {
              "type": "int64",
              "id": 2
            }
          }
        },
        "ChainStatus": {
          "fields": {
            "selfAddr": {
              "type": "string",
              "id": 1
            },
            "ledgerVersion": {
              "type": "int64",
              "id": 2
            },
            "monitorVersion": {
              "type": "int64",
              "id": 3
            },
            "opchainVersion": {
              "type": "string",
              "id": 4
            },
            "timestamp": {
              "type": "int64",
              "id": 5
            },
            "networkId": {
              "type": "int64",
              "id": 6
            }
          }
        },
        "ChainPeerMessage": {
          "fields": {
            "srcPeerAddr": {
              "type": "string",
              "id": 1
            },
            "desPeerAddrs": {
              "rule": "repeated",
              "type": "string",
              "id": 2
            },
            "data": {
              "type": "bytes",
              "id": 3
            }
          }
        },
        "ChainSubscribeTx": {
          "fields": {
            "address": {
              "rule": "repeated",
              "type": "string",
              "id": 1
            }
          }
        },
        "ChainResponse": {
          "fields": {
            "errorCode": {
              "type": "int32",
              "id": 1
            },
            "errorDesc": {
              "type": "string",
              "id": 2
            }
          }
        },
        "ChainTxStatus": {
          "fields": {
            "status": {
              "type": "TxStatus",
              "id": 1
            },
            "txHash": {
              "type": "string",
              "id": 2
            },
            "sourceAddress": {
              "type": "string",
              "id": 3
            },
            "sourceAccountSeq": {
              "type": "int64",
              "id": 4
            },
            "ledgerSeq": {
              "type": "int64",
              "id": 5
            },
            "newAccountSeq": {
              "type": "int64",
              "id": 6
            },
            "errorCode": {
              "type": "ERRORCODE",
              "id": 7
            },
            "errorDesc": {
              "type": "string",
              "id": 8
            },
            "timestamp": {
              "type": "int64",
              "id": 9
            }
          },
          "nested": {
            "TxStatus": {
              "values": {
                "UNDEFINED": 0,
                "CONFIRMED": 1,
                "PENDING": 2,
                "COMPLETE": 3,
                "FAILURE": 4,
                "APPLY_FAILURE": 5
              }
            }
          }
        },
        "TransactionEnvResult": {
          "fields": {
            "tranEnv": {
              "type": "protocol.TransactionEnv",
              "id": 1
            },
            "txHash": {
              "type": "string",
              "id": 2
            },
            "errorCode": {
              "type": "ERRORCODE",
              "id": 3
            },
            "errorDesc": {
              "type": "string",
              "id": 4
            }
          }
        },
        "LedgerTxs": {
          "fields": {
            "header": {
              "type": "protocol.LedgerHeader",
              "id": 1
            },
            "txs": {
              "rule": "repeated",
              "type": "TransactionEnvResult",
              "id": 2
            },
            "ledgerLength": {
              "type": "int64",
              "id": 3
            }
          }
        },
        "ChainContractLog": {
          "fields": {
            "sender": {
              "type": "string",
              "id": 1
            },
            "data": {
              "type": "string",
              "id": 2
            },
            "timestamp": {
              "type": "int64",
              "id": 3
            }
          }
        }
      }
    },
    "monitor": {
      "options": {
        "java_package": "cn.openchain.blockchain.adapter3"
      },
      "nested": {
        "MONITOR_MESSAGE_TYPE": {
          "values": {
            "MONITOR_MSGTYPE_NONE": 0,
            "MONITOR_MSGTYPE_HELLO": 30,
            "MONITOR_MSGTYPE_REGISTER": 31,
            "MONITOR_MSGTYPE_SYSTEM": 34,
            "MONITOR_MSGTYPE_CHAIN": 40,
            "MONITOR_MSGTYPE_AUTHORIZATION": 41,
            "MONITOR_MSGTYPE_NODE_INFO": 42,
            "MONITOR_MSGTYPE_BROADCAST": 43
          }
        },
        "Hello": {
          "fields": {
            "serviceVersion": {
              "type": "int64",
              "id": 1
            },
            "connectionTimeout": {
              "type": "int64",
              "id": 2
            },
            "timestamp": {
              "type": "int64",
              "id": 3
            }
          }
        },
        "SystemInfo": {
          "fields": {
            "hostName": {
              "type": "string",
              "id": 1
            },
            "osVersion": {
              "type": "string",
              "id": 2
            },
            "osBit": {
              "type": "string",
              "id": 3
            },
            "systemUptime": {
              "type": "int64",
              "id": 4
            },
            "cpuId": {
              "type": "string",
              "id": 5
            },
            "macAddresses": {
              "rule": "repeated",
              "type": "string",
              "id": 6
            }
          }
        },
        "Register": {
          "fields": {
            "id": {
              "type": "string",
              "id": 1
            },
            "blockchainVersion": {
              "type": "string",
              "id": 2
            },
            "agentVersion": {
              "type": "int64",
              "id": 3
            },
            "networkId": {
              "type": "int64",
              "id": 4
            },
            "nodeAddress": {
              "type": "string",
              "id": 5
            },
            "validatorAddress": {
              "type": "string",
              "id": 6
            },
            "processUptime": {
              "type": "int64",
              "id": 7
            },
            "ledgerHeader": {
              "type": "protocol.LedgerHeader",
              "id": 8
            },
            "system": {
              "type": "SystemInfo",
              "id": 9
            },
            "timestamp": {
              "type": "int64",
              "id": 10
            },
            "binPath": {
              "type": "string",
              "id": 11
            }
          }
        },
        "Peer": {
          "fields": {
            "nodeAddress": {
              "type": "string",
              "id": 1
            },
            "delay": {
              "type": "int64",
              "id": 2
            },
            "active": {
              "type": "bool",
              "id": 3
            },
            "ipAddress": {
              "type": "string",
              "id": 4
            },
            "activeTime": {
              "type": "int64",
              "id": 5
            },
            "inBound": {
              "type": "bool",
              "id": 6
            }
          }
        },
        "P2PConnection": {
          "fields": {
            "listenPort": {
              "type": "int64",
              "id": 1
            },
            "peers": {
              "rule": "repeated",
              "type": "Peer",
              "id": 2
            }
          }
        },
        "ListenAddresses": {
          "fields": {
            "p2pConnection": {
              "type": "P2PConnection",
              "id": 1
            },
            "webserver": {
              "type": "string",
              "id": 2
            },
            "wsserver": {
              "type": "string",
              "id": 3
            }
          }
        },
        "ChainStatus": {
          "fields": {
            "ledgerHeader": {
              "type": "protocol.LedgerHeader",
              "id": 1
            },
            "validators": {
              "rule": "repeated",
              "type": "string",
              "id": 2
            },
            "transactionsCacheSize": {
              "type": "int64",
              "id": 3
            },
            "accountCount": {
              "type": "int64",
              "id": 4
            },
            "listenAddresses": {
              "type": "ListenAddresses",
              "id": 5
            },
            "timestamp": {
              "type": "int64",
              "id": 6
            }
          }
        },
        "SystemResource": {
          "fields": {
            "available": {
              "type": "int64",
              "id": 1
            },
            "total": {
              "type": "int64",
              "id": 2
            },
            "usedPercent": {
              "type": "double",
              "id": 3
            }
          }
        },
        "SystemStatus": {
          "fields": {
            "cpu": {
              "type": "double",
              "id": 1
            },
            "memory": {
              "type": "SystemResource",
              "id": 2
            },
            "discs": {
              "rule": "repeated",
              "type": "Disc",
              "id": 3
            }
          }
        },
        "Disc": {
          "fields": {
            "path": {
              "type": "string",
              "id": 1
            },
            "resource": {
              "type": "SystemResource",
              "id": 2
            }
          }
        },
        "SignAlgorithm": {
          "fields": {
            "algorithm": {
              "type": "string",
              "id": 1
            },
            "parameter": {
              "type": "string",
              "id": 2
            }
          }
        },
        "CertSign": {
          "fields": {
            "signAlgorithm": {
              "type": "SignAlgorithm",
              "id": 1
            },
            "sign": {
              "type": "bytes",
              "id": 2
            }
          }
        },
        "Validity": {
          "fields": {
            "notBefore": {
              "type": "int64",
              "id": 1
            },
            "notAfter": {
              "type": "int64",
              "id": 2
            }
          }
        },
        "CertPublic": {
          "fields": {
            "algorithm": {
              "type": "SignAlgorithm",
              "id": 1
            },
            "modules": {
              "type": "bytes",
              "id": 2
            },
            "keySize": {
              "type": "string",
              "id": 3
            },
            "exponent": {
              "type": "string",
              "id": 4
            }
          }
        },
        "CertExtension": {
          "fields": {
            "name": {
              "type": "string",
              "id": 1
            },
            "value": {
              "type": "string",
              "id": 2
            }
          }
        },
        "CertExtensions": {
          "fields": {
            "isCa": {
              "type": "bool",
              "id": 1
            },
            "certExtensions": {
              "rule": "repeated",
              "type": "CertExtension",
              "id": 2
            }
          }
        },
        "Cert": {
          "fields": {
            "version": {
              "type": "string",
              "id": 1
            },
            "id": {
              "type": "string",
              "id": 2
            },
            "sign": {
              "type": "CertSign",
              "id": 3
            },
            "issuer": {
              "type": "string",
              "id": 4
            },
            "validity": {
              "type": "Validity",
              "id": 5
            },
            "subject": {
              "type": "string",
              "id": 6
            },
            "certPublic": {
              "type": "CertPublic",
              "id": 7
            },
            "certExtensions": {
              "type": "CertExtensions",
              "id": 8
            }
          }
        },
        "LicenseMessage": {
          "fields": {
            "id": {
              "type": "string",
              "id": 1
            },
            "networkId": {
              "type": "int64",
              "id": 2
            },
            "authority": {
              "type": "string",
              "id": 3
            },
            "subject": {
              "type": "string",
              "id": 4
            },
            "certificateId": {
              "type": "string",
              "id": 5
            },
            "hardware": {
              "type": "string",
              "id": 6
            },
            "time": {
              "type": "string",
              "id": 7
            },
            "extraData": {
              "type": "string",
              "id": 8
            },
            "version": {
              "type": "string",
              "id": 9
            }
          }
        },
        "License": {
          "fields": {
            "message": {
              "type": "LicenseMessage",
              "id": 1
            },
            "verification": {
              "type": "protocol.Signature",
              "id": 2
            }
          }
        },
        "Authorization": {
          "fields": {
            "verify": {
              "type": "Cert",
              "id": 1
            },
            "entity": {
              "type": "Cert",
              "id": 2
            },
            "license": {
              "type": "License",
              "id": 3
            }
          }
        },
        "NodeInfo": {
          "fields": {
            "chainStatus": {
              "type": "ChainStatus",
              "id": 1
            },
            "systemStatus": {
              "type": "SystemStatus",
              "id": 2
            },
            "authorization": {
              "type": "Authorization",
              "id": 3
            }
          }
        },
        "BroadcastTx": {
          "fields": {
            "networkId": {
              "type": "int64",
              "id": 1
            },
            "sourceNodeAddress": {
              "type": "string",
              "id": 2
            },
            "targetNodeAddresses": {
              "rule": "repeated",
              "type": "string",
              "id": 3
            },
            "txHash": {
              "type": "string",
              "id": 4
            },
            "timestamp": {
              "type": "int64",
              "id": 5
            }
          }
        }
      }
    }
  }
}