content: // Generated by the protocol buffer compiler.  DO NOT EDIT!
  // source: message.proto
  
  package org.aion.api.server.pb;
  
  public final class Message {
    private Message() {}
    public static void registerAllExtensions(
        com.google.protobuf.ExtensionRegistryLite registry) {
    }
  
    public static void registerAllExtensions(
        com.google.protobuf.ExtensionRegistry registry) {
      registerAllExtensions(
          (com.google.protobuf.ExtensionRegistryLite) registry);
    }
    /**
     * Protobuf enum {@code org.aion.api.server.pb.Servs}
     */
    public enum Servs
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>s_hb = 0;</code>
       */
      s_hb(0),
      /**
       * <code>s_admin = 1;</code>
       */
      s_admin(1),
      /**
       * <code>s_chain = 2;</code>
       */
      s_chain(2),
      /**
       * <code>s_account = 3;</code>
       */
      s_account(3),
      /**
       * <code>s_tx = 4;</code>
       */
      s_tx(4),
      /**
       * <code>s_net = 5;</code>
       */
      s_net(5),
      /**
       * <code>s_mine = 6;</code>
       */
      s_mine(6),
      /**
       * <code>s_privilege = 7;</code>
       */
      s_privilege(7),
      /**
       * <code>s_wallet = 8;</code>
       */
      s_wallet(8),
      /**
       * <code>s_NA = 9;</code>
       */
      s_NA(9),
      UNRECOGNIZED(-1),
      ;
  
      /**
       * <code>s_hb = 0;</code>
       */
      public static final int s_hb_VALUE = 0;
      /**
       * <code>s_admin = 1;</code>
       */
      public static final int s_admin_VALUE = 1;
      /**
       * <code>s_chain = 2;</code>
       */
      public static final int s_chain_VALUE = 2;
      /**
       * <code>s_account = 3;</code>
       */
      public static final int s_account_VALUE = 3;
      /**
       * <code>s_tx = 4;</code>
       */
      public static final int s_tx_VALUE = 4;
      /**
       * <code>s_net = 5;</code>
       */
      public static final int s_net_VALUE = 5;
      /**
       * <code>s_mine = 6;</code>
       */
      public static final int s_mine_VALUE = 6;
      /**
       * <code>s_privilege = 7;</code>
       */
      public static final int s_privilege_VALUE = 7;
      /**
       * <code>s_wallet = 8;</code>
       */
      public static final int s_wallet_VALUE = 8;
      /**
       * <code>s_NA = 9;</code>
       */
      public static final int s_NA_VALUE = 9;
  
  
      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }
  
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Servs valueOf(int value) {
        return forNumber(value);
      }
  
      public static Servs forNumber(int value) {
        switch (value) {
          case 0: return s_hb;
          case 1: return s_admin;
          case 2: return s_chain;
          case 3: return s_account;
          case 4: return s_tx;
          case 5: return s_net;
          case 6: return s_mine;
          case 7: return s_privilege;
          case 8: return s_wallet;
          case 9: return s_NA;
          default: return null;
        }
      }
  
      public static com.google.protobuf.Internal.EnumLiteMap<Servs>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Servs> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Servs>() {
              public Servs findValueByNumber(int number) {
                return Servs.forNumber(number);
              }
            };
  
      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.getDescriptor().getEnumTypes().get(0);
      }
  
      private static final Servs[] VALUES = values();
  
      public static Servs valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private Servs(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:org.aion.api.server.pb.Servs)
    }
  
    /**
     * Protobuf enum {@code org.aion.api.server.pb.Funcs}
     */
    public enum Funcs
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>f_protocolVersion = 0;</code>
       */
      f_protocolVersion(0),
      /**
       * <code>f_minerAddress = 1;</code>
       */
      f_minerAddress(1),
      /**
       * <code>f_accounts = 2;</code>
       */
      f_accounts(2),
      /**
       * <code>f_blockNumber = 3;</code>
       */
      f_blockNumber(3),
      /**
       * <code>f_getBalance = 4;</code>
       */
      f_getBalance(4),
      /**
       * <code>f_getStorageAt = 5;</code>
       */
      f_getStorageAt(5),
      /**
       * <code>f_unlockAccount = 6;</code>
       */
      f_unlockAccount(6),
      /**
       * <code>f_sendTransaction = 7;</code>
       */
      f_sendTransaction(7),
      /**
       * <code>f_getTransactionByHash = 8;</code>
       */
      f_getTransactionByHash(8),
      /**
       * <code>f_compile = 9;</code>
       */
      f_compile(9),
      /**
       * <code>f_contractDeploy = 10;</code>
       */
      f_contractDeploy(10),
      /**
       * <code>f_getTransactionCount = 11;</code>
       */
      f_getTransactionCount(11),
      /**
       * <code>f_getBlockTransactionCountByHash = 12;</code>
       */
      f_getBlockTransactionCountByHash(12),
      /**
       * <code>f_getBlockTransactionCountByNumber = 13;</code>
       */
      f_getBlockTransactionCountByNumber(13),
      /**
       * <code>f_getCode = 14;</code>
       */
      f_getCode(14),
      /**
       * <code>f_call = 15;</code>
       */
      f_call(15),
      /**
       * <code>f_getBlockByHash = 16;</code>
       */
      f_getBlockByHash(16),
      /**
       * <code>f_getBlockByNumber = 17;</code>
       */
      f_getBlockByNumber(17),
      /**
       * <code>f_getTransactionByBlockHashAndIndex = 18;</code>
       */
      f_getTransactionByBlockHashAndIndex(18),
      /**
       * <code>f_getTransactionByBlockNumberAndIndex = 19;</code>
       */
      f_getTransactionByBlockNumberAndIndex(19),
      /**
       * <code>f_getTransactionReceipt = 20;</code>
       */
      f_getTransactionReceipt(20),
      /**
       * <code>f_getCompilers = 21;</code>
       */
      f_getCompilers(21),
      /**
       * <code>f_compileSolidityZip = 22;</code>
       */
      f_compileSolidityZip(22),
      /**
       * <code>f_getWork = 23;</code>
       */
      f_getWork(23),
      /**
       * <code>f_submitWork = 24;</code>
       */
      f_submitWork(24),
      /**
       * <code>f_fetchQueuedTransactions = 25;</code>
       */
      f_fetchQueuedTransactions(25),
      /**
       * <code>f_signedTransaction = 26;</code>
       */
      f_signedTransaction(26),
      /**
       * <code>f_rawTransaction = 27;</code>
       */
      f_rawTransaction(27),
      /**
       * <code>f_estimateNrg = 28;</code>
       */
      f_estimateNrg(28),
      /**
       * <code>f_mining = 29;</code>
       */
      f_mining(29),
      /**
       * <code>f_hashrate = 30;</code>
       */
      f_hashrate(30),
      /**
       * <code>f_getActiveNodes = 31;</code>
       */
      f_getActiveNodes(31),
      /**
       * <code>f_getSolcVersion = 32;</code>
       */
      f_getSolcVersion(32),
      /**
       * <code>f_isSyncing = 33;</code>
       */
      f_isSyncing(33),
      /**
       * <code>f_syncInfo = 34;</code>
       */
      f_syncInfo(34),
      /**
       * <code>f_getSystemInfo = 35;</code>
       */
      f_getSystemInfo(35),
      /**
       * <code>f_eventRegister = 36;</code>
       */
      f_eventRegister(36),
      /**
       * <code>f_eventDeregister = 37;</code>
       */
      f_eventDeregister(37),
      /**
       * <code>f_accountCreate = 38;</code>
       */
      f_accountCreate(38),
      /**
       * <code>f_accountLock = 39;</code>
       */
      f_accountLock(39),
      /**
       * <code>f_userPrivilege = 40;</code>
       */
      f_userPrivilege(40),
      /**
       * <code>f_eventQuery = 41;</code>
       */
      f_eventQuery(41),
      /**
       * <code>f_importAccounts = 42;</code>
       */
      f_importAccounts(42),
      /**
       * <code>f_exportAccounts = 43;</code>
       */
      f_exportAccounts(43),
      /**
       * <code>f_getBlockHeaderByNumber = 44;</code>
       */
      f_getBlockHeaderByNumber(44),
      /**
       * <code>f_getBlockHeaderByHash = 45;</code>
       */
      f_getBlockHeaderByHash(45),
      /**
       * <code>f_getCurrentTotalDifficulty = 46;</code>
       */
      f_getCurrentTotalDifficulty(46),
      /**
       * <code>f_getStaticNodes = 47;</code>
       */
      f_getStaticNodes(47),
      /**
       * <code>f_getBlockDetailsByNumber = 48;</code>
       */
      f_getBlockDetailsByNumber(48),
      /**
       * <code>f_getBlockDetailsByLatest = 49;</code>
       */
      f_getBlockDetailsByLatest(49),
      /**
       * <code>f_getBlocksByLatest = 50;</code>
       */
      f_getBlocksByLatest(50),
      /**
       * <code>f_getAccountDetailsByAddressList = 51;</code>
       */
      f_getAccountDetailsByAddressList(51),
      /**
       * <code>f_backupAccounts = 52;</code>
       */
      f_backupAccounts(52),
      /**
       * <code>f_NA = 53;</code>
       */
      f_NA(53),
      /**
       * <code>f_getBlockSqlByRange = 54;</code>
       */
      f_getBlockSqlByRange(54),
      /**
       * <code>f_getBlockDetailsByRange = 55;</code>
       */
      f_getBlockDetailsByRange(55),
      /**
       * <code>f_getNonce = 56;</code>
       */
      f_getNonce(56),
      /**
       * <code>f_getNrgPrice = 57;</code>
       */
      f_getNrgPrice(57),
      /**
       * <code>f_getBlockDetailsByHash = 58;</code>
       */
      f_getBlockDetailsByHash(58),
      /**
       * <code>f_listening = 59;</code>
       */
      f_listening(59),
      /**
       * <code>f_peerCount = 60;</code>
       */
      f_peerCount(60),
      /**
       * <code>f_getBlockReward = 61;</code>
       */
      f_getBlockReward(61),
      UNRECOGNIZED(-1),
      ;
  
      /**
       * <code>f_protocolVersion = 0;</code>
       */
      public static final int f_protocolVersion_VALUE = 0;
      /**
       * <code>f_minerAddress = 1;</code>
       */
      public static final int f_minerAddress_VALUE = 1;
      /**
       * <code>f_accounts = 2;</code>
       */
      public static final int f_accounts_VALUE = 2;
      /**
       * <code>f_blockNumber = 3;</code>
       */
      public static final int f_blockNumber_VALUE = 3;
      /**
       * <code>f_getBalance = 4;</code>
       */
      public static final int f_getBalance_VALUE = 4;
      /**
       * <code>f_getStorageAt = 5;</code>
       */
      public static final int f_getStorageAt_VALUE = 5;
      /**
       * <code>f_unlockAccount = 6;</code>
       */
      public static final int f_unlockAccount_VALUE = 6;
      /**
       * <code>f_sendTransaction = 7;</code>
       */
      public static final int f_sendTransaction_VALUE = 7;
      /**
       * <code>f_getTransactionByHash = 8;</code>
       */
      public static final int f_getTransactionByHash_VALUE = 8;
      /**
       * <code>f_compile = 9;</code>
       */
      public static final int f_compile_VALUE = 9;
      /**
       * <code>f_contractDeploy = 10;</code>
       */
      public static final int f_contractDeploy_VALUE = 10;
      /**
       * <code>f_getTransactionCount = 11;</code>
       */
      public static final int f_getTransactionCount_VALUE = 11;
      /**
       * <code>f_getBlockTransactionCountByHash = 12;</code>
       */
      public static final int f_getBlockTransactionCountByHash_VALUE = 12;
      /**
       * <code>f_getBlockTransactionCountByNumber = 13;</code>
       */
      public static final int f_getBlockTransactionCountByNumber_VALUE = 13;
      /**
       * <code>f_getCode = 14;</code>
       */
      public static final int f_getCode_VALUE = 14;
      /**
       * <code>f_call = 15;</code>
       */
      public static final int f_call_VALUE = 15;
      /**
       * <code>f_getBlockByHash = 16;</code>
       */
      public static final int f_getBlockByHash_VALUE = 16;
      /**
       * <code>f_getBlockByNumber = 17;</code>
       */
      public static final int f_getBlockByNumber_VALUE = 17;
      /**
       * <code>f_getTransactionByBlockHashAndIndex = 18;</code>
       */
      public static final int f_getTransactionByBlockHashAndIndex_VALUE = 18;
      /**
       * <code>f_getTransactionByBlockNumberAndIndex = 19;</code>
       */
      public static final int f_getTransactionByBlockNumberAndIndex_VALUE = 19;
      /**
       * <code>f_getTransactionReceipt = 20;</code>
       */
      public static final int f_getTransactionReceipt_VALUE = 20;
      /**
       * <code>f_getCompilers = 21;</code>
       */
      public static final int f_getCompilers_VALUE = 21;
      /**
       * <code>f_compileSolidityZip = 22;</code>
       */
      public static final int f_compileSolidityZip_VALUE = 22;
      /**
       * <code>f_getWork = 23;</code>
       */
      public static final int f_getWork_VALUE = 23;
      /**
       * <code>f_submitWork = 24;</code>
       */
      public static final int f_submitWork_VALUE = 24;
      /**
       * <code>f_fetchQueuedTransactions = 25;</code>
       */
      public static final int f_fetchQueuedTransactions_VALUE = 25;
      /**
       * <code>f_signedTransaction = 26;</code>
       */
      public static final int f_signedTransaction_VALUE = 26;
      /**
       * <code>f_rawTransaction = 27;</code>
       */
      public static final int f_rawTransaction_VALUE = 27;
      /**
       * <code>f_estimateNrg = 28;</code>
       */
      public static final int f_estimateNrg_VALUE = 28;
      /**
       * <code>f_mining = 29;</code>
       */
      public static final int f_mining_VALUE = 29;
      /**
       * <code>f_hashrate = 30;</code>
       */
      public static final int f_hashrate_VALUE = 30;
      /**
       * <code>f_getActiveNodes = 31;</code>
       */
      public static final int f_getActiveNodes_VALUE = 31;
      /**
       * <code>f_getSolcVersion = 32;</code>
       */
      public static final int f_getSolcVersion_VALUE = 32;
      /**
       * <code>f_isSyncing = 33;</code>
       */
      public static final int f_isSyncing_VALUE = 33;
      /**
       * <code>f_syncInfo = 34;</code>
       */
      public static final int f_syncInfo_VALUE = 34;
      /**
       * <code>f_getSystemInfo = 35;</code>
       */
      public static final int f_getSystemInfo_VALUE = 35;
      /**
       * <code>f_eventRegister = 36;</code>
       */
      public static final int f_eventRegister_VALUE = 36;
      /**
       * <code>f_eventDeregister = 37;</code>
       */
      public static final int f_eventDeregister_VALUE = 37;
      /**
       * <code>f_accountCreate = 38;</code>
       */
      public static final int f_accountCreate_VALUE = 38;
      /**
       * <code>f_accountLock = 39;</code>
       */
      public static final int f_accountLock_VALUE = 39;
      /**
       * <code>f_userPrivilege = 40;</code>
       */
      public static final int f_userPrivilege_VALUE = 40;
      /**
       * <code>f_eventQuery = 41;</code>
       */
      public static final int f_eventQuery_VALUE = 41;
      /**
       * <code>f_importAccounts = 42;</code>
       */
      public static final int f_importAccounts_VALUE = 42;
      /**
       * <code>f_exportAccounts = 43;</code>
       */
      public static final int f_exportAccounts_VALUE = 43;
      /**
       * <code>f_getBlockHeaderByNumber = 44;</code>
       */
      public static final int f_getBlockHeaderByNumber_VALUE = 44;
      /**
       * <code>f_getBlockHeaderByHash = 45;</code>
       */
      public static final int f_getBlockHeaderByHash_VALUE = 45;
      /**
       * <code>f_getCurrentTotalDifficulty = 46;</code>
       */
      public static final int f_getCurrentTotalDifficulty_VALUE = 46;
      /**
       * <code>f_getStaticNodes = 47;</code>
       */
      public static final int f_getStaticNodes_VALUE = 47;
      /**
       * <code>f_getBlockDetailsByNumber = 48;</code>
       */
      public static final int f_getBlockDetailsByNumber_VALUE = 48;
      /**
       * <code>f_getBlockDetailsByLatest = 49;</code>
       */
      public static final int f_getBlockDetailsByLatest_VALUE = 49;
      /**
       * <code>f_getBlocksByLatest = 50;</code>
       */
      public static final int f_getBlocksByLatest_VALUE = 50;
      /**
       * <code>f_getAccountDetailsByAddressList = 51;</code>
       */
      public static final int f_getAccountDetailsByAddressList_VALUE = 51;
      /**
       * <code>f_backupAccounts = 52;</code>
       */
      public static final int f_backupAccounts_VALUE = 52;
      /**
       * <code>f_NA = 53;</code>
       */
      public static final int f_NA_VALUE = 53;
      /**
       * <code>f_getBlockSqlByRange = 54;</code>
       */
      public static final int f_getBlockSqlByRange_VALUE = 54;
      /**
       * <code>f_getBlockDetailsByRange = 55;</code>
       */
      public static final int f_getBlockDetailsByRange_VALUE = 55;
      /**
       * <code>f_getNonce = 56;</code>
       */
      public static final int f_getNonce_VALUE = 56;
      /**
       * <code>f_getNrgPrice = 57;</code>
       */
      public static final int f_getNrgPrice_VALUE = 57;
      /**
       * <code>f_getBlockDetailsByHash = 58;</code>
       */
      public static final int f_getBlockDetailsByHash_VALUE = 58;
      /**
       * <code>f_listening = 59;</code>
       */
      public static final int f_listening_VALUE = 59;
      /**
       * <code>f_peerCount = 60;</code>
       */
      public static final int f_peerCount_VALUE = 60;
      /**
       * <code>f_getBlockReward = 61;</code>
       */
      public static final int f_getBlockReward_VALUE = 61;
  
  
      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }
  
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Funcs valueOf(int value) {
        return forNumber(value);
      }
  
      public static Funcs forNumber(int value) {
        switch (value) {
          case 0: return f_protocolVersion;
          case 1: return f_minerAddress;
          case 2: return f_accounts;
          case 3: return f_blockNumber;
          case 4: return f_getBalance;
          case 5: return f_getStorageAt;
          case 6: return f_unlockAccount;
          case 7: return f_sendTransaction;
          case 8: return f_getTransactionByHash;
          case 9: return f_compile;
          case 10: return f_contractDeploy;
          case 11: return f_getTransactionCount;
          case 12: return f_getBlockTransactionCountByHash;
          case 13: return f_getBlockTransactionCountByNumber;
          case 14: return f_getCode;
          case 15: return f_call;
          case 16: return f_getBlockByHash;
          case 17: return f_getBlockByNumber;
          case 18: return f_getTransactionByBlockHashAndIndex;
          case 19: return f_getTransactionByBlockNumberAndIndex;
          case 20: return f_getTransactionReceipt;
          case 21: return f_getCompilers;
          case 22: return f_compileSolidityZip;
          case 23: return f_getWork;
          case 24: return f_submitWork;
          case 25: return f_fetchQueuedTransactions;
          case 26: return f_signedTransaction;
          case 27: return f_rawTransaction;
          case 28: return f_estimateNrg;
          case 29: return f_mining;
          case 30: return f_hashrate;
          case 31: return f_getActiveNodes;
          case 32: return f_getSolcVersion;
          case 33: return f_isSyncing;
          case 34: return f_syncInfo;
          case 35: return f_getSystemInfo;
          case 36: return f_eventRegister;
          case 37: return f_eventDeregister;
          case 38: return f_accountCreate;
          case 39: return f_accountLock;
          case 40: return f_userPrivilege;
          case 41: return f_eventQuery;
          case 42: return f_importAccounts;
          case 43: return f_exportAccounts;
          case 44: return f_getBlockHeaderByNumber;
          case 45: return f_getBlockHeaderByHash;
          case 46: return f_getCurrentTotalDifficulty;
          case 47: return f_getStaticNodes;
          case 48: return f_getBlockDetailsByNumber;
          case 49: return f_getBlockDetailsByLatest;
          case 50: return f_getBlocksByLatest;
          case 51: return f_getAccountDetailsByAddressList;
          case 52: return f_backupAccounts;
          case 53: return f_NA;
          case 54: return f_getBlockSqlByRange;
          case 55: return f_getBlockDetailsByRange;
          case 56: return f_getNonce;
          case 57: return f_getNrgPrice;
          case 58: return f_getBlockDetailsByHash;
          case 59: return f_listening;
          case 60: return f_peerCount;
          case 61: return f_getBlockReward;
          default: return null;
        }
      }
  
      public static com.google.protobuf.Internal.EnumLiteMap<Funcs>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Funcs> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Funcs>() {
              public Funcs findValueByNumber(int number) {
                return Funcs.forNumber(number);
              }
            };
  
      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.getDescriptor().getEnumTypes().get(1);
      }
  
      private static final Funcs[] VALUES = values();
  
      public static Funcs valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private Funcs(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:org.aion.api.server.pb.Funcs)
    }
  
    /**
     * Protobuf enum {@code org.aion.api.server.pb.Retcode}
     */
    public enum Retcode
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>r_fail = 0;</code>
       */
      r_fail(0),
      /**
       * <code>r_success = 1;</code>
       */
      r_success(1),
      /**
       * <code>r_wallet_nullcb = 2;</code>
       */
      r_wallet_nullcb(2),
      /**
       * <code>r_heartbeatReturn = 3;</code>
       */
      r_heartbeatReturn(3),
      /**
       * <code>r_privilegeReturn = 4;</code>
       */
      r_privilegeReturn(4),
      /**
       * <code>r_tx_Init = 100;</code>
       */
      r_tx_Init(100),
      /**
       * <code>r_tx_Recved = 101;</code>
       */
      r_tx_Recved(101),
      /**
       * <code>r_tx_Dropped = 102;</code>
       */
      r_tx_Dropped(102),
      /**
       * <code>r_tx_NewPending = 103;</code>
       */
      r_tx_NewPending(103),
      /**
       * <code>r_tx_Pending = 104;</code>
       */
      r_tx_Pending(104),
      /**
       * <code>r_tx_Included = 105;</code>
       */
      r_tx_Included(105),
      /**
       * <code>r_tx_eventCb = 106;</code>
       */
      r_tx_eventCb(106),
      /**
       * <code>r_NA = 107;</code>
       */
      r_NA(107),
      /**
       * <code>r_fail_header_len = -1;</code>
       */
      r_fail_header_len(-1),
      /**
       * <code>r_fail_service_call = -2;</code>
       */
      r_fail_service_call(-2),
      /**
       * <code>r_fail_function_call = -3;</code>
       */
      r_fail_function_call(-3),
      /**
       * <code>r_fail_function_exception = -4;</code>
       */
      r_fail_function_exception(-4),
      /**
       * <code>r_fail_api_version = -5;</code>
       */
      r_fail_api_version(-5),
      /**
       * <code>r_fail_ct_bytecode = -6;</code>
       */
      r_fail_ct_bytecode(-6),
      /**
       * <code>r_fail_null_rsp = -7;</code>
       */
      r_fail_null_rsp(-7),
      /**
       * <code>r_fail_invalid_addr = -8;</code>
       */
      r_fail_invalid_addr(-8),
      /**
       * <code>r_fail_null_compile_source = -9;</code>
       */
      r_fail_null_compile_source(-9),
      /**
       * <code>r_fail_compile_contract = -10;</code>
       */
      r_fail_compile_contract(-10),
      /**
       * <code>r_fail_sendTx_null_rep = -11;</code>
       */
      r_fail_sendTx_null_rep(-11),
      /**
       * <code>r_fail_getcode_to = -12;</code>
       */
      r_fail_getcode_to(-12),
      /**
       * <code>r_fail_getTxReceipt_null_recp = -13;</code>
       */
      r_fail_getTxReceipt_null_recp(-13),
      /**
       * <code>r_fail_zmqHandler_exception = -14;</code>
       */
      r_fail_zmqHandler_exception(-14),
      /**
       * <code>r_fail_hit_pending_tx_limit = -15;</code>
       */
      r_fail_hit_pending_tx_limit(-15),
      /**
       * <code>r_fail_txqueue_exception = -16;</code>
       */
      r_fail_txqueue_exception(-16),
      /**
       * <code>r_fail_function_arguments = -17;</code>
       */
      r_fail_function_arguments(-17),
      /**
       * <code>r_fail_unsupport_api = -18;</code>
       */
      r_fail_unsupport_api(-18),
      /**
       * <code>r_fail_unknown = -19;</code>
       */
      r_fail_unknown(-19),
      UNRECOGNIZED(-1),
      ;
  
      /**
       * <code>r_fail = 0;</code>
       */
      public static final int r_fail_VALUE = 0;
      /**
       * <code>r_success = 1;</code>
       */
      public static final int r_success_VALUE = 1;
      /**
       * <code>r_wallet_nullcb = 2;</code>
       */
      public static final int r_wallet_nullcb_VALUE = 2;
      /**
       * <code>r_heartbeatReturn = 3;</code>
       */
      public static final int r_heartbeatReturn_VALUE = 3;
      /**
       * <code>r_privilegeReturn = 4;</code>
       */
      public static final int r_privilegeReturn_VALUE = 4;
      /**
       * <code>r_tx_Init = 100;</code>
       */
      public static final int r_tx_Init_VALUE = 100;
      /**
       * <code>r_tx_Recved = 101;</code>
       */
      public static final int r_tx_Recved_VALUE = 101;
      /**
       * <code>r_tx_Dropped = 102;</code>
       */
      public static final int r_tx_Dropped_VALUE = 102;
      /**
       * <code>r_tx_NewPending = 103;</code>
       */
      public static final int r_tx_NewPending_VALUE = 103;
      /**
       * <code>r_tx_Pending = 104;</code>
       */
      public static final int r_tx_Pending_VALUE = 104;
      /**
       * <code>r_tx_Included = 105;</code>
       */
      public static final int r_tx_Included_VALUE = 105;
      /**
       * <code>r_tx_eventCb = 106;</code>
       */
      public static final int r_tx_eventCb_VALUE = 106;
      /**
       * <code>r_NA = 107;</code>
       */
      public static final int r_NA_VALUE = 107;
      /**
       * <code>r_fail_header_len = -1;</code>
       */
      public static final int r_fail_header_len_VALUE = -1;
      /**
       * <code>r_fail_service_call = -2;</code>
       */
      public static final int r_fail_service_call_VALUE = -2;
      /**
       * <code>r_fail_function_call = -3;</code>
       */
      public static final int r_fail_function_call_VALUE = -3;
      /**
       * <code>r_fail_function_exception = -4;</code>
       */
      public static final int r_fail_function_exception_VALUE = -4;
      /**
       * <code>r_fail_api_version = -5;</code>
       */
      public static final int r_fail_api_version_VALUE = -5;
      /**
       * <code>r_fail_ct_bytecode = -6;</code>
       */
      public static final int r_fail_ct_bytecode_VALUE = -6;
      /**
       * <code>r_fail_null_rsp = -7;</code>
       */
      public static final int r_fail_null_rsp_VALUE = -7;
      /**
       * <code>r_fail_invalid_addr = -8;</code>
       */
      public static final int r_fail_invalid_addr_VALUE = -8;
      /**
       * <code>r_fail_null_compile_source = -9;</code>
       */
      public static final int r_fail_null_compile_source_VALUE = -9;
      /**
       * <code>r_fail_compile_contract = -10;</code>
       */
      public static final int r_fail_compile_contract_VALUE = -10;
      /**
       * <code>r_fail_sendTx_null_rep = -11;</code>
       */
      public static final int r_fail_sendTx_null_rep_VALUE = -11;
      /**
       * <code>r_fail_getcode_to = -12;</code>
       */
      public static final int r_fail_getcode_to_VALUE = -12;
      /**
       * <code>r_fail_getTxReceipt_null_recp = -13;</code>
       */
      public static final int r_fail_getTxReceipt_null_recp_VALUE = -13;
      /**
       * <code>r_fail_zmqHandler_exception = -14;</code>
       */
      public static final int r_fail_zmqHandler_exception_VALUE = -14;
      /**
       * <code>r_fail_hit_pending_tx_limit = -15;</code>
       */
      public static final int r_fail_hit_pending_tx_limit_VALUE = -15;
      /**
       * <code>r_fail_txqueue_exception = -16;</code>
       */
      public static final int r_fail_txqueue_exception_VALUE = -16;
      /**
       * <code>r_fail_function_arguments = -17;</code>
       */
      public static final int r_fail_function_arguments_VALUE = -17;
      /**
       * <code>r_fail_unsupport_api = -18;</code>
       */
      public static final int r_fail_unsupport_api_VALUE = -18;
      /**
       * <code>r_fail_unknown = -19;</code>
       */
      public static final int r_fail_unknown_VALUE = -19;
  
  
      public final int getNumber() {
        if (this == UNRECOGNIZED) {
          throw new java.lang.IllegalArgumentException(
              "Can't get the number of an unknown enum value.");
        }
        return value;
      }
  
      /**
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static Retcode valueOf(int value) {
        return forNumber(value);
      }
  
      public static Retcode forNumber(int value) {
        switch (value) {
          case 0: return r_fail;
          case 1: return r_success;
          case 2: return r_wallet_nullcb;
          case 3: return r_heartbeatReturn;
          case 4: return r_privilegeReturn;
          case 100: return r_tx_Init;
          case 101: return r_tx_Recved;
          case 102: return r_tx_Dropped;
          case 103: return r_tx_NewPending;
          case 104: return r_tx_Pending;
          case 105: return r_tx_Included;
          case 106: return r_tx_eventCb;
          case 107: return r_NA;
          case -1: return r_fail_header_len;
          case -2: return r_fail_service_call;
          case -3: return r_fail_function_call;
          case -4: return r_fail_function_exception;
          case -5: return r_fail_api_version;
          case -6: return r_fail_ct_bytecode;
          case -7: return r_fail_null_rsp;
          case -8: return r_fail_invalid_addr;
          case -9: return r_fail_null_compile_source;
          case -10: return r_fail_compile_contract;
          case -11: return r_fail_sendTx_null_rep;
          case -12: return r_fail_getcode_to;
          case -13: return r_fail_getTxReceipt_null_recp;
          case -14: return r_fail_zmqHandler_exception;
          case -15: return r_fail_hit_pending_tx_limit;
          case -16: return r_fail_txqueue_exception;
          case -17: return r_fail_function_arguments;
          case -18: return r_fail_unsupport_api;
          case -19: return r_fail_unknown;
          default: return null;
        }
      }
  
      public static com.google.protobuf.Internal.EnumLiteMap<Retcode>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          Retcode> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<Retcode>() {
              public Retcode findValueByNumber(int number) {
                return Retcode.forNumber(number);
              }
            };
  
      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.getDescriptor().getEnumTypes().get(2);
      }
  
      private static final Retcode[] VALUES = values();
  
      public static Retcode valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        if (desc.getIndex() == -1) {
          return UNRECOGNIZED;
        }
        return VALUES[desc.getIndex()];
      }
  
      private final int value;
  
      private Retcode(int value) {
        this.value = value;
      }
  
      // @@protoc_insertion_point(enum_scope:org.aion.api.server.pb.Retcode)
    }
  
    public interface t_ContractOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_Contract)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string code = 1;</code>
       */
      java.lang.String getCode();
      /**
       * <code>string code = 1;</code>
       */
      com.google.protobuf.ByteString
          getCodeBytes();
  
      /**
       * <code>string error = 2;</code>
       */
      java.lang.String getError();
      /**
       * <code>string error = 2;</code>
       */
      com.google.protobuf.ByteString
          getErrorBytes();
  
      /**
       * <code>string source = 3;</code>
       */
      java.lang.String getSource();
      /**
       * <code>string source = 3;</code>
       */
      com.google.protobuf.ByteString
          getSourceBytes();
  
      /**
       * <code>string compilerVersion = 4;</code>
       */
      java.lang.String getCompilerVersion();
      /**
       * <code>string compilerVersion = 4;</code>
       */
      com.google.protobuf.ByteString
          getCompilerVersionBytes();
  
      /**
       * <code>string compilerOptions = 5;</code>
       */
      java.lang.String getCompilerOptions();
      /**
       * <code>string compilerOptions = 5;</code>
       */
      com.google.protobuf.ByteString
          getCompilerOptionsBytes();
  
      /**
       * <code>bytes abiDef = 6;</code>
       */
      com.google.protobuf.ByteString getAbiDef();
  
      /**
       * <code>bytes userDoc = 7;</code>
       */
      com.google.protobuf.ByteString getUserDoc();
  
      /**
       * <code>bytes devDoc = 8;</code>
       */
      com.google.protobuf.ByteString getDevDoc();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_Contract}
     */
    public  static final class t_Contract extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_Contract)
        t_ContractOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_Contract.newBuilder() to construct.
      private t_Contract(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_Contract() {
        code_ = "";
        error_ = "";
        source_ = "";
        compilerVersion_ = "";
        compilerOptions_ = "";
        abiDef_ = com.google.protobuf.ByteString.EMPTY;
        userDoc_ = com.google.protobuf.ByteString.EMPTY;
        devDoc_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_Contract(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                code_ = s;
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                error_ = s;
                break;
              }
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
  
                source_ = s;
                break;
              }
              case 34: {
                java.lang.String s = input.readStringRequireUtf8();
  
                compilerVersion_ = s;
                break;
              }
              case 42: {
                java.lang.String s = input.readStringRequireUtf8();
  
                compilerOptions_ = s;
                break;
              }
              case 50: {
  
                abiDef_ = input.readBytes();
                break;
              }
              case 58: {
  
                userDoc_ = input.readBytes();
                break;
              }
              case 66: {
  
                devDoc_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Contract_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Contract_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_Contract.class, org.aion.api.server.pb.Message.t_Contract.Builder.class);
      }
  
      public static final int CODE_FIELD_NUMBER = 1;
      private volatile java.lang.Object code_;
      /**
       * <code>string code = 1;</code>
       */
      public java.lang.String getCode() {
        java.lang.Object ref = code_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          code_ = s;
          return s;
        }
      }
      /**
       * <code>string code = 1;</code>
       */
      public com.google.protobuf.ByteString
          getCodeBytes() {
        java.lang.Object ref = code_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          code_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ERROR_FIELD_NUMBER = 2;
      private volatile java.lang.Object error_;
      /**
       * <code>string error = 2;</code>
       */
      public java.lang.String getError() {
        java.lang.Object ref = error_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          error_ = s;
          return s;
        }
      }
      /**
       * <code>string error = 2;</code>
       */
      public com.google.protobuf.ByteString
          getErrorBytes() {
        java.lang.Object ref = error_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          error_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int SOURCE_FIELD_NUMBER = 3;
      private volatile java.lang.Object source_;
      /**
       * <code>string source = 3;</code>
       */
      public java.lang.String getSource() {
        java.lang.Object ref = source_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          source_ = s;
          return s;
        }
      }
      /**
       * <code>string source = 3;</code>
       */
      public com.google.protobuf.ByteString
          getSourceBytes() {
        java.lang.Object ref = source_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          source_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int COMPILERVERSION_FIELD_NUMBER = 4;
      private volatile java.lang.Object compilerVersion_;
      /**
       * <code>string compilerVersion = 4;</code>
       */
      public java.lang.String getCompilerVersion() {
        java.lang.Object ref = compilerVersion_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          compilerVersion_ = s;
          return s;
        }
      }
      /**
       * <code>string compilerVersion = 4;</code>
       */
      public com.google.protobuf.ByteString
          getCompilerVersionBytes() {
        java.lang.Object ref = compilerVersion_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          compilerVersion_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int COMPILEROPTIONS_FIELD_NUMBER = 5;
      private volatile java.lang.Object compilerOptions_;
      /**
       * <code>string compilerOptions = 5;</code>
       */
      public java.lang.String getCompilerOptions() {
        java.lang.Object ref = compilerOptions_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          compilerOptions_ = s;
          return s;
        }
      }
      /**
       * <code>string compilerOptions = 5;</code>
       */
      public com.google.protobuf.ByteString
          getCompilerOptionsBytes() {
        java.lang.Object ref = compilerOptions_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          compilerOptions_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int ABIDEF_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString abiDef_;
      /**
       * <code>bytes abiDef = 6;</code>
       */
      public com.google.protobuf.ByteString getAbiDef() {
        return abiDef_;
      }
  
      public static final int USERDOC_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString userDoc_;
      /**
       * <code>bytes userDoc = 7;</code>
       */
      public com.google.protobuf.ByteString getUserDoc() {
        return userDoc_;
      }
  
      public static final int DEVDOC_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString devDoc_;
      /**
       * <code>bytes devDoc = 8;</code>
       */
      public com.google.protobuf.ByteString getDevDoc() {
        return devDoc_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getCodeBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, code_);
        }
        if (!getErrorBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, error_);
        }
        if (!getSourceBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 3, source_);
        }
        if (!getCompilerVersionBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 4, compilerVersion_);
        }
        if (!getCompilerOptionsBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 5, compilerOptions_);
        }
        if (!abiDef_.isEmpty()) {
          output.writeBytes(6, abiDef_);
        }
        if (!userDoc_.isEmpty()) {
          output.writeBytes(7, userDoc_);
        }
        if (!devDoc_.isEmpty()) {
          output.writeBytes(8, devDoc_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getCodeBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, code_);
        }
        if (!getErrorBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, error_);
        }
        if (!getSourceBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, source_);
        }
        if (!getCompilerVersionBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, compilerVersion_);
        }
        if (!getCompilerOptionsBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, compilerOptions_);
        }
        if (!abiDef_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, abiDef_);
        }
        if (!userDoc_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, userDoc_);
        }
        if (!devDoc_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, devDoc_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_Contract)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_Contract other = (org.aion.api.server.pb.Message.t_Contract) obj;
  
        boolean result = true;
        result = result && getCode()
            .equals(other.getCode());
        result = result && getError()
            .equals(other.getError());
        result = result && getSource()
            .equals(other.getSource());
        result = result && getCompilerVersion()
            .equals(other.getCompilerVersion());
        result = result && getCompilerOptions()
            .equals(other.getCompilerOptions());
        result = result && getAbiDef()
            .equals(other.getAbiDef());
        result = result && getUserDoc()
            .equals(other.getUserDoc());
        result = result && getDevDoc()
            .equals(other.getDevDoc());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + CODE_FIELD_NUMBER;
        hash = (53 * hash) + getCode().hashCode();
        hash = (37 * hash) + ERROR_FIELD_NUMBER;
        hash = (53 * hash) + getError().hashCode();
        hash = (37 * hash) + SOURCE_FIELD_NUMBER;
        hash = (53 * hash) + getSource().hashCode();
        hash = (37 * hash) + COMPILERVERSION_FIELD_NUMBER;
        hash = (53 * hash) + getCompilerVersion().hashCode();
        hash = (37 * hash) + COMPILEROPTIONS_FIELD_NUMBER;
        hash = (53 * hash) + getCompilerOptions().hashCode();
        hash = (37 * hash) + ABIDEF_FIELD_NUMBER;
        hash = (53 * hash) + getAbiDef().hashCode();
        hash = (37 * hash) + USERDOC_FIELD_NUMBER;
        hash = (53 * hash) + getUserDoc().hashCode();
        hash = (37 * hash) + DEVDOC_FIELD_NUMBER;
        hash = (53 * hash) + getDevDoc().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Contract parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_Contract prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_Contract}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_Contract)
          org.aion.api.server.pb.Message.t_ContractOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Contract_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Contract_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_Contract.class, org.aion.api.server.pb.Message.t_Contract.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_Contract.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          code_ = "";
  
          error_ = "";
  
          source_ = "";
  
          compilerVersion_ = "";
  
          compilerOptions_ = "";
  
          abiDef_ = com.google.protobuf.ByteString.EMPTY;
  
          userDoc_ = com.google.protobuf.ByteString.EMPTY;
  
          devDoc_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Contract_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_Contract getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_Contract.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_Contract build() {
          org.aion.api.server.pb.Message.t_Contract result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_Contract buildPartial() {
          org.aion.api.server.pb.Message.t_Contract result = new org.aion.api.server.pb.Message.t_Contract(this);
          result.code_ = code_;
          result.error_ = error_;
          result.source_ = source_;
          result.compilerVersion_ = compilerVersion_;
          result.compilerOptions_ = compilerOptions_;
          result.abiDef_ = abiDef_;
          result.userDoc_ = userDoc_;
          result.devDoc_ = devDoc_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_Contract) {
            return mergeFrom((org.aion.api.server.pb.Message.t_Contract)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_Contract other) {
          if (other == org.aion.api.server.pb.Message.t_Contract.getDefaultInstance()) return this;
          if (!other.getCode().isEmpty()) {
            code_ = other.code_;
            onChanged();
          }
          if (!other.getError().isEmpty()) {
            error_ = other.error_;
            onChanged();
          }
          if (!other.getSource().isEmpty()) {
            source_ = other.source_;
            onChanged();
          }
          if (!other.getCompilerVersion().isEmpty()) {
            compilerVersion_ = other.compilerVersion_;
            onChanged();
          }
          if (!other.getCompilerOptions().isEmpty()) {
            compilerOptions_ = other.compilerOptions_;
            onChanged();
          }
          if (other.getAbiDef() != com.google.protobuf.ByteString.EMPTY) {
            setAbiDef(other.getAbiDef());
          }
          if (other.getUserDoc() != com.google.protobuf.ByteString.EMPTY) {
            setUserDoc(other.getUserDoc());
          }
          if (other.getDevDoc() != com.google.protobuf.ByteString.EMPTY) {
            setDevDoc(other.getDevDoc());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_Contract parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_Contract) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object code_ = "";
        /**
         * <code>string code = 1;</code>
         */
        public java.lang.String getCode() {
          java.lang.Object ref = code_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            code_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string code = 1;</code>
         */
        public com.google.protobuf.ByteString
            getCodeBytes() {
          java.lang.Object ref = code_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            code_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string code = 1;</code>
         */
        public Builder setCode(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          code_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string code = 1;</code>
         */
        public Builder clearCode() {
          
          code_ = getDefaultInstance().getCode();
          onChanged();
          return this;
        }
        /**
         * <code>string code = 1;</code>
         */
        public Builder setCodeBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          code_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object error_ = "";
        /**
         * <code>string error = 2;</code>
         */
        public java.lang.String getError() {
          java.lang.Object ref = error_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            error_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string error = 2;</code>
         */
        public com.google.protobuf.ByteString
            getErrorBytes() {
          java.lang.Object ref = error_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            error_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string error = 2;</code>
         */
        public Builder setError(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          error_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string error = 2;</code>
         */
        public Builder clearError() {
          
          error_ = getDefaultInstance().getError();
          onChanged();
          return this;
        }
        /**
         * <code>string error = 2;</code>
         */
        public Builder setErrorBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          error_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object source_ = "";
        /**
         * <code>string source = 3;</code>
         */
        public java.lang.String getSource() {
          java.lang.Object ref = source_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            source_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string source = 3;</code>
         */
        public com.google.protobuf.ByteString
            getSourceBytes() {
          java.lang.Object ref = source_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            source_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string source = 3;</code>
         */
        public Builder setSource(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          source_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string source = 3;</code>
         */
        public Builder clearSource() {
          
          source_ = getDefaultInstance().getSource();
          onChanged();
          return this;
        }
        /**
         * <code>string source = 3;</code>
         */
        public Builder setSourceBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          source_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object compilerVersion_ = "";
        /**
         * <code>string compilerVersion = 4;</code>
         */
        public java.lang.String getCompilerVersion() {
          java.lang.Object ref = compilerVersion_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            compilerVersion_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string compilerVersion = 4;</code>
         */
        public com.google.protobuf.ByteString
            getCompilerVersionBytes() {
          java.lang.Object ref = compilerVersion_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            compilerVersion_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string compilerVersion = 4;</code>
         */
        public Builder setCompilerVersion(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          compilerVersion_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string compilerVersion = 4;</code>
         */
        public Builder clearCompilerVersion() {
          
          compilerVersion_ = getDefaultInstance().getCompilerVersion();
          onChanged();
          return this;
        }
        /**
         * <code>string compilerVersion = 4;</code>
         */
        public Builder setCompilerVersionBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          compilerVersion_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object compilerOptions_ = "";
        /**
         * <code>string compilerOptions = 5;</code>
         */
        public java.lang.String getCompilerOptions() {
          java.lang.Object ref = compilerOptions_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            compilerOptions_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string compilerOptions = 5;</code>
         */
        public com.google.protobuf.ByteString
            getCompilerOptionsBytes() {
          java.lang.Object ref = compilerOptions_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            compilerOptions_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string compilerOptions = 5;</code>
         */
        public Builder setCompilerOptions(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          compilerOptions_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string compilerOptions = 5;</code>
         */
        public Builder clearCompilerOptions() {
          
          compilerOptions_ = getDefaultInstance().getCompilerOptions();
          onChanged();
          return this;
        }
        /**
         * <code>string compilerOptions = 5;</code>
         */
        public Builder setCompilerOptionsBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          compilerOptions_ = value;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString abiDef_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes abiDef = 6;</code>
         */
        public com.google.protobuf.ByteString getAbiDef() {
          return abiDef_;
        }
        /**
         * <code>bytes abiDef = 6;</code>
         */
        public Builder setAbiDef(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          abiDef_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes abiDef = 6;</code>
         */
        public Builder clearAbiDef() {
          
          abiDef_ = getDefaultInstance().getAbiDef();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString userDoc_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes userDoc = 7;</code>
         */
        public com.google.protobuf.ByteString getUserDoc() {
          return userDoc_;
        }
        /**
         * <code>bytes userDoc = 7;</code>
         */
        public Builder setUserDoc(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          userDoc_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes userDoc = 7;</code>
         */
        public Builder clearUserDoc() {
          
          userDoc_ = getDefaultInstance().getUserDoc();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString devDoc_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes devDoc = 8;</code>
         */
        public com.google.protobuf.ByteString getDevDoc() {
          return devDoc_;
        }
        /**
         * <code>bytes devDoc = 8;</code>
         */
        public Builder setDevDoc(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          devDoc_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes devDoc = 8;</code>
         */
        public Builder clearDevDoc() {
          
          devDoc_ = getDefaultInstance().getDevDoc();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_Contract)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_Contract)
      private static final org.aion.api.server.pb.Message.t_Contract DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_Contract();
      }
  
      public static org.aion.api.server.pb.Message.t_Contract getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_Contract>
          PARSER = new com.google.protobuf.AbstractParser<t_Contract>() {
        public t_Contract parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_Contract(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_Contract> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_Contract> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_Contract getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_AionTxOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_AionTx)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
  
      /**
       * <code>bytes from = 2;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes to = 3;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes value = 4;</code>
       */
      com.google.protobuf.ByteString getValue();
  
      /**
       * <code>bytes data = 5;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes nonce = 6;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>uint64 nrgConsumed = 7;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 nrgPrice = 8;</code>
       */
      long getNrgPrice();
  
      /**
       * <code>bytes txType = 9;</code>
       */
      com.google.protobuf.ByteString getTxType();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_AionTx}
     */
    public  static final class t_AionTx extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_AionTx)
        t_AionTxOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_AionTx.newBuilder() to construct.
      private t_AionTx(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_AionTx() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
        from_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        nrgConsumed_ = 0L;
        nrgPrice_ = 0L;
        txType_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_AionTx(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
              case 18: {
  
                from_ = input.readBytes();
                break;
              }
              case 26: {
  
                to_ = input.readBytes();
                break;
              }
              case 34: {
  
                value_ = input.readBytes();
                break;
              }
              case 42: {
  
                data_ = input.readBytes();
                break;
              }
              case 50: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 56: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 64: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
              case 74: {
  
                txType_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AionTx_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AionTx_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_AionTx.class, org.aion.api.server.pb.Message.t_AionTx.Builder.class);
      }
  
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      public static final int FROM_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 2;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TO_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 3;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 4;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 4;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      public static final int DATA_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 5;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 6;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 7;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 7;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 8;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 8;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      public static final int TXTYPE_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString txType_;
      /**
       * <code>bytes txType = 9;</code>
       */
      public com.google.protobuf.ByteString getTxType() {
        return txType_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        if (!from_.isEmpty()) {
          output.writeBytes(2, from_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(3, to_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(4, value_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(5, data_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(6, nonce_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(7, nrgConsumed_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(8, nrgPrice_);
        }
        if (!txType_.isEmpty()) {
          output.writeBytes(9, txType_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, from_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, to_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, value_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, data_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, nonce_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(7, nrgConsumed_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(8, nrgPrice_);
        }
        if (!txType_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, txType_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_AionTx)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_AionTx other = (org.aion.api.server.pb.Message.t_AionTx) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getValue()
            .equals(other.getValue());
        result = result && getData()
            .equals(other.getData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && getTxType()
            .equals(other.getTxType());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (37 * hash) + TXTYPE_FIELD_NUMBER;
        hash = (53 * hash) + getTxType().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_AionTx parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_AionTx prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_AionTx}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_AionTx)
          org.aion.api.server.pb.Message.t_AionTxOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AionTx_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AionTx_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_AionTx.class, org.aion.api.server.pb.Message.t_AionTx.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_AionTx.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          nrgConsumed_ = 0L;
  
          nrgPrice_ = 0L;
  
          txType_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AionTx_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_AionTx getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_AionTx.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_AionTx build() {
          org.aion.api.server.pb.Message.t_AionTx result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_AionTx buildPartial() {
          org.aion.api.server.pb.Message.t_AionTx result = new org.aion.api.server.pb.Message.t_AionTx(this);
          result.txHash_ = txHash_;
          result.from_ = from_;
          result.to_ = to_;
          result.value_ = value_;
          result.data_ = data_;
          result.nonce_ = nonce_;
          result.nrgConsumed_ = nrgConsumed_;
          result.nrgPrice_ = nrgPrice_;
          result.txType_ = txType_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_AionTx) {
            return mergeFrom((org.aion.api.server.pb.Message.t_AionTx)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_AionTx other) {
          if (other == org.aion.api.server.pb.Message.t_AionTx.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          if (other.getTxType() != com.google.protobuf.ByteString.EMPTY) {
            setTxType(other.getTxType());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_AionTx parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_AionTx) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 2;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 2;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 2;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 3;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 3;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 3;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 4;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 4;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 4;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 5;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 5;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 5;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 6;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 6;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 6;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 7;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 7;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 7;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 8;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 8;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 8;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txType_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txType = 9;</code>
         */
        public com.google.protobuf.ByteString getTxType() {
          return txType_;
        }
        /**
         * <code>bytes txType = 9;</code>
         */
        public Builder setTxType(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txType_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txType = 9;</code>
         */
        public Builder clearTxType() {
          
          txType_ = getDefaultInstance().getTxType();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_AionTx)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_AionTx)
      private static final org.aion.api.server.pb.Message.t_AionTx DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_AionTx();
      }
  
      public static org.aion.api.server.pb.Message.t_AionTx getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_AionTx>
          PARSER = new com.google.protobuf.AbstractParser<t_AionTx>() {
        public t_AionTx parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_AionTx(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_AionTx> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_AionTx> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_AionTx getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_NodeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_Node)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>string nodeId = 2;</code>
       */
      java.lang.String getNodeId();
      /**
       * <code>string nodeId = 2;</code>
       */
      com.google.protobuf.ByteString
          getNodeIdBytes();
  
      /**
       * <code>string remote_p2p_ip = 3;</code>
       */
      java.lang.String getRemoteP2PIp();
      /**
       * <code>string remote_p2p_ip = 3;</code>
       */
      com.google.protobuf.ByteString
          getRemoteP2PIpBytes();
  
      /**
       * <code>uint32 remote_p2p_port = 4;</code>
       */
      int getRemoteP2PPort();
  
      /**
       * <code>uint32 latency = 5;</code>
       */
      int getLatency();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_Node}
     */
    public  static final class t_Node extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_Node)
        t_NodeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_Node.newBuilder() to construct.
      private t_Node(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_Node() {
        blockNumber_ = 0L;
        nodeId_ = "";
        remoteP2PIp_ = "";
        remoteP2PPort_ = 0;
        latency_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_Node(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                nodeId_ = s;
                break;
              }
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
  
                remoteP2PIp_ = s;
                break;
              }
              case 32: {
  
                remoteP2PPort_ = input.readUInt32();
                break;
              }
              case 40: {
  
                latency_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Node_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Node_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_Node.class, org.aion.api.server.pb.Message.t_Node.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int NODEID_FIELD_NUMBER = 2;
      private volatile java.lang.Object nodeId_;
      /**
       * <code>string nodeId = 2;</code>
       */
      public java.lang.String getNodeId() {
        java.lang.Object ref = nodeId_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          nodeId_ = s;
          return s;
        }
      }
      /**
       * <code>string nodeId = 2;</code>
       */
      public com.google.protobuf.ByteString
          getNodeIdBytes() {
        java.lang.Object ref = nodeId_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          nodeId_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int REMOTE_P2P_IP_FIELD_NUMBER = 3;
      private volatile java.lang.Object remoteP2PIp_;
      /**
       * <code>string remote_p2p_ip = 3;</code>
       */
      public java.lang.String getRemoteP2PIp() {
        java.lang.Object ref = remoteP2PIp_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          remoteP2PIp_ = s;
          return s;
        }
      }
      /**
       * <code>string remote_p2p_ip = 3;</code>
       */
      public com.google.protobuf.ByteString
          getRemoteP2PIpBytes() {
        java.lang.Object ref = remoteP2PIp_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          remoteP2PIp_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int REMOTE_P2P_PORT_FIELD_NUMBER = 4;
      private int remoteP2PPort_;
      /**
       * <code>uint32 remote_p2p_port = 4;</code>
       */
      public int getRemoteP2PPort() {
        return remoteP2PPort_;
      }
  
      public static final int LATENCY_FIELD_NUMBER = 5;
      private int latency_;
      /**
       * <code>uint32 latency = 5;</code>
       */
      public int getLatency() {
        return latency_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (!getNodeIdBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, nodeId_);
        }
        if (!getRemoteP2PIpBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 3, remoteP2PIp_);
        }
        if (remoteP2PPort_ != 0) {
          output.writeUInt32(4, remoteP2PPort_);
        }
        if (latency_ != 0) {
          output.writeUInt32(5, latency_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (!getNodeIdBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, nodeId_);
        }
        if (!getRemoteP2PIpBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, remoteP2PIp_);
        }
        if (remoteP2PPort_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(4, remoteP2PPort_);
        }
        if (latency_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(5, latency_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_Node)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_Node other = (org.aion.api.server.pb.Message.t_Node) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && getNodeId()
            .equals(other.getNodeId());
        result = result && getRemoteP2PIp()
            .equals(other.getRemoteP2PIp());
        result = result && (getRemoteP2PPort()
            == other.getRemoteP2PPort());
        result = result && (getLatency()
            == other.getLatency());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + NODEID_FIELD_NUMBER;
        hash = (53 * hash) + getNodeId().hashCode();
        hash = (37 * hash) + REMOTE_P2P_IP_FIELD_NUMBER;
        hash = (53 * hash) + getRemoteP2PIp().hashCode();
        hash = (37 * hash) + REMOTE_P2P_PORT_FIELD_NUMBER;
        hash = (53 * hash) + getRemoteP2PPort();
        hash = (37 * hash) + LATENCY_FIELD_NUMBER;
        hash = (53 * hash) + getLatency();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Node parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Node parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Node parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_Node prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_Node}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_Node)
          org.aion.api.server.pb.Message.t_NodeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Node_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Node_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_Node.class, org.aion.api.server.pb.Message.t_Node.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_Node.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          nodeId_ = "";
  
          remoteP2PIp_ = "";
  
          remoteP2PPort_ = 0;
  
          latency_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Node_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_Node getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_Node.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_Node build() {
          org.aion.api.server.pb.Message.t_Node result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_Node buildPartial() {
          org.aion.api.server.pb.Message.t_Node result = new org.aion.api.server.pb.Message.t_Node(this);
          result.blockNumber_ = blockNumber_;
          result.nodeId_ = nodeId_;
          result.remoteP2PIp_ = remoteP2PIp_;
          result.remoteP2PPort_ = remoteP2PPort_;
          result.latency_ = latency_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_Node) {
            return mergeFrom((org.aion.api.server.pb.Message.t_Node)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_Node other) {
          if (other == org.aion.api.server.pb.Message.t_Node.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (!other.getNodeId().isEmpty()) {
            nodeId_ = other.nodeId_;
            onChanged();
          }
          if (!other.getRemoteP2PIp().isEmpty()) {
            remoteP2PIp_ = other.remoteP2PIp_;
            onChanged();
          }
          if (other.getRemoteP2PPort() != 0) {
            setRemoteP2PPort(other.getRemoteP2PPort());
          }
          if (other.getLatency() != 0) {
            setLatency(other.getLatency());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_Node parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_Node) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private java.lang.Object nodeId_ = "";
        /**
         * <code>string nodeId = 2;</code>
         */
        public java.lang.String getNodeId() {
          java.lang.Object ref = nodeId_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            nodeId_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string nodeId = 2;</code>
         */
        public com.google.protobuf.ByteString
            getNodeIdBytes() {
          java.lang.Object ref = nodeId_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            nodeId_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string nodeId = 2;</code>
         */
        public Builder setNodeId(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nodeId_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string nodeId = 2;</code>
         */
        public Builder clearNodeId() {
          
          nodeId_ = getDefaultInstance().getNodeId();
          onChanged();
          return this;
        }
        /**
         * <code>string nodeId = 2;</code>
         */
        public Builder setNodeIdBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          nodeId_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object remoteP2PIp_ = "";
        /**
         * <code>string remote_p2p_ip = 3;</code>
         */
        public java.lang.String getRemoteP2PIp() {
          java.lang.Object ref = remoteP2PIp_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            remoteP2PIp_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string remote_p2p_ip = 3;</code>
         */
        public com.google.protobuf.ByteString
            getRemoteP2PIpBytes() {
          java.lang.Object ref = remoteP2PIp_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            remoteP2PIp_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string remote_p2p_ip = 3;</code>
         */
        public Builder setRemoteP2PIp(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          remoteP2PIp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string remote_p2p_ip = 3;</code>
         */
        public Builder clearRemoteP2PIp() {
          
          remoteP2PIp_ = getDefaultInstance().getRemoteP2PIp();
          onChanged();
          return this;
        }
        /**
         * <code>string remote_p2p_ip = 3;</code>
         */
        public Builder setRemoteP2PIpBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          remoteP2PIp_ = value;
          onChanged();
          return this;
        }
  
        private int remoteP2PPort_ ;
        /**
         * <code>uint32 remote_p2p_port = 4;</code>
         */
        public int getRemoteP2PPort() {
          return remoteP2PPort_;
        }
        /**
         * <code>uint32 remote_p2p_port = 4;</code>
         */
        public Builder setRemoteP2PPort(int value) {
          
          remoteP2PPort_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 remote_p2p_port = 4;</code>
         */
        public Builder clearRemoteP2PPort() {
          
          remoteP2PPort_ = 0;
          onChanged();
          return this;
        }
  
        private int latency_ ;
        /**
         * <code>uint32 latency = 5;</code>
         */
        public int getLatency() {
          return latency_;
        }
        /**
         * <code>uint32 latency = 5;</code>
         */
        public Builder setLatency(int value) {
          
          latency_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 latency = 5;</code>
         */
        public Builder clearLatency() {
          
          latency_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_Node)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_Node)
      private static final org.aion.api.server.pb.Message.t_Node DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_Node();
      }
  
      public static org.aion.api.server.pb.Message.t_Node getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_Node>
          PARSER = new com.google.protobuf.AbstractParser<t_Node>() {
        public t_Node parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_Node(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_Node> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_Node> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_Node getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_LgEleOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_LgEle)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>bytes data = 2;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>repeated string topics = 3;</code>
       */
      java.util.List<java.lang.String>
          getTopicsList();
      /**
       * <code>repeated string topics = 3;</code>
       */
      int getTopicsCount();
      /**
       * <code>repeated string topics = 3;</code>
       */
      java.lang.String getTopics(int index);
      /**
       * <code>repeated string topics = 3;</code>
       */
      com.google.protobuf.ByteString
          getTopicsBytes(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_LgEle}
     */
    public  static final class t_LgEle extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_LgEle)
        t_LgEleOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_LgEle.newBuilder() to construct.
      private t_LgEle(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_LgEle() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_LgEle(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 18: {
  
                data_ = input.readBytes();
                break;
              }
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
                  topics_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000004;
                }
                topics_.add(s);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000004) == 0x00000004)) {
            topics_ = topics_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_LgEle_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_LgEle_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_LgEle.class, org.aion.api.server.pb.Message.t_LgEle.Builder.class);
      }
  
      private int bitField0_;
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int DATA_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 2;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int TOPICS_FIELD_NUMBER = 3;
      private com.google.protobuf.LazyStringList topics_;
      /**
       * <code>repeated string topics = 3;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getTopicsList() {
        return topics_;
      }
      /**
       * <code>repeated string topics = 3;</code>
       */
      public int getTopicsCount() {
        return topics_.size();
      }
      /**
       * <code>repeated string topics = 3;</code>
       */
      public java.lang.String getTopics(int index) {
        return topics_.get(index);
      }
      /**
       * <code>repeated string topics = 3;</code>
       */
      public com.google.protobuf.ByteString
          getTopicsBytes(int index) {
        return topics_.getByteString(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(2, data_);
        }
        for (int i = 0; i < topics_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 3, topics_.getRaw(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, data_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < topics_.size(); i++) {
            dataSize += computeStringSizeNoTag(topics_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getTopicsList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_LgEle)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_LgEle other = (org.aion.api.server.pb.Message.t_LgEle) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && getData()
            .equals(other.getData());
        result = result && getTopicsList()
            .equals(other.getTopicsList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        if (getTopicsCount() > 0) {
          hash = (37 * hash) + TOPICS_FIELD_NUMBER;
          hash = (53 * hash) + getTopicsList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_LgEle parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_LgEle prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_LgEle}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_LgEle)
          org.aion.api.server.pb.Message.t_LgEleOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_LgEle_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_LgEle_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_LgEle.class, org.aion.api.server.pb.Message.t_LgEle.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_LgEle.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000004);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_LgEle_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_LgEle getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_LgEle.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_LgEle build() {
          org.aion.api.server.pb.Message.t_LgEle result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_LgEle buildPartial() {
          org.aion.api.server.pb.Message.t_LgEle result = new org.aion.api.server.pb.Message.t_LgEle(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.address_ = address_;
          result.data_ = data_;
          if (((bitField0_ & 0x00000004) == 0x00000004)) {
            topics_ = topics_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000004);
          }
          result.topics_ = topics_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_LgEle) {
            return mergeFrom((org.aion.api.server.pb.Message.t_LgEle)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_LgEle other) {
          if (other == org.aion.api.server.pb.Message.t_LgEle.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (!other.topics_.isEmpty()) {
            if (topics_.isEmpty()) {
              topics_ = other.topics_;
              bitField0_ = (bitField0_ & ~0x00000004);
            } else {
              ensureTopicsIsMutable();
              topics_.addAll(other.topics_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_LgEle parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_LgEle) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 2;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 2;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 2;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.LazyStringList topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureTopicsIsMutable() {
          if (!((bitField0_ & 0x00000004) == 0x00000004)) {
            topics_ = new com.google.protobuf.LazyStringArrayList(topics_);
            bitField0_ |= 0x00000004;
           }
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getTopicsList() {
          return topics_.getUnmodifiableView();
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public int getTopicsCount() {
          return topics_.size();
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public java.lang.String getTopics(int index) {
          return topics_.get(index);
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public com.google.protobuf.ByteString
            getTopicsBytes(int index) {
          return topics_.getByteString(index);
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public Builder setTopics(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTopicsIsMutable();
          topics_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public Builder addTopics(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTopicsIsMutable();
          topics_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public Builder addAllTopics(
            java.lang.Iterable<java.lang.String> values) {
          ensureTopicsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topics_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public Builder clearTopics() {
          topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000004);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 3;</code>
         */
        public Builder addTopicsBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureTopicsIsMutable();
          topics_.add(value);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_LgEle)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_LgEle)
      private static final org.aion.api.server.pb.Message.t_LgEle DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_LgEle();
      }
  
      public static org.aion.api.server.pb.Message.t_LgEle getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_LgEle>
          PARSER = new com.google.protobuf.AbstractParser<t_LgEle>() {
        public t_LgEle parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_LgEle(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_LgEle> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_LgEle> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_LgEle getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_FilterCtOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_FilterCt)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string from = 1;</code>
       */
      java.lang.String getFrom();
      /**
       * <code>string from = 1;</code>
       */
      com.google.protobuf.ByteString
          getFromBytes();
  
      /**
       * <code>string to = 2;</code>
       */
      java.lang.String getTo();
      /**
       * <code>string to = 2;</code>
       */
      com.google.protobuf.ByteString
          getToBytes();
  
      /**
       * <code>bytes contractAddr = 3;</code>
       */
      com.google.protobuf.ByteString getContractAddr();
  
      /**
       * <code>repeated bytes addresses = 4;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getAddressesList();
      /**
       * <code>repeated bytes addresses = 4;</code>
       */
      int getAddressesCount();
      /**
       * <code>repeated bytes addresses = 4;</code>
       */
      com.google.protobuf.ByteString getAddresses(int index);
  
      /**
       * <code>repeated string topics = 5;</code>
       */
      java.util.List<java.lang.String>
          getTopicsList();
      /**
       * <code>repeated string topics = 5;</code>
       */
      int getTopicsCount();
      /**
       * <code>repeated string topics = 5;</code>
       */
      java.lang.String getTopics(int index);
      /**
       * <code>repeated string topics = 5;</code>
       */
      com.google.protobuf.ByteString
          getTopicsBytes(int index);
  
      /**
       * <code>uint64 expireTime = 6;</code>
       */
      long getExpireTime();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_FilterCt}
     */
    public  static final class t_FilterCt extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_FilterCt)
        t_FilterCtOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_FilterCt.newBuilder() to construct.
      private t_FilterCt(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_FilterCt() {
        from_ = "";
        to_ = "";
        contractAddr_ = com.google.protobuf.ByteString.EMPTY;
        addresses_ = java.util.Collections.emptyList();
        topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        expireTime_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_FilterCt(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                from_ = s;
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                to_ = s;
                break;
              }
              case 26: {
  
                contractAddr_ = input.readBytes();
                break;
              }
              case 34: {
                if (!((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
                  addresses_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000008;
                }
                addresses_.add(input.readBytes());
                break;
              }
              case 42: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                  topics_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000010;
                }
                topics_.add(s);
                break;
              }
              case 48: {
  
                expireTime_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000008) == 0x00000008)) {
            addresses_ = java.util.Collections.unmodifiableList(addresses_);
          }
          if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
            topics_ = topics_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_FilterCt_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_FilterCt_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_FilterCt.class, org.aion.api.server.pb.Message.t_FilterCt.Builder.class);
      }
  
      private int bitField0_;
      public static final int FROM_FIELD_NUMBER = 1;
      private volatile java.lang.Object from_;
      /**
       * <code>string from = 1;</code>
       */
      public java.lang.String getFrom() {
        java.lang.Object ref = from_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          from_ = s;
          return s;
        }
      }
      /**
       * <code>string from = 1;</code>
       */
      public com.google.protobuf.ByteString
          getFromBytes() {
        java.lang.Object ref = from_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          from_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TO_FIELD_NUMBER = 2;
      private volatile java.lang.Object to_;
      /**
       * <code>string to = 2;</code>
       */
      public java.lang.String getTo() {
        java.lang.Object ref = to_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          to_ = s;
          return s;
        }
      }
      /**
       * <code>string to = 2;</code>
       */
      public com.google.protobuf.ByteString
          getToBytes() {
        java.lang.Object ref = to_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          to_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int CONTRACTADDR_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString contractAddr_;
      /**
       * <code>bytes contractAddr = 3;</code>
       */
      public com.google.protobuf.ByteString getContractAddr() {
        return contractAddr_;
      }
  
      public static final int ADDRESSES_FIELD_NUMBER = 4;
      private java.util.List<com.google.protobuf.ByteString> addresses_;
      /**
       * <code>repeated bytes addresses = 4;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getAddressesList() {
        return addresses_;
      }
      /**
       * <code>repeated bytes addresses = 4;</code>
       */
      public int getAddressesCount() {
        return addresses_.size();
      }
      /**
       * <code>repeated bytes addresses = 4;</code>
       */
      public com.google.protobuf.ByteString getAddresses(int index) {
        return addresses_.get(index);
      }
  
      public static final int TOPICS_FIELD_NUMBER = 5;
      private com.google.protobuf.LazyStringList topics_;
      /**
       * <code>repeated string topics = 5;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getTopicsList() {
        return topics_;
      }
      /**
       * <code>repeated string topics = 5;</code>
       */
      public int getTopicsCount() {
        return topics_.size();
      }
      /**
       * <code>repeated string topics = 5;</code>
       */
      public java.lang.String getTopics(int index) {
        return topics_.get(index);
      }
      /**
       * <code>repeated string topics = 5;</code>
       */
      public com.google.protobuf.ByteString
          getTopicsBytes(int index) {
        return topics_.getByteString(index);
      }
  
      public static final int EXPIRETIME_FIELD_NUMBER = 6;
      private long expireTime_;
      /**
       * <code>uint64 expireTime = 6;</code>
       */
      public long getExpireTime() {
        return expireTime_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getFromBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, from_);
        }
        if (!getToBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, to_);
        }
        if (!contractAddr_.isEmpty()) {
          output.writeBytes(3, contractAddr_);
        }
        for (int i = 0; i < addresses_.size(); i++) {
          output.writeBytes(4, addresses_.get(i));
        }
        for (int i = 0; i < topics_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 5, topics_.getRaw(i));
        }
        if (expireTime_ != 0L) {
          output.writeUInt64(6, expireTime_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getFromBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, from_);
        }
        if (!getToBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, to_);
        }
        if (!contractAddr_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, contractAddr_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < addresses_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(addresses_.get(i));
          }
          size += dataSize;
          size += 1 * getAddressesList().size();
        }
        {
          int dataSize = 0;
          for (int i = 0; i < topics_.size(); i++) {
            dataSize += computeStringSizeNoTag(topics_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getTopicsList().size();
        }
        if (expireTime_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(6, expireTime_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_FilterCt)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_FilterCt other = (org.aion.api.server.pb.Message.t_FilterCt) obj;
  
        boolean result = true;
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getContractAddr()
            .equals(other.getContractAddr());
        result = result && getAddressesList()
            .equals(other.getAddressesList());
        result = result && getTopicsList()
            .equals(other.getTopicsList());
        result = result && (getExpireTime()
            == other.getExpireTime());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + CONTRACTADDR_FIELD_NUMBER;
        hash = (53 * hash) + getContractAddr().hashCode();
        if (getAddressesCount() > 0) {
          hash = (37 * hash) + ADDRESSES_FIELD_NUMBER;
          hash = (53 * hash) + getAddressesList().hashCode();
        }
        if (getTopicsCount() > 0) {
          hash = (37 * hash) + TOPICS_FIELD_NUMBER;
          hash = (53 * hash) + getTopicsList().hashCode();
        }
        hash = (37 * hash) + EXPIRETIME_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getExpireTime());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_FilterCt parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_FilterCt prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_FilterCt}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_FilterCt)
          org.aion.api.server.pb.Message.t_FilterCtOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_FilterCt_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_FilterCt_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_FilterCt.class, org.aion.api.server.pb.Message.t_FilterCt.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_FilterCt.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          from_ = "";
  
          to_ = "";
  
          contractAddr_ = com.google.protobuf.ByteString.EMPTY;
  
          addresses_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);
          topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000010);
          expireTime_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_FilterCt_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_FilterCt getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_FilterCt build() {
          org.aion.api.server.pb.Message.t_FilterCt result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_FilterCt buildPartial() {
          org.aion.api.server.pb.Message.t_FilterCt result = new org.aion.api.server.pb.Message.t_FilterCt(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.from_ = from_;
          result.to_ = to_;
          result.contractAddr_ = contractAddr_;
          if (((bitField0_ & 0x00000008) == 0x00000008)) {
            addresses_ = java.util.Collections.unmodifiableList(addresses_);
            bitField0_ = (bitField0_ & ~0x00000008);
          }
          result.addresses_ = addresses_;
          if (((bitField0_ & 0x00000010) == 0x00000010)) {
            topics_ = topics_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000010);
          }
          result.topics_ = topics_;
          result.expireTime_ = expireTime_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_FilterCt) {
            return mergeFrom((org.aion.api.server.pb.Message.t_FilterCt)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_FilterCt other) {
          if (other == org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance()) return this;
          if (!other.getFrom().isEmpty()) {
            from_ = other.from_;
            onChanged();
          }
          if (!other.getTo().isEmpty()) {
            to_ = other.to_;
            onChanged();
          }
          if (other.getContractAddr() != com.google.protobuf.ByteString.EMPTY) {
            setContractAddr(other.getContractAddr());
          }
          if (!other.addresses_.isEmpty()) {
            if (addresses_.isEmpty()) {
              addresses_ = other.addresses_;
              bitField0_ = (bitField0_ & ~0x00000008);
            } else {
              ensureAddressesIsMutable();
              addresses_.addAll(other.addresses_);
            }
            onChanged();
          }
          if (!other.topics_.isEmpty()) {
            if (topics_.isEmpty()) {
              topics_ = other.topics_;
              bitField0_ = (bitField0_ & ~0x00000010);
            } else {
              ensureTopicsIsMutable();
              topics_.addAll(other.topics_);
            }
            onChanged();
          }
          if (other.getExpireTime() != 0L) {
            setExpireTime(other.getExpireTime());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_FilterCt parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_FilterCt) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.lang.Object from_ = "";
        /**
         * <code>string from = 1;</code>
         */
        public java.lang.String getFrom() {
          java.lang.Object ref = from_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            from_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string from = 1;</code>
         */
        public com.google.protobuf.ByteString
            getFromBytes() {
          java.lang.Object ref = from_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            from_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string from = 1;</code>
         */
        public Builder setFrom(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string from = 1;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
        /**
         * <code>string from = 1;</code>
         */
        public Builder setFromBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          from_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object to_ = "";
        /**
         * <code>string to = 2;</code>
         */
        public java.lang.String getTo() {
          java.lang.Object ref = to_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            to_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string to = 2;</code>
         */
        public com.google.protobuf.ByteString
            getToBytes() {
          java.lang.Object ref = to_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            to_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string to = 2;</code>
         */
        public Builder setTo(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string to = 2;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
        /**
         * <code>string to = 2;</code>
         */
        public Builder setToBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          to_ = value;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString contractAddr_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes contractAddr = 3;</code>
         */
        public com.google.protobuf.ByteString getContractAddr() {
          return contractAddr_;
        }
        /**
         * <code>bytes contractAddr = 3;</code>
         */
        public Builder setContractAddr(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          contractAddr_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes contractAddr = 3;</code>
         */
        public Builder clearContractAddr() {
          
          contractAddr_ = getDefaultInstance().getContractAddr();
          onChanged();
          return this;
        }
  
        private java.util.List<com.google.protobuf.ByteString> addresses_ = java.util.Collections.emptyList();
        private void ensureAddressesIsMutable() {
          if (!((bitField0_ & 0x00000008) == 0x00000008)) {
            addresses_ = new java.util.ArrayList<com.google.protobuf.ByteString>(addresses_);
            bitField0_ |= 0x00000008;
           }
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getAddressesList() {
          return java.util.Collections.unmodifiableList(addresses_);
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public int getAddressesCount() {
          return addresses_.size();
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public com.google.protobuf.ByteString getAddresses(int index) {
          return addresses_.get(index);
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public Builder setAddresses(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAddressesIsMutable();
          addresses_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public Builder addAddresses(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAddressesIsMutable();
          addresses_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public Builder addAllAddresses(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureAddressesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, addresses_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes addresses = 4;</code>
         */
        public Builder clearAddresses() {
          addresses_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);
          onChanged();
          return this;
        }
  
        private com.google.protobuf.LazyStringList topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureTopicsIsMutable() {
          if (!((bitField0_ & 0x00000010) == 0x00000010)) {
            topics_ = new com.google.protobuf.LazyStringArrayList(topics_);
            bitField0_ |= 0x00000010;
           }
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getTopicsList() {
          return topics_.getUnmodifiableView();
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public int getTopicsCount() {
          return topics_.size();
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public java.lang.String getTopics(int index) {
          return topics_.get(index);
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public com.google.protobuf.ByteString
            getTopicsBytes(int index) {
          return topics_.getByteString(index);
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public Builder setTopics(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTopicsIsMutable();
          topics_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public Builder addTopics(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTopicsIsMutable();
          topics_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public Builder addAllTopics(
            java.lang.Iterable<java.lang.String> values) {
          ensureTopicsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, topics_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public Builder clearTopics() {
          topics_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string topics = 5;</code>
         */
        public Builder addTopicsBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureTopicsIsMutable();
          topics_.add(value);
          onChanged();
          return this;
        }
  
        private long expireTime_ ;
        /**
         * <code>uint64 expireTime = 6;</code>
         */
        public long getExpireTime() {
          return expireTime_;
        }
        /**
         * <code>uint64 expireTime = 6;</code>
         */
        public Builder setExpireTime(long value) {
          
          expireTime_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 expireTime = 6;</code>
         */
        public Builder clearExpireTime() {
          
          expireTime_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_FilterCt)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_FilterCt)
      private static final org.aion.api.server.pb.Message.t_FilterCt DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_FilterCt();
      }
  
      public static org.aion.api.server.pb.Message.t_FilterCt getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_FilterCt>
          PARSER = new com.google.protobuf.AbstractParser<t_FilterCt>() {
        public t_FilterCt parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_FilterCt(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_FilterCt> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_FilterCt> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_FilterCt getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_EventCtOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_EventCt)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>bytes data = 2;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes blockHash = 3;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
  
      /**
       * <code>uint64 blockNumber = 4;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint32 logIndex = 5;</code>
       */
      int getLogIndex();
  
      /**
       * <code>string eventName = 6;</code>
       */
      java.lang.String getEventName();
      /**
       * <code>string eventName = 6;</code>
       */
      com.google.protobuf.ByteString
          getEventNameBytes();
  
      /**
       * <code>bool removed = 7;</code>
       */
      boolean getRemoved();
  
      /**
       * <code>uint32 txIndex = 8;</code>
       */
      int getTxIndex();
  
      /**
       * <code>bytes txHash = 9;</code>
       */
      com.google.protobuf.ByteString getTxHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_EventCt}
     */
    public  static final class t_EventCt extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_EventCt)
        t_EventCtOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_EventCt.newBuilder() to construct.
      private t_EventCt(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_EventCt() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
        blockNumber_ = 0L;
        logIndex_ = 0;
        eventName_ = "";
        removed_ = false;
        txIndex_ = 0;
        txHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_EventCt(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 18: {
  
                data_ = input.readBytes();
                break;
              }
              case 26: {
  
                blockHash_ = input.readBytes();
                break;
              }
              case 32: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 40: {
  
                logIndex_ = input.readUInt32();
                break;
              }
              case 50: {
                java.lang.String s = input.readStringRequireUtf8();
  
                eventName_ = s;
                break;
              }
              case 56: {
  
                removed_ = input.readBool();
                break;
              }
              case 64: {
  
                txIndex_ = input.readUInt32();
                break;
              }
              case 74: {
  
                txHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_EventCt_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_EventCt_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_EventCt.class, org.aion.api.server.pb.Message.t_EventCt.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int DATA_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 2;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 3;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 4;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 4;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int LOGINDEX_FIELD_NUMBER = 5;
      private int logIndex_;
      /**
       * <code>uint32 logIndex = 5;</code>
       */
      public int getLogIndex() {
        return logIndex_;
      }
  
      public static final int EVENTNAME_FIELD_NUMBER = 6;
      private volatile java.lang.Object eventName_;
      /**
       * <code>string eventName = 6;</code>
       */
      public java.lang.String getEventName() {
        java.lang.Object ref = eventName_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          eventName_ = s;
          return s;
        }
      }
      /**
       * <code>string eventName = 6;</code>
       */
      public com.google.protobuf.ByteString
          getEventNameBytes() {
        java.lang.Object ref = eventName_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          eventName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int REMOVED_FIELD_NUMBER = 7;
      private boolean removed_;
      /**
       * <code>bool removed = 7;</code>
       */
      public boolean getRemoved() {
        return removed_;
      }
  
      public static final int TXINDEX_FIELD_NUMBER = 8;
      private int txIndex_;
      /**
       * <code>uint32 txIndex = 8;</code>
       */
      public int getTxIndex() {
        return txIndex_;
      }
  
      public static final int TXHASH_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 9;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(2, data_);
        }
        if (!blockHash_.isEmpty()) {
          output.writeBytes(3, blockHash_);
        }
        if (blockNumber_ != 0L) {
          output.writeUInt64(4, blockNumber_);
        }
        if (logIndex_ != 0) {
          output.writeUInt32(5, logIndex_);
        }
        if (!getEventNameBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 6, eventName_);
        }
        if (removed_ != false) {
          output.writeBool(7, removed_);
        }
        if (txIndex_ != 0) {
          output.writeUInt32(8, txIndex_);
        }
        if (!txHash_.isEmpty()) {
          output.writeBytes(9, txHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, data_);
        }
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, blockHash_);
        }
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, blockNumber_);
        }
        if (logIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(5, logIndex_);
        }
        if (!getEventNameBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, eventName_);
        }
        if (removed_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(7, removed_);
        }
        if (txIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(8, txIndex_);
        }
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, txHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_EventCt)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_EventCt other = (org.aion.api.server.pb.Message.t_EventCt) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && getData()
            .equals(other.getData());
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getLogIndex()
            == other.getLogIndex());
        result = result && getEventName()
            .equals(other.getEventName());
        result = result && (getRemoved()
            == other.getRemoved());
        result = result && (getTxIndex()
            == other.getTxIndex());
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + LOGINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getLogIndex();
        hash = (37 * hash) + EVENTNAME_FIELD_NUMBER;
        hash = (53 * hash) + getEventName().hashCode();
        hash = (37 * hash) + REMOVED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getRemoved());
        hash = (37 * hash) + TXINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTxIndex();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_EventCt parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_EventCt prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_EventCt}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_EventCt)
          org.aion.api.server.pb.Message.t_EventCtOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_EventCt_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_EventCt_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_EventCt.class, org.aion.api.server.pb.Message.t_EventCt.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_EventCt.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          blockNumber_ = 0L;
  
          logIndex_ = 0;
  
          eventName_ = "";
  
          removed_ = false;
  
          txIndex_ = 0;
  
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_EventCt_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_EventCt getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_EventCt.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_EventCt build() {
          org.aion.api.server.pb.Message.t_EventCt result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_EventCt buildPartial() {
          org.aion.api.server.pb.Message.t_EventCt result = new org.aion.api.server.pb.Message.t_EventCt(this);
          result.address_ = address_;
          result.data_ = data_;
          result.blockHash_ = blockHash_;
          result.blockNumber_ = blockNumber_;
          result.logIndex_ = logIndex_;
          result.eventName_ = eventName_;
          result.removed_ = removed_;
          result.txIndex_ = txIndex_;
          result.txHash_ = txHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_EventCt) {
            return mergeFrom((org.aion.api.server.pb.Message.t_EventCt)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_EventCt other) {
          if (other == org.aion.api.server.pb.Message.t_EventCt.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getLogIndex() != 0) {
            setLogIndex(other.getLogIndex());
          }
          if (!other.getEventName().isEmpty()) {
            eventName_ = other.eventName_;
            onChanged();
          }
          if (other.getRemoved() != false) {
            setRemoved(other.getRemoved());
          }
          if (other.getTxIndex() != 0) {
            setTxIndex(other.getTxIndex());
          }
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_EventCt parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_EventCt) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 2;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 2;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 2;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 3;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 3;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 3;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 4;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 4;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 4;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private int logIndex_ ;
        /**
         * <code>uint32 logIndex = 5;</code>
         */
        public int getLogIndex() {
          return logIndex_;
        }
        /**
         * <code>uint32 logIndex = 5;</code>
         */
        public Builder setLogIndex(int value) {
          
          logIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 logIndex = 5;</code>
         */
        public Builder clearLogIndex() {
          
          logIndex_ = 0;
          onChanged();
          return this;
        }
  
        private java.lang.Object eventName_ = "";
        /**
         * <code>string eventName = 6;</code>
         */
        public java.lang.String getEventName() {
          java.lang.Object ref = eventName_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            eventName_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string eventName = 6;</code>
         */
        public com.google.protobuf.ByteString
            getEventNameBytes() {
          java.lang.Object ref = eventName_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            eventName_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string eventName = 6;</code>
         */
        public Builder setEventName(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          eventName_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string eventName = 6;</code>
         */
        public Builder clearEventName() {
          
          eventName_ = getDefaultInstance().getEventName();
          onChanged();
          return this;
        }
        /**
         * <code>string eventName = 6;</code>
         */
        public Builder setEventNameBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          eventName_ = value;
          onChanged();
          return this;
        }
  
        private boolean removed_ ;
        /**
         * <code>bool removed = 7;</code>
         */
        public boolean getRemoved() {
          return removed_;
        }
        /**
         * <code>bool removed = 7;</code>
         */
        public Builder setRemoved(boolean value) {
          
          removed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool removed = 7;</code>
         */
        public Builder clearRemoved() {
          
          removed_ = false;
          onChanged();
          return this;
        }
  
        private int txIndex_ ;
        /**
         * <code>uint32 txIndex = 8;</code>
         */
        public int getTxIndex() {
          return txIndex_;
        }
        /**
         * <code>uint32 txIndex = 8;</code>
         */
        public Builder setTxIndex(int value) {
          
          txIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txIndex = 8;</code>
         */
        public Builder clearTxIndex() {
          
          txIndex_ = 0;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 9;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 9;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 9;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_EventCt)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_EventCt)
      private static final org.aion.api.server.pb.Message.t_EventCt DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_EventCt();
      }
  
      public static org.aion.api.server.pb.Message.t_EventCt getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_EventCt>
          PARSER = new com.google.protobuf.AbstractParser<t_EventCt>() {
        public t_EventCt parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_EventCt(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_EventCt> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_EventCt> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_EventCt getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_BlockDetailOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_BlockDetail)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      long getTimestamp();
  
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      long getNrgLimit();
  
      /**
       * <code>bytes parentHash = 5;</code>
       */
      com.google.protobuf.ByteString getParentHash();
  
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      com.google.protobuf.ByteString getMinerAddress();
  
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      com.google.protobuf.ByteString getStateRoot();
  
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      com.google.protobuf.ByteString getTxTrieRoot();
  
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      com.google.protobuf.ByteString getReceiptTrieRoot();
  
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      com.google.protobuf.ByteString getLogsBloom();
  
      /**
       * <code>bytes difficulty = 11;</code>
       */
      com.google.protobuf.ByteString getDifficulty();
  
      /**
       * <code>bytes totalDifficulty = 12;</code>
       */
      com.google.protobuf.ByteString getTotalDifficulty();
  
      /**
       * <code>bytes extraData = 13;</code>
       */
      com.google.protobuf.ByteString getExtraData();
  
      /**
       * <code>bytes nonce = 14;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>bytes solution = 15;</code>
       */
      com.google.protobuf.ByteString getSolution();
  
      /**
       * <code>bytes hash = 16;</code>
       */
      com.google.protobuf.ByteString getHash();
  
      /**
       * <code>uint32 size = 17;</code>
       */
      int getSize();
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_TxDetail> 
          getTxList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      org.aion.api.server.pb.Message.t_TxDetail getTx(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      int getTxCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_TxDetailOrBuilder> 
          getTxOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      org.aion.api.server.pb.Message.t_TxDetailOrBuilder getTxOrBuilder(
          int index);
  
      /**
       * <code>uint64 blockTime = 19;</code>
       */
      long getBlockTime();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_BlockDetail}
     */
    public  static final class t_BlockDetail extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_BlockDetail)
        t_BlockDetailOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_BlockDetail.newBuilder() to construct.
      private t_BlockDetail(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_BlockDetail() {
        blockNumber_ = 0L;
        timestamp_ = 0L;
        nrgConsumed_ = 0L;
        nrgLimit_ = 0L;
        parentHash_ = com.google.protobuf.ByteString.EMPTY;
        minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        difficulty_ = com.google.protobuf.ByteString.EMPTY;
        totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
        extraData_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        solution_ = com.google.protobuf.ByteString.EMPTY;
        hash_ = com.google.protobuf.ByteString.EMPTY;
        size_ = 0;
        tx_ = java.util.Collections.emptyList();
        blockTime_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_BlockDetail(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 16: {
  
                timestamp_ = input.readUInt64();
                break;
              }
              case 24: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 32: {
  
                nrgLimit_ = input.readUInt64();
                break;
              }
              case 42: {
  
                parentHash_ = input.readBytes();
                break;
              }
              case 50: {
  
                minerAddress_ = input.readBytes();
                break;
              }
              case 58: {
  
                stateRoot_ = input.readBytes();
                break;
              }
              case 66: {
  
                txTrieRoot_ = input.readBytes();
                break;
              }
              case 74: {
  
                receiptTrieRoot_ = input.readBytes();
                break;
              }
              case 82: {
  
                logsBloom_ = input.readBytes();
                break;
              }
              case 90: {
  
                difficulty_ = input.readBytes();
                break;
              }
              case 98: {
  
                totalDifficulty_ = input.readBytes();
                break;
              }
              case 106: {
  
                extraData_ = input.readBytes();
                break;
              }
              case 114: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 122: {
  
                solution_ = input.readBytes();
                break;
              }
              case 130: {
  
                hash_ = input.readBytes();
                break;
              }
              case 136: {
  
                size_ = input.readUInt32();
                break;
              }
              case 146: {
                if (!((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
                  tx_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_TxDetail>();
                  mutable_bitField0_ |= 0x00020000;
                }
                tx_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_TxDetail.parser(), extensionRegistry));
                break;
              }
              case 152: {
  
                blockTime_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
            tx_ = java.util.Collections.unmodifiableList(tx_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockDetail_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockDetail_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_BlockDetail.class, org.aion.api.server.pb.Message.t_BlockDetail.Builder.class);
      }
  
      private int bitField0_;
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 2;
      private long timestamp_;
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      public long getTimestamp() {
        return timestamp_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 3;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int NRGLIMIT_FIELD_NUMBER = 4;
      private long nrgLimit_;
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      public long getNrgLimit() {
        return nrgLimit_;
      }
  
      public static final int PARENTHASH_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString parentHash_;
      /**
       * <code>bytes parentHash = 5;</code>
       */
      public com.google.protobuf.ByteString getParentHash() {
        return parentHash_;
      }
  
      public static final int MINERADDRESS_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString minerAddress_;
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      public com.google.protobuf.ByteString getMinerAddress() {
        return minerAddress_;
      }
  
      public static final int STATEROOT_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString stateRoot_;
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      public com.google.protobuf.ByteString getStateRoot() {
        return stateRoot_;
      }
  
      public static final int TXTRIEROOT_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString txTrieRoot_;
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      public com.google.protobuf.ByteString getTxTrieRoot() {
        return txTrieRoot_;
      }
  
      public static final int RECEIPTTRIEROOT_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString receiptTrieRoot_;
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      public com.google.protobuf.ByteString getReceiptTrieRoot() {
        return receiptTrieRoot_;
      }
  
      public static final int LOGSBLOOM_FIELD_NUMBER = 10;
      private com.google.protobuf.ByteString logsBloom_;
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      public com.google.protobuf.ByteString getLogsBloom() {
        return logsBloom_;
      }
  
      public static final int DIFFICULTY_FIELD_NUMBER = 11;
      private com.google.protobuf.ByteString difficulty_;
      /**
       * <code>bytes difficulty = 11;</code>
       */
      public com.google.protobuf.ByteString getDifficulty() {
        return difficulty_;
      }
  
      public static final int TOTALDIFFICULTY_FIELD_NUMBER = 12;
      private com.google.protobuf.ByteString totalDifficulty_;
      /**
       * <code>bytes totalDifficulty = 12;</code>
       */
      public com.google.protobuf.ByteString getTotalDifficulty() {
        return totalDifficulty_;
      }
  
      public static final int EXTRADATA_FIELD_NUMBER = 13;
      private com.google.protobuf.ByteString extraData_;
      /**
       * <code>bytes extraData = 13;</code>
       */
      public com.google.protobuf.ByteString getExtraData() {
        return extraData_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 14;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 14;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int SOLUTION_FIELD_NUMBER = 15;
      private com.google.protobuf.ByteString solution_;
      /**
       * <code>bytes solution = 15;</code>
       */
      public com.google.protobuf.ByteString getSolution() {
        return solution_;
      }
  
      public static final int HASH_FIELD_NUMBER = 16;
      private com.google.protobuf.ByteString hash_;
      /**
       * <code>bytes hash = 16;</code>
       */
      public com.google.protobuf.ByteString getHash() {
        return hash_;
      }
  
      public static final int SIZE_FIELD_NUMBER = 17;
      private int size_;
      /**
       * <code>uint32 size = 17;</code>
       */
      public int getSize() {
        return size_;
      }
  
      public static final int TX_FIELD_NUMBER = 18;
      private java.util.List<org.aion.api.server.pb.Message.t_TxDetail> tx_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_TxDetail> getTxList() {
        return tx_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_TxDetailOrBuilder> 
          getTxOrBuilderList() {
        return tx_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      public int getTxCount() {
        return tx_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      public org.aion.api.server.pb.Message.t_TxDetail getTx(int index) {
        return tx_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
       */
      public org.aion.api.server.pb.Message.t_TxDetailOrBuilder getTxOrBuilder(
          int index) {
        return tx_.get(index);
      }
  
      public static final int BLOCKTIME_FIELD_NUMBER = 19;
      private long blockTime_;
      /**
       * <code>uint64 blockTime = 19;</code>
       */
      public long getBlockTime() {
        return blockTime_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          output.writeUInt64(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          output.writeUInt64(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          output.writeBytes(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          output.writeBytes(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          output.writeBytes(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          output.writeBytes(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          output.writeBytes(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          output.writeBytes(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          output.writeBytes(11, difficulty_);
        }
        if (!totalDifficulty_.isEmpty()) {
          output.writeBytes(12, totalDifficulty_);
        }
        if (!extraData_.isEmpty()) {
          output.writeBytes(13, extraData_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(14, nonce_);
        }
        if (!solution_.isEmpty()) {
          output.writeBytes(15, solution_);
        }
        if (!hash_.isEmpty()) {
          output.writeBytes(16, hash_);
        }
        if (size_ != 0) {
          output.writeUInt32(17, size_);
        }
        for (int i = 0; i < tx_.size(); i++) {
          output.writeMessage(18, tx_.get(i));
        }
        if (blockTime_ != 0L) {
          output.writeUInt64(19, blockTime_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(11, difficulty_);
        }
        if (!totalDifficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(12, totalDifficulty_);
        }
        if (!extraData_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(13, extraData_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(14, nonce_);
        }
        if (!solution_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(15, solution_);
        }
        if (!hash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(16, hash_);
        }
        if (size_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(17, size_);
        }
        for (int i = 0; i < tx_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(18, tx_.get(i));
        }
        if (blockTime_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(19, blockTime_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_BlockDetail)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_BlockDetail other = (org.aion.api.server.pb.Message.t_BlockDetail) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getTimestamp()
            == other.getTimestamp());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getNrgLimit()
            == other.getNrgLimit());
        result = result && getParentHash()
            .equals(other.getParentHash());
        result = result && getMinerAddress()
            .equals(other.getMinerAddress());
        result = result && getStateRoot()
            .equals(other.getStateRoot());
        result = result && getTxTrieRoot()
            .equals(other.getTxTrieRoot());
        result = result && getReceiptTrieRoot()
            .equals(other.getReceiptTrieRoot());
        result = result && getLogsBloom()
            .equals(other.getLogsBloom());
        result = result && getDifficulty()
            .equals(other.getDifficulty());
        result = result && getTotalDifficulty()
            .equals(other.getTotalDifficulty());
        result = result && getExtraData()
            .equals(other.getExtraData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && getSolution()
            .equals(other.getSolution());
        result = result && getHash()
            .equals(other.getHash());
        result = result && (getSize()
            == other.getSize());
        result = result && getTxList()
            .equals(other.getTxList());
        result = result && (getBlockTime()
            == other.getBlockTime());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTimestamp());
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + NRGLIMIT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgLimit());
        hash = (37 * hash) + PARENTHASH_FIELD_NUMBER;
        hash = (53 * hash) + getParentHash().hashCode();
        hash = (37 * hash) + MINERADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getMinerAddress().hashCode();
        hash = (37 * hash) + STATEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getStateRoot().hashCode();
        hash = (37 * hash) + TXTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getTxTrieRoot().hashCode();
        hash = (37 * hash) + RECEIPTTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getReceiptTrieRoot().hashCode();
        hash = (37 * hash) + LOGSBLOOM_FIELD_NUMBER;
        hash = (53 * hash) + getLogsBloom().hashCode();
        hash = (37 * hash) + DIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getDifficulty().hashCode();
        hash = (37 * hash) + TOTALDIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getTotalDifficulty().hashCode();
        hash = (37 * hash) + EXTRADATA_FIELD_NUMBER;
        hash = (53 * hash) + getExtraData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + SOLUTION_FIELD_NUMBER;
        hash = (53 * hash) + getSolution().hashCode();
        hash = (37 * hash) + HASH_FIELD_NUMBER;
        hash = (53 * hash) + getHash().hashCode();
        hash = (37 * hash) + SIZE_FIELD_NUMBER;
        hash = (53 * hash) + getSize();
        if (getTxCount() > 0) {
          hash = (37 * hash) + TX_FIELD_NUMBER;
          hash = (53 * hash) + getTxList().hashCode();
        }
        hash = (37 * hash) + BLOCKTIME_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockTime());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_BlockDetail parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_BlockDetail prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_BlockDetail}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_BlockDetail)
          org.aion.api.server.pb.Message.t_BlockDetailOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockDetail_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockDetail_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_BlockDetail.class, org.aion.api.server.pb.Message.t_BlockDetail.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_BlockDetail.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getTxFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          timestamp_ = 0L;
  
          nrgConsumed_ = 0L;
  
          nrgLimit_ = 0L;
  
          parentHash_ = com.google.protobuf.ByteString.EMPTY;
  
          minerAddress_ = com.google.protobuf.ByteString.EMPTY;
  
          stateRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          logsBloom_ = com.google.protobuf.ByteString.EMPTY;
  
          difficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          extraData_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          solution_ = com.google.protobuf.ByteString.EMPTY;
  
          hash_ = com.google.protobuf.ByteString.EMPTY;
  
          size_ = 0;
  
          if (txBuilder_ == null) {
            tx_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00020000);
          } else {
            txBuilder_.clear();
          }
          blockTime_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockDetail_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_BlockDetail getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_BlockDetail build() {
          org.aion.api.server.pb.Message.t_BlockDetail result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_BlockDetail buildPartial() {
          org.aion.api.server.pb.Message.t_BlockDetail result = new org.aion.api.server.pb.Message.t_BlockDetail(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.blockNumber_ = blockNumber_;
          result.timestamp_ = timestamp_;
          result.nrgConsumed_ = nrgConsumed_;
          result.nrgLimit_ = nrgLimit_;
          result.parentHash_ = parentHash_;
          result.minerAddress_ = minerAddress_;
          result.stateRoot_ = stateRoot_;
          result.txTrieRoot_ = txTrieRoot_;
          result.receiptTrieRoot_ = receiptTrieRoot_;
          result.logsBloom_ = logsBloom_;
          result.difficulty_ = difficulty_;
          result.totalDifficulty_ = totalDifficulty_;
          result.extraData_ = extraData_;
          result.nonce_ = nonce_;
          result.solution_ = solution_;
          result.hash_ = hash_;
          result.size_ = size_;
          if (txBuilder_ == null) {
            if (((bitField0_ & 0x00020000) == 0x00020000)) {
              tx_ = java.util.Collections.unmodifiableList(tx_);
              bitField0_ = (bitField0_ & ~0x00020000);
            }
            result.tx_ = tx_;
          } else {
            result.tx_ = txBuilder_.build();
          }
          result.blockTime_ = blockTime_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_BlockDetail) {
            return mergeFrom((org.aion.api.server.pb.Message.t_BlockDetail)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_BlockDetail other) {
          if (other == org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getTimestamp() != 0L) {
            setTimestamp(other.getTimestamp());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getNrgLimit() != 0L) {
            setNrgLimit(other.getNrgLimit());
          }
          if (other.getParentHash() != com.google.protobuf.ByteString.EMPTY) {
            setParentHash(other.getParentHash());
          }
          if (other.getMinerAddress() != com.google.protobuf.ByteString.EMPTY) {
            setMinerAddress(other.getMinerAddress());
          }
          if (other.getStateRoot() != com.google.protobuf.ByteString.EMPTY) {
            setStateRoot(other.getStateRoot());
          }
          if (other.getTxTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setTxTrieRoot(other.getTxTrieRoot());
          }
          if (other.getReceiptTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setReceiptTrieRoot(other.getReceiptTrieRoot());
          }
          if (other.getLogsBloom() != com.google.protobuf.ByteString.EMPTY) {
            setLogsBloom(other.getLogsBloom());
          }
          if (other.getDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setDifficulty(other.getDifficulty());
          }
          if (other.getTotalDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setTotalDifficulty(other.getTotalDifficulty());
          }
          if (other.getExtraData() != com.google.protobuf.ByteString.EMPTY) {
            setExtraData(other.getExtraData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getSolution() != com.google.protobuf.ByteString.EMPTY) {
            setSolution(other.getSolution());
          }
          if (other.getHash() != com.google.protobuf.ByteString.EMPTY) {
            setHash(other.getHash());
          }
          if (other.getSize() != 0) {
            setSize(other.getSize());
          }
          if (txBuilder_ == null) {
            if (!other.tx_.isEmpty()) {
              if (tx_.isEmpty()) {
                tx_ = other.tx_;
                bitField0_ = (bitField0_ & ~0x00020000);
              } else {
                ensureTxIsMutable();
                tx_.addAll(other.tx_);
              }
              onChanged();
            }
          } else {
            if (!other.tx_.isEmpty()) {
              if (txBuilder_.isEmpty()) {
                txBuilder_.dispose();
                txBuilder_ = null;
                tx_ = other.tx_;
                bitField0_ = (bitField0_ & ~0x00020000);
                txBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getTxFieldBuilder() : null;
              } else {
                txBuilder_.addAllMessages(other.tx_);
              }
            }
          }
          if (other.getBlockTime() != 0L) {
            setBlockTime(other.getBlockTime());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_BlockDetail parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_BlockDetail) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private long timestamp_ ;
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public long getTimestamp() {
          return timestamp_;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder setTimestamp(long value) {
          
          timestamp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder clearTimestamp() {
          
          timestamp_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgLimit_ ;
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public long getNrgLimit() {
          return nrgLimit_;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder setNrgLimit(long value) {
          
          nrgLimit_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder clearNrgLimit() {
          
          nrgLimit_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString parentHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public com.google.protobuf.ByteString getParentHash() {
          return parentHash_;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder setParentHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          parentHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder clearParentHash() {
          
          parentHash_ = getDefaultInstance().getParentHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public com.google.protobuf.ByteString getMinerAddress() {
          return minerAddress_;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder setMinerAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          minerAddress_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder clearMinerAddress() {
          
          minerAddress_ = getDefaultInstance().getMinerAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public com.google.protobuf.ByteString getStateRoot() {
          return stateRoot_;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder setStateRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          stateRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder clearStateRoot() {
          
          stateRoot_ = getDefaultInstance().getStateRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public com.google.protobuf.ByteString getTxTrieRoot() {
          return txTrieRoot_;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder setTxTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder clearTxTrieRoot() {
          
          txTrieRoot_ = getDefaultInstance().getTxTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public com.google.protobuf.ByteString getReceiptTrieRoot() {
          return receiptTrieRoot_;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder setReceiptTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          receiptTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder clearReceiptTrieRoot() {
          
          receiptTrieRoot_ = getDefaultInstance().getReceiptTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public com.google.protobuf.ByteString getLogsBloom() {
          return logsBloom_;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder setLogsBloom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          logsBloom_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder clearLogsBloom() {
          
          logsBloom_ = getDefaultInstance().getLogsBloom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString difficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public com.google.protobuf.ByteString getDifficulty() {
          return difficulty_;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder setDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          difficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder clearDifficulty() {
          
          difficulty_ = getDefaultInstance().getDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public com.google.protobuf.ByteString getTotalDifficulty() {
          return totalDifficulty_;
        }
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public Builder setTotalDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          totalDifficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public Builder clearTotalDifficulty() {
          
          totalDifficulty_ = getDefaultInstance().getTotalDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString extraData_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes extraData = 13;</code>
         */
        public com.google.protobuf.ByteString getExtraData() {
          return extraData_;
        }
        /**
         * <code>bytes extraData = 13;</code>
         */
        public Builder setExtraData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          extraData_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes extraData = 13;</code>
         */
        public Builder clearExtraData() {
          
          extraData_ = getDefaultInstance().getExtraData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 14;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 14;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 14;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString solution_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes solution = 15;</code>
         */
        public com.google.protobuf.ByteString getSolution() {
          return solution_;
        }
        /**
         * <code>bytes solution = 15;</code>
         */
        public Builder setSolution(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          solution_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes solution = 15;</code>
         */
        public Builder clearSolution() {
          
          solution_ = getDefaultInstance().getSolution();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString hash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes hash = 16;</code>
         */
        public com.google.protobuf.ByteString getHash() {
          return hash_;
        }
        /**
         * <code>bytes hash = 16;</code>
         */
        public Builder setHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          hash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes hash = 16;</code>
         */
        public Builder clearHash() {
          
          hash_ = getDefaultInstance().getHash();
          onChanged();
          return this;
        }
  
        private int size_ ;
        /**
         * <code>uint32 size = 17;</code>
         */
        public int getSize() {
          return size_;
        }
        /**
         * <code>uint32 size = 17;</code>
         */
        public Builder setSize(int value) {
          
          size_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 size = 17;</code>
         */
        public Builder clearSize() {
          
          size_ = 0;
          onChanged();
          return this;
        }
  
        private java.util.List<org.aion.api.server.pb.Message.t_TxDetail> tx_ =
          java.util.Collections.emptyList();
        private void ensureTxIsMutable() {
          if (!((bitField0_ & 0x00020000) == 0x00020000)) {
            tx_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_TxDetail>(tx_);
            bitField0_ |= 0x00020000;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_TxDetail, org.aion.api.server.pb.Message.t_TxDetail.Builder, org.aion.api.server.pb.Message.t_TxDetailOrBuilder> txBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_TxDetail> getTxList() {
          if (txBuilder_ == null) {
            return java.util.Collections.unmodifiableList(tx_);
          } else {
            return txBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public int getTxCount() {
          if (txBuilder_ == null) {
            return tx_.size();
          } else {
            return txBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public org.aion.api.server.pb.Message.t_TxDetail getTx(int index) {
          if (txBuilder_ == null) {
            return tx_.get(index);
          } else {
            return txBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder setTx(
            int index, org.aion.api.server.pb.Message.t_TxDetail value) {
          if (txBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTxIsMutable();
            tx_.set(index, value);
            onChanged();
          } else {
            txBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder setTx(
            int index, org.aion.api.server.pb.Message.t_TxDetail.Builder builderForValue) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.set(index, builderForValue.build());
            onChanged();
          } else {
            txBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder addTx(org.aion.api.server.pb.Message.t_TxDetail value) {
          if (txBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTxIsMutable();
            tx_.add(value);
            onChanged();
          } else {
            txBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder addTx(
            int index, org.aion.api.server.pb.Message.t_TxDetail value) {
          if (txBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTxIsMutable();
            tx_.add(index, value);
            onChanged();
          } else {
            txBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder addTx(
            org.aion.api.server.pb.Message.t_TxDetail.Builder builderForValue) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.add(builderForValue.build());
            onChanged();
          } else {
            txBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder addTx(
            int index, org.aion.api.server.pb.Message.t_TxDetail.Builder builderForValue) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.add(index, builderForValue.build());
            onChanged();
          } else {
            txBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder addAllTx(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_TxDetail> values) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, tx_);
            onChanged();
          } else {
            txBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder clearTx() {
          if (txBuilder_ == null) {
            tx_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00020000);
            onChanged();
          } else {
            txBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public Builder removeTx(int index) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.remove(index);
            onChanged();
          } else {
            txBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public org.aion.api.server.pb.Message.t_TxDetail.Builder getTxBuilder(
            int index) {
          return getTxFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public org.aion.api.server.pb.Message.t_TxDetailOrBuilder getTxOrBuilder(
            int index) {
          if (txBuilder_ == null) {
            return tx_.get(index);  } else {
            return txBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_TxDetailOrBuilder> 
             getTxOrBuilderList() {
          if (txBuilder_ != null) {
            return txBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(tx_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public org.aion.api.server.pb.Message.t_TxDetail.Builder addTxBuilder() {
          return getTxFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_TxDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public org.aion.api.server.pb.Message.t_TxDetail.Builder addTxBuilder(
            int index) {
          return getTxFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_TxDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_TxDetail tx = 18;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_TxDetail.Builder> 
             getTxBuilderList() {
          return getTxFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_TxDetail, org.aion.api.server.pb.Message.t_TxDetail.Builder, org.aion.api.server.pb.Message.t_TxDetailOrBuilder> 
            getTxFieldBuilder() {
          if (txBuilder_ == null) {
            txBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_TxDetail, org.aion.api.server.pb.Message.t_TxDetail.Builder, org.aion.api.server.pb.Message.t_TxDetailOrBuilder>(
                    tx_,
                    ((bitField0_ & 0x00020000) == 0x00020000),
                    getParentForChildren(),
                    isClean());
            tx_ = null;
          }
          return txBuilder_;
        }
  
        private long blockTime_ ;
        /**
         * <code>uint64 blockTime = 19;</code>
         */
        public long getBlockTime() {
          return blockTime_;
        }
        /**
         * <code>uint64 blockTime = 19;</code>
         */
        public Builder setBlockTime(long value) {
          
          blockTime_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockTime = 19;</code>
         */
        public Builder clearBlockTime() {
          
          blockTime_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_BlockDetail)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_BlockDetail)
      private static final org.aion.api.server.pb.Message.t_BlockDetail DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_BlockDetail();
      }
  
      public static org.aion.api.server.pb.Message.t_BlockDetail getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_BlockDetail>
          PARSER = new com.google.protobuf.AbstractParser<t_BlockDetail>() {
        public t_BlockDetail parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_BlockDetail(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_BlockDetail> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_BlockDetail> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_BlockDetail getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_TxDetailOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_TxDetail)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
  
      /**
       * <code>bytes from = 2;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes to = 3;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes value = 4;</code>
       */
      com.google.protobuf.ByteString getValue();
  
      /**
       * <code>bytes data = 5;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes nonce = 6;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>uint64 nrgConsumed = 7;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 nrgPrice = 8;</code>
       */
      long getNrgPrice();
  
      /**
       * <code>uint32 txIndex = 9;</code>
       */
      int getTxIndex();
  
      /**
       * <code>bytes contract = 10;</code>
       */
      com.google.protobuf.ByteString getContract();
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_LgEle> 
          getLogsList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      org.aion.api.server.pb.Message.t_LgEle getLogs(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      int getLogsCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
          getLogsOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      org.aion.api.server.pb.Message.t_LgEleOrBuilder getLogsOrBuilder(
          int index);
  
      /**
       * <code>uint64 timestamp = 12;</code>
       */
      long getTimestamp();
  
      /**
       * <code>string error = 13;</code>
       */
      java.lang.String getError();
      /**
       * <code>string error = 13;</code>
       */
      com.google.protobuf.ByteString
          getErrorBytes();
  
      /**
       * <code>bytes type = 14;</code>
       */
      com.google.protobuf.ByteString getType();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_TxDetail}
     */
    public  static final class t_TxDetail extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_TxDetail)
        t_TxDetailOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_TxDetail.newBuilder() to construct.
      private t_TxDetail(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_TxDetail() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
        from_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        nrgConsumed_ = 0L;
        nrgPrice_ = 0L;
        txIndex_ = 0;
        contract_ = com.google.protobuf.ByteString.EMPTY;
        logs_ = java.util.Collections.emptyList();
        timestamp_ = 0L;
        error_ = "";
        type_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_TxDetail(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
              case 18: {
  
                from_ = input.readBytes();
                break;
              }
              case 26: {
  
                to_ = input.readBytes();
                break;
              }
              case 34: {
  
                value_ = input.readBytes();
                break;
              }
              case 42: {
  
                data_ = input.readBytes();
                break;
              }
              case 50: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 56: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 64: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
              case 72: {
  
                txIndex_ = input.readUInt32();
                break;
              }
              case 82: {
  
                contract_ = input.readBytes();
                break;
              }
              case 90: {
                if (!((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
                  logs_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_LgEle>();
                  mutable_bitField0_ |= 0x00000400;
                }
                logs_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_LgEle.parser(), extensionRegistry));
                break;
              }
              case 96: {
  
                timestamp_ = input.readUInt64();
                break;
              }
              case 106: {
                java.lang.String s = input.readStringRequireUtf8();
  
                error_ = s;
                break;
              }
              case 114: {
  
                type_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000400) == 0x00000400)) {
            logs_ = java.util.Collections.unmodifiableList(logs_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_TxDetail_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_TxDetail_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_TxDetail.class, org.aion.api.server.pb.Message.t_TxDetail.Builder.class);
      }
  
      private int bitField0_;
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      public static final int FROM_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 2;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TO_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 3;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 4;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 4;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      public static final int DATA_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 5;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 6;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 7;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 7;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 8;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 8;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      public static final int TXINDEX_FIELD_NUMBER = 9;
      private int txIndex_;
      /**
       * <code>uint32 txIndex = 9;</code>
       */
      public int getTxIndex() {
        return txIndex_;
      }
  
      public static final int CONTRACT_FIELD_NUMBER = 10;
      private com.google.protobuf.ByteString contract_;
      /**
       * <code>bytes contract = 10;</code>
       */
      public com.google.protobuf.ByteString getContract() {
        return contract_;
      }
  
      public static final int LOGS_FIELD_NUMBER = 11;
      private java.util.List<org.aion.api.server.pb.Message.t_LgEle> logs_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_LgEle> getLogsList() {
        return logs_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
          getLogsOrBuilderList() {
        return logs_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      public int getLogsCount() {
        return logs_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      public org.aion.api.server.pb.Message.t_LgEle getLogs(int index) {
        return logs_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
       */
      public org.aion.api.server.pb.Message.t_LgEleOrBuilder getLogsOrBuilder(
          int index) {
        return logs_.get(index);
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 12;
      private long timestamp_;
      /**
       * <code>uint64 timestamp = 12;</code>
       */
      public long getTimestamp() {
        return timestamp_;
      }
  
      public static final int ERROR_FIELD_NUMBER = 13;
      private volatile java.lang.Object error_;
      /**
       * <code>string error = 13;</code>
       */
      public java.lang.String getError() {
        java.lang.Object ref = error_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          error_ = s;
          return s;
        }
      }
      /**
       * <code>string error = 13;</code>
       */
      public com.google.protobuf.ByteString
          getErrorBytes() {
        java.lang.Object ref = error_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          error_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TYPE_FIELD_NUMBER = 14;
      private com.google.protobuf.ByteString type_;
      /**
       * <code>bytes type = 14;</code>
       */
      public com.google.protobuf.ByteString getType() {
        return type_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        if (!from_.isEmpty()) {
          output.writeBytes(2, from_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(3, to_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(4, value_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(5, data_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(6, nonce_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(7, nrgConsumed_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(8, nrgPrice_);
        }
        if (txIndex_ != 0) {
          output.writeUInt32(9, txIndex_);
        }
        if (!contract_.isEmpty()) {
          output.writeBytes(10, contract_);
        }
        for (int i = 0; i < logs_.size(); i++) {
          output.writeMessage(11, logs_.get(i));
        }
        if (timestamp_ != 0L) {
          output.writeUInt64(12, timestamp_);
        }
        if (!getErrorBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 13, error_);
        }
        if (!type_.isEmpty()) {
          output.writeBytes(14, type_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, from_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, to_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, value_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, data_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, nonce_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(7, nrgConsumed_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(8, nrgPrice_);
        }
        if (txIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(9, txIndex_);
        }
        if (!contract_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, contract_);
        }
        for (int i = 0; i < logs_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(11, logs_.get(i));
        }
        if (timestamp_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(12, timestamp_);
        }
        if (!getErrorBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(13, error_);
        }
        if (!type_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(14, type_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_TxDetail)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_TxDetail other = (org.aion.api.server.pb.Message.t_TxDetail) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getValue()
            .equals(other.getValue());
        result = result && getData()
            .equals(other.getData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && (getTxIndex()
            == other.getTxIndex());
        result = result && getContract()
            .equals(other.getContract());
        result = result && getLogsList()
            .equals(other.getLogsList());
        result = result && (getTimestamp()
            == other.getTimestamp());
        result = result && getError()
            .equals(other.getError());
        result = result && getType()
            .equals(other.getType());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (37 * hash) + TXINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTxIndex();
        hash = (37 * hash) + CONTRACT_FIELD_NUMBER;
        hash = (53 * hash) + getContract().hashCode();
        if (getLogsCount() > 0) {
          hash = (37 * hash) + LOGS_FIELD_NUMBER;
          hash = (53 * hash) + getLogsList().hashCode();
        }
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTimestamp());
        hash = (37 * hash) + ERROR_FIELD_NUMBER;
        hash = (53 * hash) + getError().hashCode();
        hash = (37 * hash) + TYPE_FIELD_NUMBER;
        hash = (53 * hash) + getType().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_TxDetail parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_TxDetail prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_TxDetail}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_TxDetail)
          org.aion.api.server.pb.Message.t_TxDetailOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_TxDetail_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_TxDetail_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_TxDetail.class, org.aion.api.server.pb.Message.t_TxDetail.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_TxDetail.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getLogsFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          nrgConsumed_ = 0L;
  
          nrgPrice_ = 0L;
  
          txIndex_ = 0;
  
          contract_ = com.google.protobuf.ByteString.EMPTY;
  
          if (logsBuilder_ == null) {
            logs_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000400);
          } else {
            logsBuilder_.clear();
          }
          timestamp_ = 0L;
  
          error_ = "";
  
          type_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_TxDetail_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_TxDetail getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_TxDetail.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_TxDetail build() {
          org.aion.api.server.pb.Message.t_TxDetail result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_TxDetail buildPartial() {
          org.aion.api.server.pb.Message.t_TxDetail result = new org.aion.api.server.pb.Message.t_TxDetail(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.txHash_ = txHash_;
          result.from_ = from_;
          result.to_ = to_;
          result.value_ = value_;
          result.data_ = data_;
          result.nonce_ = nonce_;
          result.nrgConsumed_ = nrgConsumed_;
          result.nrgPrice_ = nrgPrice_;
          result.txIndex_ = txIndex_;
          result.contract_ = contract_;
          if (logsBuilder_ == null) {
            if (((bitField0_ & 0x00000400) == 0x00000400)) {
              logs_ = java.util.Collections.unmodifiableList(logs_);
              bitField0_ = (bitField0_ & ~0x00000400);
            }
            result.logs_ = logs_;
          } else {
            result.logs_ = logsBuilder_.build();
          }
          result.timestamp_ = timestamp_;
          result.error_ = error_;
          result.type_ = type_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_TxDetail) {
            return mergeFrom((org.aion.api.server.pb.Message.t_TxDetail)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_TxDetail other) {
          if (other == org.aion.api.server.pb.Message.t_TxDetail.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          if (other.getTxIndex() != 0) {
            setTxIndex(other.getTxIndex());
          }
          if (other.getContract() != com.google.protobuf.ByteString.EMPTY) {
            setContract(other.getContract());
          }
          if (logsBuilder_ == null) {
            if (!other.logs_.isEmpty()) {
              if (logs_.isEmpty()) {
                logs_ = other.logs_;
                bitField0_ = (bitField0_ & ~0x00000400);
              } else {
                ensureLogsIsMutable();
                logs_.addAll(other.logs_);
              }
              onChanged();
            }
          } else {
            if (!other.logs_.isEmpty()) {
              if (logsBuilder_.isEmpty()) {
                logsBuilder_.dispose();
                logsBuilder_ = null;
                logs_ = other.logs_;
                bitField0_ = (bitField0_ & ~0x00000400);
                logsBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getLogsFieldBuilder() : null;
              } else {
                logsBuilder_.addAllMessages(other.logs_);
              }
            }
          }
          if (other.getTimestamp() != 0L) {
            setTimestamp(other.getTimestamp());
          }
          if (!other.getError().isEmpty()) {
            error_ = other.error_;
            onChanged();
          }
          if (other.getType() != com.google.protobuf.ByteString.EMPTY) {
            setType(other.getType());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_TxDetail parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_TxDetail) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 2;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 2;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 2;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 3;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 3;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 3;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 4;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 4;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 4;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 5;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 5;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 5;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 6;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 6;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 6;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 7;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 7;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 7;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 8;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 8;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 8;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
  
        private int txIndex_ ;
        /**
         * <code>uint32 txIndex = 9;</code>
         */
        public int getTxIndex() {
          return txIndex_;
        }
        /**
         * <code>uint32 txIndex = 9;</code>
         */
        public Builder setTxIndex(int value) {
          
          txIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txIndex = 9;</code>
         */
        public Builder clearTxIndex() {
          
          txIndex_ = 0;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString contract_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes contract = 10;</code>
         */
        public com.google.protobuf.ByteString getContract() {
          return contract_;
        }
        /**
         * <code>bytes contract = 10;</code>
         */
        public Builder setContract(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          contract_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes contract = 10;</code>
         */
        public Builder clearContract() {
          
          contract_ = getDefaultInstance().getContract();
          onChanged();
          return this;
        }
  
        private java.util.List<org.aion.api.server.pb.Message.t_LgEle> logs_ =
          java.util.Collections.emptyList();
        private void ensureLogsIsMutable() {
          if (!((bitField0_ & 0x00000400) == 0x00000400)) {
            logs_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_LgEle>(logs_);
            bitField0_ |= 0x00000400;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_LgEle, org.aion.api.server.pb.Message.t_LgEle.Builder, org.aion.api.server.pb.Message.t_LgEleOrBuilder> logsBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_LgEle> getLogsList() {
          if (logsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(logs_);
          } else {
            return logsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public int getLogsCount() {
          if (logsBuilder_ == null) {
            return logs_.size();
          } else {
            return logsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle getLogs(int index) {
          if (logsBuilder_ == null) {
            return logs_.get(index);
          } else {
            return logsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder setLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle value) {
          if (logsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLogsIsMutable();
            logs_.set(index, value);
            onChanged();
          } else {
            logsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder setLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle.Builder builderForValue) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.set(index, builderForValue.build());
            onChanged();
          } else {
            logsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder addLogs(org.aion.api.server.pb.Message.t_LgEle value) {
          if (logsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLogsIsMutable();
            logs_.add(value);
            onChanged();
          } else {
            logsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder addLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle value) {
          if (logsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLogsIsMutable();
            logs_.add(index, value);
            onChanged();
          } else {
            logsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder addLogs(
            org.aion.api.server.pb.Message.t_LgEle.Builder builderForValue) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.add(builderForValue.build());
            onChanged();
          } else {
            logsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder addLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle.Builder builderForValue) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.add(index, builderForValue.build());
            onChanged();
          } else {
            logsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder addAllLogs(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_LgEle> values) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, logs_);
            onChanged();
          } else {
            logsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder clearLogs() {
          if (logsBuilder_ == null) {
            logs_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000400);
            onChanged();
          } else {
            logsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public Builder removeLogs(int index) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.remove(index);
            onChanged();
          } else {
            logsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle.Builder getLogsBuilder(
            int index) {
          return getLogsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEleOrBuilder getLogsOrBuilder(
            int index) {
          if (logsBuilder_ == null) {
            return logs_.get(index);  } else {
            return logsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
             getLogsOrBuilderList() {
          if (logsBuilder_ != null) {
            return logsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(logs_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle.Builder addLogsBuilder() {
          return getLogsFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_LgEle.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle.Builder addLogsBuilder(
            int index) {
          return getLogsFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_LgEle.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 11;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_LgEle.Builder> 
             getLogsBuilderList() {
          return getLogsFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_LgEle, org.aion.api.server.pb.Message.t_LgEle.Builder, org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
            getLogsFieldBuilder() {
          if (logsBuilder_ == null) {
            logsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_LgEle, org.aion.api.server.pb.Message.t_LgEle.Builder, org.aion.api.server.pb.Message.t_LgEleOrBuilder>(
                    logs_,
                    ((bitField0_ & 0x00000400) == 0x00000400),
                    getParentForChildren(),
                    isClean());
            logs_ = null;
          }
          return logsBuilder_;
        }
  
        private long timestamp_ ;
        /**
         * <code>uint64 timestamp = 12;</code>
         */
        public long getTimestamp() {
          return timestamp_;
        }
        /**
         * <code>uint64 timestamp = 12;</code>
         */
        public Builder setTimestamp(long value) {
          
          timestamp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 timestamp = 12;</code>
         */
        public Builder clearTimestamp() {
          
          timestamp_ = 0L;
          onChanged();
          return this;
        }
  
        private java.lang.Object error_ = "";
        /**
         * <code>string error = 13;</code>
         */
        public java.lang.String getError() {
          java.lang.Object ref = error_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            error_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string error = 13;</code>
         */
        public com.google.protobuf.ByteString
            getErrorBytes() {
          java.lang.Object ref = error_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            error_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string error = 13;</code>
         */
        public Builder setError(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          error_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string error = 13;</code>
         */
        public Builder clearError() {
          
          error_ = getDefaultInstance().getError();
          onChanged();
          return this;
        }
        /**
         * <code>string error = 13;</code>
         */
        public Builder setErrorBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          error_ = value;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString type_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes type = 14;</code>
         */
        public com.google.protobuf.ByteString getType() {
          return type_;
        }
        /**
         * <code>bytes type = 14;</code>
         */
        public Builder setType(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          type_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes type = 14;</code>
         */
        public Builder clearType() {
          
          type_ = getDefaultInstance().getType();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_TxDetail)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_TxDetail)
      private static final org.aion.api.server.pb.Message.t_TxDetail DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_TxDetail();
      }
  
      public static org.aion.api.server.pb.Message.t_TxDetail getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_TxDetail>
          PARSER = new com.google.protobuf.AbstractParser<t_TxDetail>() {
        public t_TxDetail parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_TxDetail(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_TxDetail> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_TxDetail> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_TxDetail getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_AccountDetailOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_AccountDetail)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>bytes balance = 2;</code>
       */
      com.google.protobuf.ByteString getBalance();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_AccountDetail}
     */
    public  static final class t_AccountDetail extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_AccountDetail)
        t_AccountDetailOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_AccountDetail.newBuilder() to construct.
      private t_AccountDetail(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_AccountDetail() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        balance_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_AccountDetail(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 18: {
  
                balance_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AccountDetail_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AccountDetail_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_AccountDetail.class, org.aion.api.server.pb.Message.t_AccountDetail.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int BALANCE_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString balance_;
      /**
       * <code>bytes balance = 2;</code>
       */
      public com.google.protobuf.ByteString getBalance() {
        return balance_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (!balance_.isEmpty()) {
          output.writeBytes(2, balance_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (!balance_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, balance_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_AccountDetail)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_AccountDetail other = (org.aion.api.server.pb.Message.t_AccountDetail) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && getBalance()
            .equals(other.getBalance());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + BALANCE_FIELD_NUMBER;
        hash = (53 * hash) + getBalance().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_AccountDetail parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_AccountDetail prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_AccountDetail}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_AccountDetail)
          org.aion.api.server.pb.Message.t_AccountDetailOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AccountDetail_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AccountDetail_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_AccountDetail.class, org.aion.api.server.pb.Message.t_AccountDetail.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_AccountDetail.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          balance_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_AccountDetail_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_AccountDetail getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_AccountDetail.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_AccountDetail build() {
          org.aion.api.server.pb.Message.t_AccountDetail result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_AccountDetail buildPartial() {
          org.aion.api.server.pb.Message.t_AccountDetail result = new org.aion.api.server.pb.Message.t_AccountDetail(this);
          result.address_ = address_;
          result.balance_ = balance_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_AccountDetail) {
            return mergeFrom((org.aion.api.server.pb.Message.t_AccountDetail)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_AccountDetail other) {
          if (other == org.aion.api.server.pb.Message.t_AccountDetail.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getBalance() != com.google.protobuf.ByteString.EMPTY) {
            setBalance(other.getBalance());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_AccountDetail parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_AccountDetail) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString balance_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes balance = 2;</code>
         */
        public com.google.protobuf.ByteString getBalance() {
          return balance_;
        }
        /**
         * <code>bytes balance = 2;</code>
         */
        public Builder setBalance(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          balance_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes balance = 2;</code>
         */
        public Builder clearBalance() {
          
          balance_ = getDefaultInstance().getBalance();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_AccountDetail)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_AccountDetail)
      private static final org.aion.api.server.pb.Message.t_AccountDetail DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_AccountDetail();
      }
  
      public static org.aion.api.server.pb.Message.t_AccountDetail getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_AccountDetail>
          PARSER = new com.google.protobuf.AbstractParser<t_AccountDetail>() {
        public t_AccountDetail parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_AccountDetail(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_AccountDetail> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_AccountDetail> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_AccountDetail getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_BlockOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_Block)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      long getTimestamp();
  
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      long getNrgLimit();
  
      /**
       * <code>bytes parentHash = 5;</code>
       */
      com.google.protobuf.ByteString getParentHash();
  
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      com.google.protobuf.ByteString getMinerAddress();
  
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      com.google.protobuf.ByteString getStateRoot();
  
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      com.google.protobuf.ByteString getTxTrieRoot();
  
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      com.google.protobuf.ByteString getReceiptTrieRoot();
  
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      com.google.protobuf.ByteString getLogsBloom();
  
      /**
       * <code>bytes difficulty = 11;</code>
       */
      com.google.protobuf.ByteString getDifficulty();
  
      /**
       * <code>bytes totalDifficulty = 12;</code>
       */
      com.google.protobuf.ByteString getTotalDifficulty();
  
      /**
       * <code>bytes extraData = 13;</code>
       */
      com.google.protobuf.ByteString getExtraData();
  
      /**
       * <code>bytes nonce = 14;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>bytes solution = 15;</code>
       */
      com.google.protobuf.ByteString getSolution();
  
      /**
       * <code>bytes hash = 16;</code>
       */
      com.google.protobuf.ByteString getHash();
  
      /**
       * <code>uint32 size = 17;</code>
       */
      int getSize();
  
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getTxHashList();
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      int getTxHashCount();
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      com.google.protobuf.ByteString getTxHash(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_Block}
     */
    public  static final class t_Block extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_Block)
        t_BlockOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_Block.newBuilder() to construct.
      private t_Block(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_Block() {
        blockNumber_ = 0L;
        timestamp_ = 0L;
        nrgConsumed_ = 0L;
        nrgLimit_ = 0L;
        parentHash_ = com.google.protobuf.ByteString.EMPTY;
        minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        difficulty_ = com.google.protobuf.ByteString.EMPTY;
        totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
        extraData_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        solution_ = com.google.protobuf.ByteString.EMPTY;
        hash_ = com.google.protobuf.ByteString.EMPTY;
        size_ = 0;
        txHash_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_Block(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 16: {
  
                timestamp_ = input.readUInt64();
                break;
              }
              case 24: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 32: {
  
                nrgLimit_ = input.readUInt64();
                break;
              }
              case 42: {
  
                parentHash_ = input.readBytes();
                break;
              }
              case 50: {
  
                minerAddress_ = input.readBytes();
                break;
              }
              case 58: {
  
                stateRoot_ = input.readBytes();
                break;
              }
              case 66: {
  
                txTrieRoot_ = input.readBytes();
                break;
              }
              case 74: {
  
                receiptTrieRoot_ = input.readBytes();
                break;
              }
              case 82: {
  
                logsBloom_ = input.readBytes();
                break;
              }
              case 90: {
  
                difficulty_ = input.readBytes();
                break;
              }
              case 98: {
  
                totalDifficulty_ = input.readBytes();
                break;
              }
              case 106: {
  
                extraData_ = input.readBytes();
                break;
              }
              case 114: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 122: {
  
                solution_ = input.readBytes();
                break;
              }
              case 130: {
  
                hash_ = input.readBytes();
                break;
              }
              case 136: {
  
                size_ = input.readUInt32();
                break;
              }
              case 146: {
                if (!((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
                  txHash_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00020000;
                }
                txHash_.add(input.readBytes());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
            txHash_ = java.util.Collections.unmodifiableList(txHash_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Block_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Block_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_Block.class, org.aion.api.server.pb.Message.t_Block.Builder.class);
      }
  
      private int bitField0_;
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 2;
      private long timestamp_;
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      public long getTimestamp() {
        return timestamp_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 3;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int NRGLIMIT_FIELD_NUMBER = 4;
      private long nrgLimit_;
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      public long getNrgLimit() {
        return nrgLimit_;
      }
  
      public static final int PARENTHASH_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString parentHash_;
      /**
       * <code>bytes parentHash = 5;</code>
       */
      public com.google.protobuf.ByteString getParentHash() {
        return parentHash_;
      }
  
      public static final int MINERADDRESS_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString minerAddress_;
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      public com.google.protobuf.ByteString getMinerAddress() {
        return minerAddress_;
      }
  
      public static final int STATEROOT_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString stateRoot_;
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      public com.google.protobuf.ByteString getStateRoot() {
        return stateRoot_;
      }
  
      public static final int TXTRIEROOT_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString txTrieRoot_;
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      public com.google.protobuf.ByteString getTxTrieRoot() {
        return txTrieRoot_;
      }
  
      public static final int RECEIPTTRIEROOT_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString receiptTrieRoot_;
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      public com.google.protobuf.ByteString getReceiptTrieRoot() {
        return receiptTrieRoot_;
      }
  
      public static final int LOGSBLOOM_FIELD_NUMBER = 10;
      private com.google.protobuf.ByteString logsBloom_;
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      public com.google.protobuf.ByteString getLogsBloom() {
        return logsBloom_;
      }
  
      public static final int DIFFICULTY_FIELD_NUMBER = 11;
      private com.google.protobuf.ByteString difficulty_;
      /**
       * <code>bytes difficulty = 11;</code>
       */
      public com.google.protobuf.ByteString getDifficulty() {
        return difficulty_;
      }
  
      public static final int TOTALDIFFICULTY_FIELD_NUMBER = 12;
      private com.google.protobuf.ByteString totalDifficulty_;
      /**
       * <code>bytes totalDifficulty = 12;</code>
       */
      public com.google.protobuf.ByteString getTotalDifficulty() {
        return totalDifficulty_;
      }
  
      public static final int EXTRADATA_FIELD_NUMBER = 13;
      private com.google.protobuf.ByteString extraData_;
      /**
       * <code>bytes extraData = 13;</code>
       */
      public com.google.protobuf.ByteString getExtraData() {
        return extraData_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 14;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 14;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int SOLUTION_FIELD_NUMBER = 15;
      private com.google.protobuf.ByteString solution_;
      /**
       * <code>bytes solution = 15;</code>
       */
      public com.google.protobuf.ByteString getSolution() {
        return solution_;
      }
  
      public static final int HASH_FIELD_NUMBER = 16;
      private com.google.protobuf.ByteString hash_;
      /**
       * <code>bytes hash = 16;</code>
       */
      public com.google.protobuf.ByteString getHash() {
        return hash_;
      }
  
      public static final int SIZE_FIELD_NUMBER = 17;
      private int size_;
      /**
       * <code>uint32 size = 17;</code>
       */
      public int getSize() {
        return size_;
      }
  
      public static final int TXHASH_FIELD_NUMBER = 18;
      private java.util.List<com.google.protobuf.ByteString> txHash_;
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getTxHashList() {
        return txHash_;
      }
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      public int getTxHashCount() {
        return txHash_.size();
      }
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      public com.google.protobuf.ByteString getTxHash(int index) {
        return txHash_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          output.writeUInt64(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          output.writeUInt64(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          output.writeBytes(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          output.writeBytes(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          output.writeBytes(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          output.writeBytes(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          output.writeBytes(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          output.writeBytes(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          output.writeBytes(11, difficulty_);
        }
        if (!totalDifficulty_.isEmpty()) {
          output.writeBytes(12, totalDifficulty_);
        }
        if (!extraData_.isEmpty()) {
          output.writeBytes(13, extraData_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(14, nonce_);
        }
        if (!solution_.isEmpty()) {
          output.writeBytes(15, solution_);
        }
        if (!hash_.isEmpty()) {
          output.writeBytes(16, hash_);
        }
        if (size_ != 0) {
          output.writeUInt32(17, size_);
        }
        for (int i = 0; i < txHash_.size(); i++) {
          output.writeBytes(18, txHash_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(11, difficulty_);
        }
        if (!totalDifficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(12, totalDifficulty_);
        }
        if (!extraData_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(13, extraData_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(14, nonce_);
        }
        if (!solution_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(15, solution_);
        }
        if (!hash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(16, hash_);
        }
        if (size_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(17, size_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < txHash_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(txHash_.get(i));
          }
          size += dataSize;
          size += 2 * getTxHashList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_Block)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_Block other = (org.aion.api.server.pb.Message.t_Block) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getTimestamp()
            == other.getTimestamp());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getNrgLimit()
            == other.getNrgLimit());
        result = result && getParentHash()
            .equals(other.getParentHash());
        result = result && getMinerAddress()
            .equals(other.getMinerAddress());
        result = result && getStateRoot()
            .equals(other.getStateRoot());
        result = result && getTxTrieRoot()
            .equals(other.getTxTrieRoot());
        result = result && getReceiptTrieRoot()
            .equals(other.getReceiptTrieRoot());
        result = result && getLogsBloom()
            .equals(other.getLogsBloom());
        result = result && getDifficulty()
            .equals(other.getDifficulty());
        result = result && getTotalDifficulty()
            .equals(other.getTotalDifficulty());
        result = result && getExtraData()
            .equals(other.getExtraData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && getSolution()
            .equals(other.getSolution());
        result = result && getHash()
            .equals(other.getHash());
        result = result && (getSize()
            == other.getSize());
        result = result && getTxHashList()
            .equals(other.getTxHashList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTimestamp());
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + NRGLIMIT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgLimit());
        hash = (37 * hash) + PARENTHASH_FIELD_NUMBER;
        hash = (53 * hash) + getParentHash().hashCode();
        hash = (37 * hash) + MINERADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getMinerAddress().hashCode();
        hash = (37 * hash) + STATEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getStateRoot().hashCode();
        hash = (37 * hash) + TXTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getTxTrieRoot().hashCode();
        hash = (37 * hash) + RECEIPTTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getReceiptTrieRoot().hashCode();
        hash = (37 * hash) + LOGSBLOOM_FIELD_NUMBER;
        hash = (53 * hash) + getLogsBloom().hashCode();
        hash = (37 * hash) + DIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getDifficulty().hashCode();
        hash = (37 * hash) + TOTALDIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getTotalDifficulty().hashCode();
        hash = (37 * hash) + EXTRADATA_FIELD_NUMBER;
        hash = (53 * hash) + getExtraData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + SOLUTION_FIELD_NUMBER;
        hash = (53 * hash) + getSolution().hashCode();
        hash = (37 * hash) + HASH_FIELD_NUMBER;
        hash = (53 * hash) + getHash().hashCode();
        hash = (37 * hash) + SIZE_FIELD_NUMBER;
        hash = (53 * hash) + getSize();
        if (getTxHashCount() > 0) {
          hash = (37 * hash) + TXHASH_FIELD_NUMBER;
          hash = (53 * hash) + getTxHashList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Block parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Block parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Block parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_Block prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_Block}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_Block)
          org.aion.api.server.pb.Message.t_BlockOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Block_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Block_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_Block.class, org.aion.api.server.pb.Message.t_Block.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_Block.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          timestamp_ = 0L;
  
          nrgConsumed_ = 0L;
  
          nrgLimit_ = 0L;
  
          parentHash_ = com.google.protobuf.ByteString.EMPTY;
  
          minerAddress_ = com.google.protobuf.ByteString.EMPTY;
  
          stateRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          logsBloom_ = com.google.protobuf.ByteString.EMPTY;
  
          difficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          extraData_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          solution_ = com.google.protobuf.ByteString.EMPTY;
  
          hash_ = com.google.protobuf.ByteString.EMPTY;
  
          size_ = 0;
  
          txHash_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00020000);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Block_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_Block getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_Block.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_Block build() {
          org.aion.api.server.pb.Message.t_Block result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_Block buildPartial() {
          org.aion.api.server.pb.Message.t_Block result = new org.aion.api.server.pb.Message.t_Block(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.blockNumber_ = blockNumber_;
          result.timestamp_ = timestamp_;
          result.nrgConsumed_ = nrgConsumed_;
          result.nrgLimit_ = nrgLimit_;
          result.parentHash_ = parentHash_;
          result.minerAddress_ = minerAddress_;
          result.stateRoot_ = stateRoot_;
          result.txTrieRoot_ = txTrieRoot_;
          result.receiptTrieRoot_ = receiptTrieRoot_;
          result.logsBloom_ = logsBloom_;
          result.difficulty_ = difficulty_;
          result.totalDifficulty_ = totalDifficulty_;
          result.extraData_ = extraData_;
          result.nonce_ = nonce_;
          result.solution_ = solution_;
          result.hash_ = hash_;
          result.size_ = size_;
          if (((bitField0_ & 0x00020000) == 0x00020000)) {
            txHash_ = java.util.Collections.unmodifiableList(txHash_);
            bitField0_ = (bitField0_ & ~0x00020000);
          }
          result.txHash_ = txHash_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_Block) {
            return mergeFrom((org.aion.api.server.pb.Message.t_Block)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_Block other) {
          if (other == org.aion.api.server.pb.Message.t_Block.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getTimestamp() != 0L) {
            setTimestamp(other.getTimestamp());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getNrgLimit() != 0L) {
            setNrgLimit(other.getNrgLimit());
          }
          if (other.getParentHash() != com.google.protobuf.ByteString.EMPTY) {
            setParentHash(other.getParentHash());
          }
          if (other.getMinerAddress() != com.google.protobuf.ByteString.EMPTY) {
            setMinerAddress(other.getMinerAddress());
          }
          if (other.getStateRoot() != com.google.protobuf.ByteString.EMPTY) {
            setStateRoot(other.getStateRoot());
          }
          if (other.getTxTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setTxTrieRoot(other.getTxTrieRoot());
          }
          if (other.getReceiptTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setReceiptTrieRoot(other.getReceiptTrieRoot());
          }
          if (other.getLogsBloom() != com.google.protobuf.ByteString.EMPTY) {
            setLogsBloom(other.getLogsBloom());
          }
          if (other.getDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setDifficulty(other.getDifficulty());
          }
          if (other.getTotalDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setTotalDifficulty(other.getTotalDifficulty());
          }
          if (other.getExtraData() != com.google.protobuf.ByteString.EMPTY) {
            setExtraData(other.getExtraData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getSolution() != com.google.protobuf.ByteString.EMPTY) {
            setSolution(other.getSolution());
          }
          if (other.getHash() != com.google.protobuf.ByteString.EMPTY) {
            setHash(other.getHash());
          }
          if (other.getSize() != 0) {
            setSize(other.getSize());
          }
          if (!other.txHash_.isEmpty()) {
            if (txHash_.isEmpty()) {
              txHash_ = other.txHash_;
              bitField0_ = (bitField0_ & ~0x00020000);
            } else {
              ensureTxHashIsMutable();
              txHash_.addAll(other.txHash_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_Block parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_Block) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private long timestamp_ ;
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public long getTimestamp() {
          return timestamp_;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder setTimestamp(long value) {
          
          timestamp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder clearTimestamp() {
          
          timestamp_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgLimit_ ;
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public long getNrgLimit() {
          return nrgLimit_;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder setNrgLimit(long value) {
          
          nrgLimit_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder clearNrgLimit() {
          
          nrgLimit_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString parentHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public com.google.protobuf.ByteString getParentHash() {
          return parentHash_;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder setParentHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          parentHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder clearParentHash() {
          
          parentHash_ = getDefaultInstance().getParentHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public com.google.protobuf.ByteString getMinerAddress() {
          return minerAddress_;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder setMinerAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          minerAddress_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder clearMinerAddress() {
          
          minerAddress_ = getDefaultInstance().getMinerAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public com.google.protobuf.ByteString getStateRoot() {
          return stateRoot_;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder setStateRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          stateRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder clearStateRoot() {
          
          stateRoot_ = getDefaultInstance().getStateRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public com.google.protobuf.ByteString getTxTrieRoot() {
          return txTrieRoot_;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder setTxTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder clearTxTrieRoot() {
          
          txTrieRoot_ = getDefaultInstance().getTxTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public com.google.protobuf.ByteString getReceiptTrieRoot() {
          return receiptTrieRoot_;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder setReceiptTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          receiptTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder clearReceiptTrieRoot() {
          
          receiptTrieRoot_ = getDefaultInstance().getReceiptTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public com.google.protobuf.ByteString getLogsBloom() {
          return logsBloom_;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder setLogsBloom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          logsBloom_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder clearLogsBloom() {
          
          logsBloom_ = getDefaultInstance().getLogsBloom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString difficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public com.google.protobuf.ByteString getDifficulty() {
          return difficulty_;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder setDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          difficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder clearDifficulty() {
          
          difficulty_ = getDefaultInstance().getDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public com.google.protobuf.ByteString getTotalDifficulty() {
          return totalDifficulty_;
        }
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public Builder setTotalDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          totalDifficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public Builder clearTotalDifficulty() {
          
          totalDifficulty_ = getDefaultInstance().getTotalDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString extraData_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes extraData = 13;</code>
         */
        public com.google.protobuf.ByteString getExtraData() {
          return extraData_;
        }
        /**
         * <code>bytes extraData = 13;</code>
         */
        public Builder setExtraData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          extraData_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes extraData = 13;</code>
         */
        public Builder clearExtraData() {
          
          extraData_ = getDefaultInstance().getExtraData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 14;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 14;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 14;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString solution_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes solution = 15;</code>
         */
        public com.google.protobuf.ByteString getSolution() {
          return solution_;
        }
        /**
         * <code>bytes solution = 15;</code>
         */
        public Builder setSolution(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          solution_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes solution = 15;</code>
         */
        public Builder clearSolution() {
          
          solution_ = getDefaultInstance().getSolution();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString hash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes hash = 16;</code>
         */
        public com.google.protobuf.ByteString getHash() {
          return hash_;
        }
        /**
         * <code>bytes hash = 16;</code>
         */
        public Builder setHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          hash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes hash = 16;</code>
         */
        public Builder clearHash() {
          
          hash_ = getDefaultInstance().getHash();
          onChanged();
          return this;
        }
  
        private int size_ ;
        /**
         * <code>uint32 size = 17;</code>
         */
        public int getSize() {
          return size_;
        }
        /**
         * <code>uint32 size = 17;</code>
         */
        public Builder setSize(int value) {
          
          size_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 size = 17;</code>
         */
        public Builder clearSize() {
          
          size_ = 0;
          onChanged();
          return this;
        }
  
        private java.util.List<com.google.protobuf.ByteString> txHash_ = java.util.Collections.emptyList();
        private void ensureTxHashIsMutable() {
          if (!((bitField0_ & 0x00020000) == 0x00020000)) {
            txHash_ = new java.util.ArrayList<com.google.protobuf.ByteString>(txHash_);
            bitField0_ |= 0x00020000;
           }
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getTxHashList() {
          return java.util.Collections.unmodifiableList(txHash_);
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public int getTxHashCount() {
          return txHash_.size();
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public com.google.protobuf.ByteString getTxHash(int index) {
          return txHash_.get(index);
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder setTxHash(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTxHashIsMutable();
          txHash_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder addTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTxHashIsMutable();
          txHash_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder addAllTxHash(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureTxHashIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, txHash_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder clearTxHash() {
          txHash_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00020000);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_Block)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_Block)
      private static final org.aion.api.server.pb.Message.t_Block DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_Block();
      }
  
      public static org.aion.api.server.pb.Message.t_Block getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_Block>
          PARSER = new com.google.protobuf.AbstractParser<t_Block>() {
        public t_Block parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_Block(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_Block> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_Block> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_Block getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_BlockSqlOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_BlockSql)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>string blockHash = 2;</code>
       */
      java.lang.String getBlockHash();
      /**
       * <code>string blockHash = 2;</code>
       */
      com.google.protobuf.ByteString
          getBlockHashBytes();
  
      /**
       * <code>string parentHash = 3;</code>
       */
      java.lang.String getParentHash();
      /**
       * <code>string parentHash = 3;</code>
       */
      com.google.protobuf.ByteString
          getParentHashBytes();
  
      /**
       * <code>string block = 4;</code>
       */
      java.lang.String getBlock();
      /**
       * <code>string block = 4;</code>
       */
      com.google.protobuf.ByteString
          getBlockBytes();
  
      /**
       * <code>repeated string tx = 5;</code>
       */
      java.util.List<java.lang.String>
          getTxList();
      /**
       * <code>repeated string tx = 5;</code>
       */
      int getTxCount();
      /**
       * <code>repeated string tx = 5;</code>
       */
      java.lang.String getTx(int index);
      /**
       * <code>repeated string tx = 5;</code>
       */
      com.google.protobuf.ByteString
          getTxBytes(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_BlockSql}
     */
    public  static final class t_BlockSql extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_BlockSql)
        t_BlockSqlOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_BlockSql.newBuilder() to construct.
      private t_BlockSql(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_BlockSql() {
        blockNumber_ = 0L;
        blockHash_ = "";
        parentHash_ = "";
        block_ = "";
        tx_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_BlockSql(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                blockHash_ = s;
                break;
              }
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
  
                parentHash_ = s;
                break;
              }
              case 34: {
                java.lang.String s = input.readStringRequireUtf8();
  
                block_ = s;
                break;
              }
              case 42: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
                  tx_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000010;
                }
                tx_.add(s);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000010) == 0x00000010)) {
            tx_ = tx_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockSql_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockSql_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_BlockSql.class, org.aion.api.server.pb.Message.t_BlockSql.Builder.class);
      }
  
      private int bitField0_;
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 2;
      private volatile java.lang.Object blockHash_;
      /**
       * <code>string blockHash = 2;</code>
       */
      public java.lang.String getBlockHash() {
        java.lang.Object ref = blockHash_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          blockHash_ = s;
          return s;
        }
      }
      /**
       * <code>string blockHash = 2;</code>
       */
      public com.google.protobuf.ByteString
          getBlockHashBytes() {
        java.lang.Object ref = blockHash_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          blockHash_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PARENTHASH_FIELD_NUMBER = 3;
      private volatile java.lang.Object parentHash_;
      /**
       * <code>string parentHash = 3;</code>
       */
      public java.lang.String getParentHash() {
        java.lang.Object ref = parentHash_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          parentHash_ = s;
          return s;
        }
      }
      /**
       * <code>string parentHash = 3;</code>
       */
      public com.google.protobuf.ByteString
          getParentHashBytes() {
        java.lang.Object ref = parentHash_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          parentHash_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int BLOCK_FIELD_NUMBER = 4;
      private volatile java.lang.Object block_;
      /**
       * <code>string block = 4;</code>
       */
      public java.lang.String getBlock() {
        java.lang.Object ref = block_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          block_ = s;
          return s;
        }
      }
      /**
       * <code>string block = 4;</code>
       */
      public com.google.protobuf.ByteString
          getBlockBytes() {
        java.lang.Object ref = block_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          block_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TX_FIELD_NUMBER = 5;
      private com.google.protobuf.LazyStringList tx_;
      /**
       * <code>repeated string tx = 5;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getTxList() {
        return tx_;
      }
      /**
       * <code>repeated string tx = 5;</code>
       */
      public int getTxCount() {
        return tx_.size();
      }
      /**
       * <code>repeated string tx = 5;</code>
       */
      public java.lang.String getTx(int index) {
        return tx_.get(index);
      }
      /**
       * <code>repeated string tx = 5;</code>
       */
      public com.google.protobuf.ByteString
          getTxBytes(int index) {
        return tx_.getByteString(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (!getBlockHashBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, blockHash_);
        }
        if (!getParentHashBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 3, parentHash_);
        }
        if (!getBlockBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 4, block_);
        }
        for (int i = 0; i < tx_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 5, tx_.getRaw(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (!getBlockHashBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, blockHash_);
        }
        if (!getParentHashBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, parentHash_);
        }
        if (!getBlockBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, block_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < tx_.size(); i++) {
            dataSize += computeStringSizeNoTag(tx_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getTxList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_BlockSql)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_BlockSql other = (org.aion.api.server.pb.Message.t_BlockSql) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && getParentHash()
            .equals(other.getParentHash());
        result = result && getBlock()
            .equals(other.getBlock());
        result = result && getTxList()
            .equals(other.getTxList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (37 * hash) + PARENTHASH_FIELD_NUMBER;
        hash = (53 * hash) + getParentHash().hashCode();
        hash = (37 * hash) + BLOCK_FIELD_NUMBER;
        hash = (53 * hash) + getBlock().hashCode();
        if (getTxCount() > 0) {
          hash = (37 * hash) + TX_FIELD_NUMBER;
          hash = (53 * hash) + getTxList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_BlockSql parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_BlockSql prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_BlockSql}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_BlockSql)
          org.aion.api.server.pb.Message.t_BlockSqlOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockSql_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockSql_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_BlockSql.class, org.aion.api.server.pb.Message.t_BlockSql.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_BlockSql.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          blockHash_ = "";
  
          parentHash_ = "";
  
          block_ = "";
  
          tx_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000010);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_BlockSql_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_BlockSql getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_BlockSql.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_BlockSql build() {
          org.aion.api.server.pb.Message.t_BlockSql result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_BlockSql buildPartial() {
          org.aion.api.server.pb.Message.t_BlockSql result = new org.aion.api.server.pb.Message.t_BlockSql(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.blockNumber_ = blockNumber_;
          result.blockHash_ = blockHash_;
          result.parentHash_ = parentHash_;
          result.block_ = block_;
          if (((bitField0_ & 0x00000010) == 0x00000010)) {
            tx_ = tx_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000010);
          }
          result.tx_ = tx_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_BlockSql) {
            return mergeFrom((org.aion.api.server.pb.Message.t_BlockSql)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_BlockSql other) {
          if (other == org.aion.api.server.pb.Message.t_BlockSql.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (!other.getBlockHash().isEmpty()) {
            blockHash_ = other.blockHash_;
            onChanged();
          }
          if (!other.getParentHash().isEmpty()) {
            parentHash_ = other.parentHash_;
            onChanged();
          }
          if (!other.getBlock().isEmpty()) {
            block_ = other.block_;
            onChanged();
          }
          if (!other.tx_.isEmpty()) {
            if (tx_.isEmpty()) {
              tx_ = other.tx_;
              bitField0_ = (bitField0_ & ~0x00000010);
            } else {
              ensureTxIsMutable();
              tx_.addAll(other.tx_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_BlockSql parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_BlockSql) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private java.lang.Object blockHash_ = "";
        /**
         * <code>string blockHash = 2;</code>
         */
        public java.lang.String getBlockHash() {
          java.lang.Object ref = blockHash_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            blockHash_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string blockHash = 2;</code>
         */
        public com.google.protobuf.ByteString
            getBlockHashBytes() {
          java.lang.Object ref = blockHash_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            blockHash_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string blockHash = 2;</code>
         */
        public Builder setBlockHash(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string blockHash = 2;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
        /**
         * <code>string blockHash = 2;</code>
         */
        public Builder setBlockHashBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          blockHash_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object parentHash_ = "";
        /**
         * <code>string parentHash = 3;</code>
         */
        public java.lang.String getParentHash() {
          java.lang.Object ref = parentHash_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            parentHash_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string parentHash = 3;</code>
         */
        public com.google.protobuf.ByteString
            getParentHashBytes() {
          java.lang.Object ref = parentHash_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            parentHash_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string parentHash = 3;</code>
         */
        public Builder setParentHash(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          parentHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string parentHash = 3;</code>
         */
        public Builder clearParentHash() {
          
          parentHash_ = getDefaultInstance().getParentHash();
          onChanged();
          return this;
        }
        /**
         * <code>string parentHash = 3;</code>
         */
        public Builder setParentHashBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          parentHash_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object block_ = "";
        /**
         * <code>string block = 4;</code>
         */
        public java.lang.String getBlock() {
          java.lang.Object ref = block_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            block_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string block = 4;</code>
         */
        public com.google.protobuf.ByteString
            getBlockBytes() {
          java.lang.Object ref = block_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            block_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string block = 4;</code>
         */
        public Builder setBlock(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          block_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string block = 4;</code>
         */
        public Builder clearBlock() {
          
          block_ = getDefaultInstance().getBlock();
          onChanged();
          return this;
        }
        /**
         * <code>string block = 4;</code>
         */
        public Builder setBlockBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          block_ = value;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.LazyStringList tx_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureTxIsMutable() {
          if (!((bitField0_ & 0x00000010) == 0x00000010)) {
            tx_ = new com.google.protobuf.LazyStringArrayList(tx_);
            bitField0_ |= 0x00000010;
           }
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getTxList() {
          return tx_.getUnmodifiableView();
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public int getTxCount() {
          return tx_.size();
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public java.lang.String getTx(int index) {
          return tx_.get(index);
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public com.google.protobuf.ByteString
            getTxBytes(int index) {
          return tx_.getByteString(index);
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public Builder setTx(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTxIsMutable();
          tx_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public Builder addTx(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTxIsMutable();
          tx_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public Builder addAllTx(
            java.lang.Iterable<java.lang.String> values) {
          ensureTxIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, tx_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public Builder clearTx() {
          tx_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000010);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string tx = 5;</code>
         */
        public Builder addTxBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureTxIsMutable();
          tx_.add(value);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_BlockSql)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_BlockSql)
      private static final org.aion.api.server.pb.Message.t_BlockSql DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_BlockSql();
      }
  
      public static org.aion.api.server.pb.Message.t_BlockSql getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_BlockSql>
          PARSER = new com.google.protobuf.AbstractParser<t_BlockSql>() {
        public t_BlockSql parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_BlockSql(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_BlockSql> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_BlockSql> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_BlockSql getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_errormsgOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_errormsg)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string errormsg = 1;</code>
       */
      java.lang.String getErrormsg();
      /**
       * <code>string errormsg = 1;</code>
       */
      com.google.protobuf.ByteString
          getErrormsgBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_errormsg}
     */
    public  static final class rsp_errormsg extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_errormsg)
        rsp_errormsgOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_errormsg.newBuilder() to construct.
      private rsp_errormsg(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_errormsg() {
        errormsg_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_errormsg(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                errormsg_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_errormsg_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_errormsg_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_errormsg.class, org.aion.api.server.pb.Message.rsp_errormsg.Builder.class);
      }
  
      public static final int ERRORMSG_FIELD_NUMBER = 1;
      private volatile java.lang.Object errormsg_;
      /**
       * <code>string errormsg = 1;</code>
       */
      public java.lang.String getErrormsg() {
        java.lang.Object ref = errormsg_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          errormsg_ = s;
          return s;
        }
      }
      /**
       * <code>string errormsg = 1;</code>
       */
      public com.google.protobuf.ByteString
          getErrormsgBytes() {
        java.lang.Object ref = errormsg_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          errormsg_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getErrormsgBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, errormsg_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getErrormsgBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, errormsg_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_errormsg)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_errormsg other = (org.aion.api.server.pb.Message.rsp_errormsg) obj;
  
        boolean result = true;
        result = result && getErrormsg()
            .equals(other.getErrormsg());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ERRORMSG_FIELD_NUMBER;
        hash = (53 * hash) + getErrormsg().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_errormsg parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_errormsg prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_errormsg}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_errormsg)
          org.aion.api.server.pb.Message.rsp_errormsgOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_errormsg_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_errormsg_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_errormsg.class, org.aion.api.server.pb.Message.rsp_errormsg.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_errormsg.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          errormsg_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_errormsg_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_errormsg getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_errormsg.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_errormsg build() {
          org.aion.api.server.pb.Message.rsp_errormsg result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_errormsg buildPartial() {
          org.aion.api.server.pb.Message.rsp_errormsg result = new org.aion.api.server.pb.Message.rsp_errormsg(this);
          result.errormsg_ = errormsg_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_errormsg) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_errormsg)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_errormsg other) {
          if (other == org.aion.api.server.pb.Message.rsp_errormsg.getDefaultInstance()) return this;
          if (!other.getErrormsg().isEmpty()) {
            errormsg_ = other.errormsg_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_errormsg parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_errormsg) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object errormsg_ = "";
        /**
         * <code>string errormsg = 1;</code>
         */
        public java.lang.String getErrormsg() {
          java.lang.Object ref = errormsg_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            errormsg_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string errormsg = 1;</code>
         */
        public com.google.protobuf.ByteString
            getErrormsgBytes() {
          java.lang.Object ref = errormsg_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            errormsg_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string errormsg = 1;</code>
         */
        public Builder setErrormsg(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          errormsg_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string errormsg = 1;</code>
         */
        public Builder clearErrormsg() {
          
          errormsg_ = getDefaultInstance().getErrormsg();
          onChanged();
          return this;
        }
        /**
         * <code>string errormsg = 1;</code>
         */
        public Builder setErrormsgBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          errormsg_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_errormsg)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_errormsg)
      private static final org.aion.api.server.pb.Message.rsp_errormsg DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_errormsg();
      }
  
      public static org.aion.api.server.pb.Message.rsp_errormsg getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_errormsg>
          PARSER = new com.google.protobuf.AbstractParser<rsp_errormsg>() {
        public rsp_errormsg parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_errormsg(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_errormsg> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_errormsg> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_errormsg getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_protocolVersionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_protocolVersion)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string kernel = 1;</code>
       */
      java.lang.String getKernel();
      /**
       * <code>string kernel = 1;</code>
       */
      com.google.protobuf.ByteString
          getKernelBytes();
  
      /**
       * <code>string net = 2;</code>
       */
      java.lang.String getNet();
      /**
       * <code>string net = 2;</code>
       */
      com.google.protobuf.ByteString
          getNetBytes();
  
      /**
       * <code>string api = 3;</code>
       */
      java.lang.String getApi();
      /**
       * <code>string api = 3;</code>
       */
      com.google.protobuf.ByteString
          getApiBytes();
  
      /**
       * <code>string vm = 4;</code>
       */
      java.lang.String getVm();
      /**
       * <code>string vm = 4;</code>
       */
      com.google.protobuf.ByteString
          getVmBytes();
  
      /**
       * <code>string db = 5;</code>
       */
      java.lang.String getDb();
      /**
       * <code>string db = 5;</code>
       */
      com.google.protobuf.ByteString
          getDbBytes();
  
      /**
       * <code>string miner = 6;</code>
       */
      java.lang.String getMiner();
      /**
       * <code>string miner = 6;</code>
       */
      com.google.protobuf.ByteString
          getMinerBytes();
  
      /**
       * <code>string txpool = 7;</code>
       */
      java.lang.String getTxpool();
      /**
       * <code>string txpool = 7;</code>
       */
      com.google.protobuf.ByteString
          getTxpoolBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_protocolVersion}
     */
    public  static final class rsp_protocolVersion extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_protocolVersion)
        rsp_protocolVersionOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_protocolVersion.newBuilder() to construct.
      private rsp_protocolVersion(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_protocolVersion() {
        kernel_ = "";
        net_ = "";
        api_ = "";
        vm_ = "";
        db_ = "";
        miner_ = "";
        txpool_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_protocolVersion(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                kernel_ = s;
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                net_ = s;
                break;
              }
              case 26: {
                java.lang.String s = input.readStringRequireUtf8();
  
                api_ = s;
                break;
              }
              case 34: {
                java.lang.String s = input.readStringRequireUtf8();
  
                vm_ = s;
                break;
              }
              case 42: {
                java.lang.String s = input.readStringRequireUtf8();
  
                db_ = s;
                break;
              }
              case 50: {
                java.lang.String s = input.readStringRequireUtf8();
  
                miner_ = s;
                break;
              }
              case 58: {
                java.lang.String s = input.readStringRequireUtf8();
  
                txpool_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_protocolVersion_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_protocolVersion_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_protocolVersion.class, org.aion.api.server.pb.Message.rsp_protocolVersion.Builder.class);
      }
  
      public static final int KERNEL_FIELD_NUMBER = 1;
      private volatile java.lang.Object kernel_;
      /**
       * <code>string kernel = 1;</code>
       */
      public java.lang.String getKernel() {
        java.lang.Object ref = kernel_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          kernel_ = s;
          return s;
        }
      }
      /**
       * <code>string kernel = 1;</code>
       */
      public com.google.protobuf.ByteString
          getKernelBytes() {
        java.lang.Object ref = kernel_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          kernel_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int NET_FIELD_NUMBER = 2;
      private volatile java.lang.Object net_;
      /**
       * <code>string net = 2;</code>
       */
      public java.lang.String getNet() {
        java.lang.Object ref = net_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          net_ = s;
          return s;
        }
      }
      /**
       * <code>string net = 2;</code>
       */
      public com.google.protobuf.ByteString
          getNetBytes() {
        java.lang.Object ref = net_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          net_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int API_FIELD_NUMBER = 3;
      private volatile java.lang.Object api_;
      /**
       * <code>string api = 3;</code>
       */
      public java.lang.String getApi() {
        java.lang.Object ref = api_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          api_ = s;
          return s;
        }
      }
      /**
       * <code>string api = 3;</code>
       */
      public com.google.protobuf.ByteString
          getApiBytes() {
        java.lang.Object ref = api_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          api_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int VM_FIELD_NUMBER = 4;
      private volatile java.lang.Object vm_;
      /**
       * <code>string vm = 4;</code>
       */
      public java.lang.String getVm() {
        java.lang.Object ref = vm_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          vm_ = s;
          return s;
        }
      }
      /**
       * <code>string vm = 4;</code>
       */
      public com.google.protobuf.ByteString
          getVmBytes() {
        java.lang.Object ref = vm_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          vm_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int DB_FIELD_NUMBER = 5;
      private volatile java.lang.Object db_;
      /**
       * <code>string db = 5;</code>
       */
      public java.lang.String getDb() {
        java.lang.Object ref = db_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          db_ = s;
          return s;
        }
      }
      /**
       * <code>string db = 5;</code>
       */
      public com.google.protobuf.ByteString
          getDbBytes() {
        java.lang.Object ref = db_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          db_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int MINER_FIELD_NUMBER = 6;
      private volatile java.lang.Object miner_;
      /**
       * <code>string miner = 6;</code>
       */
      public java.lang.String getMiner() {
        java.lang.Object ref = miner_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          miner_ = s;
          return s;
        }
      }
      /**
       * <code>string miner = 6;</code>
       */
      public com.google.protobuf.ByteString
          getMinerBytes() {
        java.lang.Object ref = miner_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          miner_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int TXPOOL_FIELD_NUMBER = 7;
      private volatile java.lang.Object txpool_;
      /**
       * <code>string txpool = 7;</code>
       */
      public java.lang.String getTxpool() {
        java.lang.Object ref = txpool_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          txpool_ = s;
          return s;
        }
      }
      /**
       * <code>string txpool = 7;</code>
       */
      public com.google.protobuf.ByteString
          getTxpoolBytes() {
        java.lang.Object ref = txpool_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          txpool_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getKernelBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, kernel_);
        }
        if (!getNetBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, net_);
        }
        if (!getApiBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 3, api_);
        }
        if (!getVmBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 4, vm_);
        }
        if (!getDbBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 5, db_);
        }
        if (!getMinerBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 6, miner_);
        }
        if (!getTxpoolBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 7, txpool_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getKernelBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, kernel_);
        }
        if (!getNetBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, net_);
        }
        if (!getApiBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, api_);
        }
        if (!getVmBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(4, vm_);
        }
        if (!getDbBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, db_);
        }
        if (!getMinerBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(6, miner_);
        }
        if (!getTxpoolBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, txpool_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_protocolVersion)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_protocolVersion other = (org.aion.api.server.pb.Message.rsp_protocolVersion) obj;
  
        boolean result = true;
        result = result && getKernel()
            .equals(other.getKernel());
        result = result && getNet()
            .equals(other.getNet());
        result = result && getApi()
            .equals(other.getApi());
        result = result && getVm()
            .equals(other.getVm());
        result = result && getDb()
            .equals(other.getDb());
        result = result && getMiner()
            .equals(other.getMiner());
        result = result && getTxpool()
            .equals(other.getTxpool());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + KERNEL_FIELD_NUMBER;
        hash = (53 * hash) + getKernel().hashCode();
        hash = (37 * hash) + NET_FIELD_NUMBER;
        hash = (53 * hash) + getNet().hashCode();
        hash = (37 * hash) + API_FIELD_NUMBER;
        hash = (53 * hash) + getApi().hashCode();
        hash = (37 * hash) + VM_FIELD_NUMBER;
        hash = (53 * hash) + getVm().hashCode();
        hash = (37 * hash) + DB_FIELD_NUMBER;
        hash = (53 * hash) + getDb().hashCode();
        hash = (37 * hash) + MINER_FIELD_NUMBER;
        hash = (53 * hash) + getMiner().hashCode();
        hash = (37 * hash) + TXPOOL_FIELD_NUMBER;
        hash = (53 * hash) + getTxpool().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_protocolVersion parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_protocolVersion prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_protocolVersion}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_protocolVersion)
          org.aion.api.server.pb.Message.rsp_protocolVersionOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_protocolVersion_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_protocolVersion_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_protocolVersion.class, org.aion.api.server.pb.Message.rsp_protocolVersion.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_protocolVersion.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          kernel_ = "";
  
          net_ = "";
  
          api_ = "";
  
          vm_ = "";
  
          db_ = "";
  
          miner_ = "";
  
          txpool_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_protocolVersion_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_protocolVersion getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_protocolVersion.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_protocolVersion build() {
          org.aion.api.server.pb.Message.rsp_protocolVersion result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_protocolVersion buildPartial() {
          org.aion.api.server.pb.Message.rsp_protocolVersion result = new org.aion.api.server.pb.Message.rsp_protocolVersion(this);
          result.kernel_ = kernel_;
          result.net_ = net_;
          result.api_ = api_;
          result.vm_ = vm_;
          result.db_ = db_;
          result.miner_ = miner_;
          result.txpool_ = txpool_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_protocolVersion) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_protocolVersion)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_protocolVersion other) {
          if (other == org.aion.api.server.pb.Message.rsp_protocolVersion.getDefaultInstance()) return this;
          if (!other.getKernel().isEmpty()) {
            kernel_ = other.kernel_;
            onChanged();
          }
          if (!other.getNet().isEmpty()) {
            net_ = other.net_;
            onChanged();
          }
          if (!other.getApi().isEmpty()) {
            api_ = other.api_;
            onChanged();
          }
          if (!other.getVm().isEmpty()) {
            vm_ = other.vm_;
            onChanged();
          }
          if (!other.getDb().isEmpty()) {
            db_ = other.db_;
            onChanged();
          }
          if (!other.getMiner().isEmpty()) {
            miner_ = other.miner_;
            onChanged();
          }
          if (!other.getTxpool().isEmpty()) {
            txpool_ = other.txpool_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_protocolVersion parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_protocolVersion) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object kernel_ = "";
        /**
         * <code>string kernel = 1;</code>
         */
        public java.lang.String getKernel() {
          java.lang.Object ref = kernel_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            kernel_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string kernel = 1;</code>
         */
        public com.google.protobuf.ByteString
            getKernelBytes() {
          java.lang.Object ref = kernel_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            kernel_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string kernel = 1;</code>
         */
        public Builder setKernel(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          kernel_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string kernel = 1;</code>
         */
        public Builder clearKernel() {
          
          kernel_ = getDefaultInstance().getKernel();
          onChanged();
          return this;
        }
        /**
         * <code>string kernel = 1;</code>
         */
        public Builder setKernelBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          kernel_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object net_ = "";
        /**
         * <code>string net = 2;</code>
         */
        public java.lang.String getNet() {
          java.lang.Object ref = net_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            net_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string net = 2;</code>
         */
        public com.google.protobuf.ByteString
            getNetBytes() {
          java.lang.Object ref = net_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            net_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string net = 2;</code>
         */
        public Builder setNet(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          net_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string net = 2;</code>
         */
        public Builder clearNet() {
          
          net_ = getDefaultInstance().getNet();
          onChanged();
          return this;
        }
        /**
         * <code>string net = 2;</code>
         */
        public Builder setNetBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          net_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object api_ = "";
        /**
         * <code>string api = 3;</code>
         */
        public java.lang.String getApi() {
          java.lang.Object ref = api_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            api_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string api = 3;</code>
         */
        public com.google.protobuf.ByteString
            getApiBytes() {
          java.lang.Object ref = api_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            api_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string api = 3;</code>
         */
        public Builder setApi(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          api_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string api = 3;</code>
         */
        public Builder clearApi() {
          
          api_ = getDefaultInstance().getApi();
          onChanged();
          return this;
        }
        /**
         * <code>string api = 3;</code>
         */
        public Builder setApiBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          api_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object vm_ = "";
        /**
         * <code>string vm = 4;</code>
         */
        public java.lang.String getVm() {
          java.lang.Object ref = vm_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            vm_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string vm = 4;</code>
         */
        public com.google.protobuf.ByteString
            getVmBytes() {
          java.lang.Object ref = vm_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            vm_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string vm = 4;</code>
         */
        public Builder setVm(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          vm_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string vm = 4;</code>
         */
        public Builder clearVm() {
          
          vm_ = getDefaultInstance().getVm();
          onChanged();
          return this;
        }
        /**
         * <code>string vm = 4;</code>
         */
        public Builder setVmBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          vm_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object db_ = "";
        /**
         * <code>string db = 5;</code>
         */
        public java.lang.String getDb() {
          java.lang.Object ref = db_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            db_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string db = 5;</code>
         */
        public com.google.protobuf.ByteString
            getDbBytes() {
          java.lang.Object ref = db_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            db_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string db = 5;</code>
         */
        public Builder setDb(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          db_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string db = 5;</code>
         */
        public Builder clearDb() {
          
          db_ = getDefaultInstance().getDb();
          onChanged();
          return this;
        }
        /**
         * <code>string db = 5;</code>
         */
        public Builder setDbBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          db_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object miner_ = "";
        /**
         * <code>string miner = 6;</code>
         */
        public java.lang.String getMiner() {
          java.lang.Object ref = miner_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            miner_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string miner = 6;</code>
         */
        public com.google.protobuf.ByteString
            getMinerBytes() {
          java.lang.Object ref = miner_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            miner_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string miner = 6;</code>
         */
        public Builder setMiner(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          miner_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string miner = 6;</code>
         */
        public Builder clearMiner() {
          
          miner_ = getDefaultInstance().getMiner();
          onChanged();
          return this;
        }
        /**
         * <code>string miner = 6;</code>
         */
        public Builder setMinerBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          miner_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object txpool_ = "";
        /**
         * <code>string txpool = 7;</code>
         */
        public java.lang.String getTxpool() {
          java.lang.Object ref = txpool_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            txpool_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string txpool = 7;</code>
         */
        public com.google.protobuf.ByteString
            getTxpoolBytes() {
          java.lang.Object ref = txpool_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            txpool_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string txpool = 7;</code>
         */
        public Builder setTxpool(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txpool_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string txpool = 7;</code>
         */
        public Builder clearTxpool() {
          
          txpool_ = getDefaultInstance().getTxpool();
          onChanged();
          return this;
        }
        /**
         * <code>string txpool = 7;</code>
         */
        public Builder setTxpoolBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          txpool_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_protocolVersion)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_protocolVersion)
      private static final org.aion.api.server.pb.Message.rsp_protocolVersion DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_protocolVersion();
      }
  
      public static org.aion.api.server.pb.Message.rsp_protocolVersion getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_protocolVersion>
          PARSER = new com.google.protobuf.AbstractParser<rsp_protocolVersion>() {
        public rsp_protocolVersion parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_protocolVersion(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_protocolVersion> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_protocolVersion> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_protocolVersion getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_minerAddressOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_minerAddress)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes minerAddr = 1;</code>
       */
      com.google.protobuf.ByteString getMinerAddr();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_minerAddress}
     */
    public  static final class rsp_minerAddress extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_minerAddress)
        rsp_minerAddressOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_minerAddress.newBuilder() to construct.
      private rsp_minerAddress(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_minerAddress() {
        minerAddr_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_minerAddress(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                minerAddr_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_minerAddress_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_minerAddress_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_minerAddress.class, org.aion.api.server.pb.Message.rsp_minerAddress.Builder.class);
      }
  
      public static final int MINERADDR_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString minerAddr_;
      /**
       * <code>bytes minerAddr = 1;</code>
       */
      public com.google.protobuf.ByteString getMinerAddr() {
        return minerAddr_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!minerAddr_.isEmpty()) {
          output.writeBytes(1, minerAddr_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!minerAddr_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, minerAddr_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_minerAddress)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_minerAddress other = (org.aion.api.server.pb.Message.rsp_minerAddress) obj;
  
        boolean result = true;
        result = result && getMinerAddr()
            .equals(other.getMinerAddr());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + MINERADDR_FIELD_NUMBER;
        hash = (53 * hash) + getMinerAddr().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_minerAddress parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_minerAddress prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_minerAddress}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_minerAddress)
          org.aion.api.server.pb.Message.rsp_minerAddressOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_minerAddress_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_minerAddress_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_minerAddress.class, org.aion.api.server.pb.Message.rsp_minerAddress.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_minerAddress.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          minerAddr_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_minerAddress_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_minerAddress getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_minerAddress.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_minerAddress build() {
          org.aion.api.server.pb.Message.rsp_minerAddress result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_minerAddress buildPartial() {
          org.aion.api.server.pb.Message.rsp_minerAddress result = new org.aion.api.server.pb.Message.rsp_minerAddress(this);
          result.minerAddr_ = minerAddr_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_minerAddress) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_minerAddress)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_minerAddress other) {
          if (other == org.aion.api.server.pb.Message.rsp_minerAddress.getDefaultInstance()) return this;
          if (other.getMinerAddr() != com.google.protobuf.ByteString.EMPTY) {
            setMinerAddr(other.getMinerAddr());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_minerAddress parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_minerAddress) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString minerAddr_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes minerAddr = 1;</code>
         */
        public com.google.protobuf.ByteString getMinerAddr() {
          return minerAddr_;
        }
        /**
         * <code>bytes minerAddr = 1;</code>
         */
        public Builder setMinerAddr(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          minerAddr_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes minerAddr = 1;</code>
         */
        public Builder clearMinerAddr() {
          
          minerAddr_ = getDefaultInstance().getMinerAddr();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_minerAddress)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_minerAddress)
      private static final org.aion.api.server.pb.Message.rsp_minerAddress DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_minerAddress();
      }
  
      public static org.aion.api.server.pb.Message.rsp_minerAddress getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_minerAddress>
          PARSER = new com.google.protobuf.AbstractParser<rsp_minerAddress>() {
        public rsp_minerAddress parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_minerAddress(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_minerAddress> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_minerAddress> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_minerAddress getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockByNumberOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockByNumber)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockByNumber}
     */
    public  static final class req_getBlockByNumber extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockByNumber)
        req_getBlockByNumberOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockByNumber.newBuilder() to construct.
      private req_getBlockByNumber(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockByNumber() {
        blockNumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockByNumber(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByNumber_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByNumber_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockByNumber.class, org.aion.api.server.pb.Message.req_getBlockByNumber.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockByNumber)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockByNumber other = (org.aion.api.server.pb.Message.req_getBlockByNumber) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByNumber parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockByNumber prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockByNumber}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockByNumber)
          org.aion.api.server.pb.Message.req_getBlockByNumberOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByNumber_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByNumber_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockByNumber.class, org.aion.api.server.pb.Message.req_getBlockByNumber.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockByNumber.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByNumber_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockByNumber getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockByNumber.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockByNumber build() {
          org.aion.api.server.pb.Message.req_getBlockByNumber result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockByNumber buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockByNumber result = new org.aion.api.server.pb.Message.req_getBlockByNumber(this);
          result.blockNumber_ = blockNumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockByNumber) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockByNumber)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockByNumber other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockByNumber.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockByNumber parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockByNumber) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockByNumber)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockByNumber)
      private static final org.aion.api.server.pb.Message.req_getBlockByNumber DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockByNumber();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockByNumber getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockByNumber>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockByNumber>() {
        public req_getBlockByNumber parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockByNumber(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockByNumber> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockByNumber> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockByNumber getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlock)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      long getTimestamp();
  
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      long getNrgLimit();
  
      /**
       * <code>bytes parentHash = 5;</code>
       */
      com.google.protobuf.ByteString getParentHash();
  
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      com.google.protobuf.ByteString getMinerAddress();
  
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      com.google.protobuf.ByteString getStateRoot();
  
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      com.google.protobuf.ByteString getTxTrieRoot();
  
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      com.google.protobuf.ByteString getReceiptTrieRoot();
  
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      com.google.protobuf.ByteString getLogsBloom();
  
      /**
       * <code>bytes difficulty = 11;</code>
       */
      com.google.protobuf.ByteString getDifficulty();
  
      /**
       * <code>bytes totalDifficulty = 12;</code>
       */
      com.google.protobuf.ByteString getTotalDifficulty();
  
      /**
       * <code>bytes extraData = 13;</code>
       */
      com.google.protobuf.ByteString getExtraData();
  
      /**
       * <code>bytes nonce = 14;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>bytes solution = 15;</code>
       */
      com.google.protobuf.ByteString getSolution();
  
      /**
       * <code>bytes hash = 16;</code>
       */
      com.google.protobuf.ByteString getHash();
  
      /**
       * <code>uint32 size = 17;</code>
       */
      int getSize();
  
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getTxHashList();
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      int getTxHashCount();
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      com.google.protobuf.ByteString getTxHash(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlock}
     */
    public  static final class rsp_getBlock extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlock)
        rsp_getBlockOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlock.newBuilder() to construct.
      private rsp_getBlock(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlock() {
        blockNumber_ = 0L;
        timestamp_ = 0L;
        nrgConsumed_ = 0L;
        nrgLimit_ = 0L;
        parentHash_ = com.google.protobuf.ByteString.EMPTY;
        minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        difficulty_ = com.google.protobuf.ByteString.EMPTY;
        totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
        extraData_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        solution_ = com.google.protobuf.ByteString.EMPTY;
        hash_ = com.google.protobuf.ByteString.EMPTY;
        size_ = 0;
        txHash_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlock(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 16: {
  
                timestamp_ = input.readUInt64();
                break;
              }
              case 24: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 32: {
  
                nrgLimit_ = input.readUInt64();
                break;
              }
              case 42: {
  
                parentHash_ = input.readBytes();
                break;
              }
              case 50: {
  
                minerAddress_ = input.readBytes();
                break;
              }
              case 58: {
  
                stateRoot_ = input.readBytes();
                break;
              }
              case 66: {
  
                txTrieRoot_ = input.readBytes();
                break;
              }
              case 74: {
  
                receiptTrieRoot_ = input.readBytes();
                break;
              }
              case 82: {
  
                logsBloom_ = input.readBytes();
                break;
              }
              case 90: {
  
                difficulty_ = input.readBytes();
                break;
              }
              case 98: {
  
                totalDifficulty_ = input.readBytes();
                break;
              }
              case 106: {
  
                extraData_ = input.readBytes();
                break;
              }
              case 114: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 122: {
  
                solution_ = input.readBytes();
                break;
              }
              case 130: {
  
                hash_ = input.readBytes();
                break;
              }
              case 136: {
  
                size_ = input.readUInt32();
                break;
              }
              case 146: {
                if (!((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
                  txHash_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00020000;
                }
                txHash_.add(input.readBytes());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00020000) == 0x00020000)) {
            txHash_ = java.util.Collections.unmodifiableList(txHash_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlock_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlock_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlock.class, org.aion.api.server.pb.Message.rsp_getBlock.Builder.class);
      }
  
      private int bitField0_;
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 2;
      private long timestamp_;
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      public long getTimestamp() {
        return timestamp_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 3;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int NRGLIMIT_FIELD_NUMBER = 4;
      private long nrgLimit_;
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      public long getNrgLimit() {
        return nrgLimit_;
      }
  
      public static final int PARENTHASH_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString parentHash_;
      /**
       * <code>bytes parentHash = 5;</code>
       */
      public com.google.protobuf.ByteString getParentHash() {
        return parentHash_;
      }
  
      public static final int MINERADDRESS_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString minerAddress_;
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      public com.google.protobuf.ByteString getMinerAddress() {
        return minerAddress_;
      }
  
      public static final int STATEROOT_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString stateRoot_;
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      public com.google.protobuf.ByteString getStateRoot() {
        return stateRoot_;
      }
  
      public static final int TXTRIEROOT_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString txTrieRoot_;
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      public com.google.protobuf.ByteString getTxTrieRoot() {
        return txTrieRoot_;
      }
  
      public static final int RECEIPTTRIEROOT_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString receiptTrieRoot_;
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      public com.google.protobuf.ByteString getReceiptTrieRoot() {
        return receiptTrieRoot_;
      }
  
      public static final int LOGSBLOOM_FIELD_NUMBER = 10;
      private com.google.protobuf.ByteString logsBloom_;
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      public com.google.protobuf.ByteString getLogsBloom() {
        return logsBloom_;
      }
  
      public static final int DIFFICULTY_FIELD_NUMBER = 11;
      private com.google.protobuf.ByteString difficulty_;
      /**
       * <code>bytes difficulty = 11;</code>
       */
      public com.google.protobuf.ByteString getDifficulty() {
        return difficulty_;
      }
  
      public static final int TOTALDIFFICULTY_FIELD_NUMBER = 12;
      private com.google.protobuf.ByteString totalDifficulty_;
      /**
       * <code>bytes totalDifficulty = 12;</code>
       */
      public com.google.protobuf.ByteString getTotalDifficulty() {
        return totalDifficulty_;
      }
  
      public static final int EXTRADATA_FIELD_NUMBER = 13;
      private com.google.protobuf.ByteString extraData_;
      /**
       * <code>bytes extraData = 13;</code>
       */
      public com.google.protobuf.ByteString getExtraData() {
        return extraData_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 14;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 14;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int SOLUTION_FIELD_NUMBER = 15;
      private com.google.protobuf.ByteString solution_;
      /**
       * <code>bytes solution = 15;</code>
       */
      public com.google.protobuf.ByteString getSolution() {
        return solution_;
      }
  
      public static final int HASH_FIELD_NUMBER = 16;
      private com.google.protobuf.ByteString hash_;
      /**
       * <code>bytes hash = 16;</code>
       */
      public com.google.protobuf.ByteString getHash() {
        return hash_;
      }
  
      public static final int SIZE_FIELD_NUMBER = 17;
      private int size_;
      /**
       * <code>uint32 size = 17;</code>
       */
      public int getSize() {
        return size_;
      }
  
      public static final int TXHASH_FIELD_NUMBER = 18;
      private java.util.List<com.google.protobuf.ByteString> txHash_;
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getTxHashList() {
        return txHash_;
      }
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      public int getTxHashCount() {
        return txHash_.size();
      }
      /**
       * <code>repeated bytes txHash = 18;</code>
       */
      public com.google.protobuf.ByteString getTxHash(int index) {
        return txHash_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          output.writeUInt64(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          output.writeUInt64(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          output.writeBytes(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          output.writeBytes(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          output.writeBytes(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          output.writeBytes(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          output.writeBytes(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          output.writeBytes(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          output.writeBytes(11, difficulty_);
        }
        if (!totalDifficulty_.isEmpty()) {
          output.writeBytes(12, totalDifficulty_);
        }
        if (!extraData_.isEmpty()) {
          output.writeBytes(13, extraData_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(14, nonce_);
        }
        if (!solution_.isEmpty()) {
          output.writeBytes(15, solution_);
        }
        if (!hash_.isEmpty()) {
          output.writeBytes(16, hash_);
        }
        if (size_ != 0) {
          output.writeUInt32(17, size_);
        }
        for (int i = 0; i < txHash_.size(); i++) {
          output.writeBytes(18, txHash_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(11, difficulty_);
        }
        if (!totalDifficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(12, totalDifficulty_);
        }
        if (!extraData_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(13, extraData_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(14, nonce_);
        }
        if (!solution_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(15, solution_);
        }
        if (!hash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(16, hash_);
        }
        if (size_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(17, size_);
        }
        {
          int dataSize = 0;
          for (int i = 0; i < txHash_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(txHash_.get(i));
          }
          size += dataSize;
          size += 2 * getTxHashList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlock)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlock other = (org.aion.api.server.pb.Message.rsp_getBlock) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getTimestamp()
            == other.getTimestamp());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getNrgLimit()
            == other.getNrgLimit());
        result = result && getParentHash()
            .equals(other.getParentHash());
        result = result && getMinerAddress()
            .equals(other.getMinerAddress());
        result = result && getStateRoot()
            .equals(other.getStateRoot());
        result = result && getTxTrieRoot()
            .equals(other.getTxTrieRoot());
        result = result && getReceiptTrieRoot()
            .equals(other.getReceiptTrieRoot());
        result = result && getLogsBloom()
            .equals(other.getLogsBloom());
        result = result && getDifficulty()
            .equals(other.getDifficulty());
        result = result && getTotalDifficulty()
            .equals(other.getTotalDifficulty());
        result = result && getExtraData()
            .equals(other.getExtraData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && getSolution()
            .equals(other.getSolution());
        result = result && getHash()
            .equals(other.getHash());
        result = result && (getSize()
            == other.getSize());
        result = result && getTxHashList()
            .equals(other.getTxHashList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTimestamp());
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + NRGLIMIT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgLimit());
        hash = (37 * hash) + PARENTHASH_FIELD_NUMBER;
        hash = (53 * hash) + getParentHash().hashCode();
        hash = (37 * hash) + MINERADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getMinerAddress().hashCode();
        hash = (37 * hash) + STATEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getStateRoot().hashCode();
        hash = (37 * hash) + TXTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getTxTrieRoot().hashCode();
        hash = (37 * hash) + RECEIPTTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getReceiptTrieRoot().hashCode();
        hash = (37 * hash) + LOGSBLOOM_FIELD_NUMBER;
        hash = (53 * hash) + getLogsBloom().hashCode();
        hash = (37 * hash) + DIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getDifficulty().hashCode();
        hash = (37 * hash) + TOTALDIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getTotalDifficulty().hashCode();
        hash = (37 * hash) + EXTRADATA_FIELD_NUMBER;
        hash = (53 * hash) + getExtraData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + SOLUTION_FIELD_NUMBER;
        hash = (53 * hash) + getSolution().hashCode();
        hash = (37 * hash) + HASH_FIELD_NUMBER;
        hash = (53 * hash) + getHash().hashCode();
        hash = (37 * hash) + SIZE_FIELD_NUMBER;
        hash = (53 * hash) + getSize();
        if (getTxHashCount() > 0) {
          hash = (37 * hash) + TXHASH_FIELD_NUMBER;
          hash = (53 * hash) + getTxHashList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlock parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlock prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlock}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlock)
          org.aion.api.server.pb.Message.rsp_getBlockOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlock_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlock_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlock.class, org.aion.api.server.pb.Message.rsp_getBlock.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlock.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          timestamp_ = 0L;
  
          nrgConsumed_ = 0L;
  
          nrgLimit_ = 0L;
  
          parentHash_ = com.google.protobuf.ByteString.EMPTY;
  
          minerAddress_ = com.google.protobuf.ByteString.EMPTY;
  
          stateRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          logsBloom_ = com.google.protobuf.ByteString.EMPTY;
  
          difficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          extraData_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          solution_ = com.google.protobuf.ByteString.EMPTY;
  
          hash_ = com.google.protobuf.ByteString.EMPTY;
  
          size_ = 0;
  
          txHash_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00020000);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlock_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlock getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlock.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlock build() {
          org.aion.api.server.pb.Message.rsp_getBlock result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlock buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlock result = new org.aion.api.server.pb.Message.rsp_getBlock(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.blockNumber_ = blockNumber_;
          result.timestamp_ = timestamp_;
          result.nrgConsumed_ = nrgConsumed_;
          result.nrgLimit_ = nrgLimit_;
          result.parentHash_ = parentHash_;
          result.minerAddress_ = minerAddress_;
          result.stateRoot_ = stateRoot_;
          result.txTrieRoot_ = txTrieRoot_;
          result.receiptTrieRoot_ = receiptTrieRoot_;
          result.logsBloom_ = logsBloom_;
          result.difficulty_ = difficulty_;
          result.totalDifficulty_ = totalDifficulty_;
          result.extraData_ = extraData_;
          result.nonce_ = nonce_;
          result.solution_ = solution_;
          result.hash_ = hash_;
          result.size_ = size_;
          if (((bitField0_ & 0x00020000) == 0x00020000)) {
            txHash_ = java.util.Collections.unmodifiableList(txHash_);
            bitField0_ = (bitField0_ & ~0x00020000);
          }
          result.txHash_ = txHash_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlock) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlock)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlock other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlock.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getTimestamp() != 0L) {
            setTimestamp(other.getTimestamp());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getNrgLimit() != 0L) {
            setNrgLimit(other.getNrgLimit());
          }
          if (other.getParentHash() != com.google.protobuf.ByteString.EMPTY) {
            setParentHash(other.getParentHash());
          }
          if (other.getMinerAddress() != com.google.protobuf.ByteString.EMPTY) {
            setMinerAddress(other.getMinerAddress());
          }
          if (other.getStateRoot() != com.google.protobuf.ByteString.EMPTY) {
            setStateRoot(other.getStateRoot());
          }
          if (other.getTxTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setTxTrieRoot(other.getTxTrieRoot());
          }
          if (other.getReceiptTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setReceiptTrieRoot(other.getReceiptTrieRoot());
          }
          if (other.getLogsBloom() != com.google.protobuf.ByteString.EMPTY) {
            setLogsBloom(other.getLogsBloom());
          }
          if (other.getDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setDifficulty(other.getDifficulty());
          }
          if (other.getTotalDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setTotalDifficulty(other.getTotalDifficulty());
          }
          if (other.getExtraData() != com.google.protobuf.ByteString.EMPTY) {
            setExtraData(other.getExtraData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getSolution() != com.google.protobuf.ByteString.EMPTY) {
            setSolution(other.getSolution());
          }
          if (other.getHash() != com.google.protobuf.ByteString.EMPTY) {
            setHash(other.getHash());
          }
          if (other.getSize() != 0) {
            setSize(other.getSize());
          }
          if (!other.txHash_.isEmpty()) {
            if (txHash_.isEmpty()) {
              txHash_ = other.txHash_;
              bitField0_ = (bitField0_ & ~0x00020000);
            } else {
              ensureTxHashIsMutable();
              txHash_.addAll(other.txHash_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlock parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlock) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private long timestamp_ ;
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public long getTimestamp() {
          return timestamp_;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder setTimestamp(long value) {
          
          timestamp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder clearTimestamp() {
          
          timestamp_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgLimit_ ;
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public long getNrgLimit() {
          return nrgLimit_;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder setNrgLimit(long value) {
          
          nrgLimit_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder clearNrgLimit() {
          
          nrgLimit_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString parentHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public com.google.protobuf.ByteString getParentHash() {
          return parentHash_;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder setParentHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          parentHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder clearParentHash() {
          
          parentHash_ = getDefaultInstance().getParentHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public com.google.protobuf.ByteString getMinerAddress() {
          return minerAddress_;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder setMinerAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          minerAddress_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder clearMinerAddress() {
          
          minerAddress_ = getDefaultInstance().getMinerAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public com.google.protobuf.ByteString getStateRoot() {
          return stateRoot_;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder setStateRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          stateRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder clearStateRoot() {
          
          stateRoot_ = getDefaultInstance().getStateRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public com.google.protobuf.ByteString getTxTrieRoot() {
          return txTrieRoot_;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder setTxTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder clearTxTrieRoot() {
          
          txTrieRoot_ = getDefaultInstance().getTxTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public com.google.protobuf.ByteString getReceiptTrieRoot() {
          return receiptTrieRoot_;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder setReceiptTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          receiptTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder clearReceiptTrieRoot() {
          
          receiptTrieRoot_ = getDefaultInstance().getReceiptTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public com.google.protobuf.ByteString getLogsBloom() {
          return logsBloom_;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder setLogsBloom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          logsBloom_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder clearLogsBloom() {
          
          logsBloom_ = getDefaultInstance().getLogsBloom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString difficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public com.google.protobuf.ByteString getDifficulty() {
          return difficulty_;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder setDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          difficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder clearDifficulty() {
          
          difficulty_ = getDefaultInstance().getDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString totalDifficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public com.google.protobuf.ByteString getTotalDifficulty() {
          return totalDifficulty_;
        }
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public Builder setTotalDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          totalDifficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes totalDifficulty = 12;</code>
         */
        public Builder clearTotalDifficulty() {
          
          totalDifficulty_ = getDefaultInstance().getTotalDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString extraData_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes extraData = 13;</code>
         */
        public com.google.protobuf.ByteString getExtraData() {
          return extraData_;
        }
        /**
         * <code>bytes extraData = 13;</code>
         */
        public Builder setExtraData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          extraData_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes extraData = 13;</code>
         */
        public Builder clearExtraData() {
          
          extraData_ = getDefaultInstance().getExtraData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 14;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 14;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 14;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString solution_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes solution = 15;</code>
         */
        public com.google.protobuf.ByteString getSolution() {
          return solution_;
        }
        /**
         * <code>bytes solution = 15;</code>
         */
        public Builder setSolution(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          solution_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes solution = 15;</code>
         */
        public Builder clearSolution() {
          
          solution_ = getDefaultInstance().getSolution();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString hash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes hash = 16;</code>
         */
        public com.google.protobuf.ByteString getHash() {
          return hash_;
        }
        /**
         * <code>bytes hash = 16;</code>
         */
        public Builder setHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          hash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes hash = 16;</code>
         */
        public Builder clearHash() {
          
          hash_ = getDefaultInstance().getHash();
          onChanged();
          return this;
        }
  
        private int size_ ;
        /**
         * <code>uint32 size = 17;</code>
         */
        public int getSize() {
          return size_;
        }
        /**
         * <code>uint32 size = 17;</code>
         */
        public Builder setSize(int value) {
          
          size_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 size = 17;</code>
         */
        public Builder clearSize() {
          
          size_ = 0;
          onChanged();
          return this;
        }
  
        private java.util.List<com.google.protobuf.ByteString> txHash_ = java.util.Collections.emptyList();
        private void ensureTxHashIsMutable() {
          if (!((bitField0_ & 0x00020000) == 0x00020000)) {
            txHash_ = new java.util.ArrayList<com.google.protobuf.ByteString>(txHash_);
            bitField0_ |= 0x00020000;
           }
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getTxHashList() {
          return java.util.Collections.unmodifiableList(txHash_);
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public int getTxHashCount() {
          return txHash_.size();
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public com.google.protobuf.ByteString getTxHash(int index) {
          return txHash_.get(index);
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder setTxHash(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTxHashIsMutable();
          txHash_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder addTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureTxHashIsMutable();
          txHash_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder addAllTxHash(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureTxHashIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, txHash_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes txHash = 18;</code>
         */
        public Builder clearTxHash() {
          txHash_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00020000);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlock)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlock)
      private static final org.aion.api.server.pb.Message.rsp_getBlock DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlock();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlock getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlock>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlock>() {
        public rsp_getBlock parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlock(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlock> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlock> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlock getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockHeaderByNumberOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockHeaderByNumber)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockHeaderByNumber}
     */
    public  static final class req_getBlockHeaderByNumber extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockHeaderByNumber)
        req_getBlockHeaderByNumberOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockHeaderByNumber.newBuilder() to construct.
      private req_getBlockHeaderByNumber(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockHeaderByNumber() {
        blockNumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockHeaderByNumber(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.class, org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockHeaderByNumber)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockHeaderByNumber other = (org.aion.api.server.pb.Message.req_getBlockHeaderByNumber) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockHeaderByNumber prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockHeaderByNumber}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockHeaderByNumber)
          org.aion.api.server.pb.Message.req_getBlockHeaderByNumberOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.class, org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockHeaderByNumber getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockHeaderByNumber build() {
          org.aion.api.server.pb.Message.req_getBlockHeaderByNumber result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockHeaderByNumber buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockHeaderByNumber result = new org.aion.api.server.pb.Message.req_getBlockHeaderByNumber(this);
          result.blockNumber_ = blockNumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockHeaderByNumber) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockHeaderByNumber)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockHeaderByNumber other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockHeaderByNumber.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockHeaderByNumber parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockHeaderByNumber) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockHeaderByNumber)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockHeaderByNumber)
      private static final org.aion.api.server.pb.Message.req_getBlockHeaderByNumber DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockHeaderByNumber();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByNumber getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockHeaderByNumber>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockHeaderByNumber>() {
        public req_getBlockHeaderByNumber parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockHeaderByNumber(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockHeaderByNumber> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockHeaderByNumber> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockHeaderByNumber getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockHeaderOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockHeader)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      long getTimestamp();
  
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      long getNrgLimit();
  
      /**
       * <code>bytes parentHash = 5;</code>
       */
      com.google.protobuf.ByteString getParentHash();
  
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      com.google.protobuf.ByteString getMinerAddress();
  
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      com.google.protobuf.ByteString getStateRoot();
  
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      com.google.protobuf.ByteString getTxTrieRoot();
  
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      com.google.protobuf.ByteString getReceiptTrieRoot();
  
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      com.google.protobuf.ByteString getLogsBloom();
  
      /**
       * <code>bytes difficulty = 11;</code>
       */
      com.google.protobuf.ByteString getDifficulty();
  
      /**
       * <code>bytes extraData = 12;</code>
       */
      com.google.protobuf.ByteString getExtraData();
  
      /**
       * <code>bytes nonce = 13;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>bytes solution = 14;</code>
       */
      com.google.protobuf.ByteString getSolution();
  
      /**
       * <code>bytes hash = 15;</code>
       */
      com.google.protobuf.ByteString getHash();
  
      /**
       * <code>uint32 size = 16;</code>
       */
      int getSize();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockHeader}
     */
    public  static final class rsp_getBlockHeader extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockHeader)
        rsp_getBlockHeaderOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockHeader.newBuilder() to construct.
      private rsp_getBlockHeader(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockHeader() {
        blockNumber_ = 0L;
        timestamp_ = 0L;
        nrgConsumed_ = 0L;
        nrgLimit_ = 0L;
        parentHash_ = com.google.protobuf.ByteString.EMPTY;
        minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        difficulty_ = com.google.protobuf.ByteString.EMPTY;
        extraData_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        solution_ = com.google.protobuf.ByteString.EMPTY;
        hash_ = com.google.protobuf.ByteString.EMPTY;
        size_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockHeader(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 16: {
  
                timestamp_ = input.readUInt64();
                break;
              }
              case 24: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 32: {
  
                nrgLimit_ = input.readUInt64();
                break;
              }
              case 42: {
  
                parentHash_ = input.readBytes();
                break;
              }
              case 50: {
  
                minerAddress_ = input.readBytes();
                break;
              }
              case 58: {
  
                stateRoot_ = input.readBytes();
                break;
              }
              case 66: {
  
                txTrieRoot_ = input.readBytes();
                break;
              }
              case 74: {
  
                receiptTrieRoot_ = input.readBytes();
                break;
              }
              case 82: {
  
                logsBloom_ = input.readBytes();
                break;
              }
              case 90: {
  
                difficulty_ = input.readBytes();
                break;
              }
              case 98: {
  
                extraData_ = input.readBytes();
                break;
              }
              case 106: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 114: {
  
                solution_ = input.readBytes();
                break;
              }
              case 122: {
  
                hash_ = input.readBytes();
                break;
              }
              case 128: {
  
                size_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockHeader_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockHeader_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockHeader.class, org.aion.api.server.pb.Message.rsp_getBlockHeader.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 2;
      private long timestamp_;
      /**
       * <code>uint64 timestamp = 2;</code>
       */
      public long getTimestamp() {
        return timestamp_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 3;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int NRGLIMIT_FIELD_NUMBER = 4;
      private long nrgLimit_;
      /**
       * <code>uint64 nrgLimit = 4;</code>
       */
      public long getNrgLimit() {
        return nrgLimit_;
      }
  
      public static final int PARENTHASH_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString parentHash_;
      /**
       * <code>bytes parentHash = 5;</code>
       */
      public com.google.protobuf.ByteString getParentHash() {
        return parentHash_;
      }
  
      public static final int MINERADDRESS_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString minerAddress_;
      /**
       * <code>bytes minerAddress = 6;</code>
       */
      public com.google.protobuf.ByteString getMinerAddress() {
        return minerAddress_;
      }
  
      public static final int STATEROOT_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString stateRoot_;
      /**
       * <code>bytes stateRoot = 7;</code>
       */
      public com.google.protobuf.ByteString getStateRoot() {
        return stateRoot_;
      }
  
      public static final int TXTRIEROOT_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString txTrieRoot_;
      /**
       * <code>bytes txTrieRoot = 8;</code>
       */
      public com.google.protobuf.ByteString getTxTrieRoot() {
        return txTrieRoot_;
      }
  
      public static final int RECEIPTTRIEROOT_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString receiptTrieRoot_;
      /**
       * <code>bytes receiptTrieRoot = 9;</code>
       */
      public com.google.protobuf.ByteString getReceiptTrieRoot() {
        return receiptTrieRoot_;
      }
  
      public static final int LOGSBLOOM_FIELD_NUMBER = 10;
      private com.google.protobuf.ByteString logsBloom_;
      /**
       * <code>bytes logsBloom = 10;</code>
       */
      public com.google.protobuf.ByteString getLogsBloom() {
        return logsBloom_;
      }
  
      public static final int DIFFICULTY_FIELD_NUMBER = 11;
      private com.google.protobuf.ByteString difficulty_;
      /**
       * <code>bytes difficulty = 11;</code>
       */
      public com.google.protobuf.ByteString getDifficulty() {
        return difficulty_;
      }
  
      public static final int EXTRADATA_FIELD_NUMBER = 12;
      private com.google.protobuf.ByteString extraData_;
      /**
       * <code>bytes extraData = 12;</code>
       */
      public com.google.protobuf.ByteString getExtraData() {
        return extraData_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 13;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 13;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int SOLUTION_FIELD_NUMBER = 14;
      private com.google.protobuf.ByteString solution_;
      /**
       * <code>bytes solution = 14;</code>
       */
      public com.google.protobuf.ByteString getSolution() {
        return solution_;
      }
  
      public static final int HASH_FIELD_NUMBER = 15;
      private com.google.protobuf.ByteString hash_;
      /**
       * <code>bytes hash = 15;</code>
       */
      public com.google.protobuf.ByteString getHash() {
        return hash_;
      }
  
      public static final int SIZE_FIELD_NUMBER = 16;
      private int size_;
      /**
       * <code>uint32 size = 16;</code>
       */
      public int getSize() {
        return size_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          output.writeUInt64(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          output.writeUInt64(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          output.writeBytes(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          output.writeBytes(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          output.writeBytes(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          output.writeBytes(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          output.writeBytes(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          output.writeBytes(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          output.writeBytes(11, difficulty_);
        }
        if (!extraData_.isEmpty()) {
          output.writeBytes(12, extraData_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(13, nonce_);
        }
        if (!solution_.isEmpty()) {
          output.writeBytes(14, solution_);
        }
        if (!hash_.isEmpty()) {
          output.writeBytes(15, hash_);
        }
        if (size_ != 0) {
          output.writeUInt32(16, size_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (timestamp_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, timestamp_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, nrgConsumed_);
        }
        if (nrgLimit_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, nrgLimit_);
        }
        if (!parentHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, parentHash_);
        }
        if (!minerAddress_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, minerAddress_);
        }
        if (!stateRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, stateRoot_);
        }
        if (!txTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, txTrieRoot_);
        }
        if (!receiptTrieRoot_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, receiptTrieRoot_);
        }
        if (!logsBloom_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, logsBloom_);
        }
        if (!difficulty_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(11, difficulty_);
        }
        if (!extraData_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(12, extraData_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(13, nonce_);
        }
        if (!solution_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(14, solution_);
        }
        if (!hash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(15, hash_);
        }
        if (size_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(16, size_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockHeader)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockHeader other = (org.aion.api.server.pb.Message.rsp_getBlockHeader) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getTimestamp()
            == other.getTimestamp());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getNrgLimit()
            == other.getNrgLimit());
        result = result && getParentHash()
            .equals(other.getParentHash());
        result = result && getMinerAddress()
            .equals(other.getMinerAddress());
        result = result && getStateRoot()
            .equals(other.getStateRoot());
        result = result && getTxTrieRoot()
            .equals(other.getTxTrieRoot());
        result = result && getReceiptTrieRoot()
            .equals(other.getReceiptTrieRoot());
        result = result && getLogsBloom()
            .equals(other.getLogsBloom());
        result = result && getDifficulty()
            .equals(other.getDifficulty());
        result = result && getExtraData()
            .equals(other.getExtraData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && getSolution()
            .equals(other.getSolution());
        result = result && getHash()
            .equals(other.getHash());
        result = result && (getSize()
            == other.getSize());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTimestamp());
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + NRGLIMIT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgLimit());
        hash = (37 * hash) + PARENTHASH_FIELD_NUMBER;
        hash = (53 * hash) + getParentHash().hashCode();
        hash = (37 * hash) + MINERADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getMinerAddress().hashCode();
        hash = (37 * hash) + STATEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getStateRoot().hashCode();
        hash = (37 * hash) + TXTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getTxTrieRoot().hashCode();
        hash = (37 * hash) + RECEIPTTRIEROOT_FIELD_NUMBER;
        hash = (53 * hash) + getReceiptTrieRoot().hashCode();
        hash = (37 * hash) + LOGSBLOOM_FIELD_NUMBER;
        hash = (53 * hash) + getLogsBloom().hashCode();
        hash = (37 * hash) + DIFFICULTY_FIELD_NUMBER;
        hash = (53 * hash) + getDifficulty().hashCode();
        hash = (37 * hash) + EXTRADATA_FIELD_NUMBER;
        hash = (53 * hash) + getExtraData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + SOLUTION_FIELD_NUMBER;
        hash = (53 * hash) + getSolution().hashCode();
        hash = (37 * hash) + HASH_FIELD_NUMBER;
        hash = (53 * hash) + getHash().hashCode();
        hash = (37 * hash) + SIZE_FIELD_NUMBER;
        hash = (53 * hash) + getSize();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockHeader prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockHeader}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockHeader)
          org.aion.api.server.pb.Message.rsp_getBlockHeaderOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockHeader_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockHeader_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockHeader.class, org.aion.api.server.pb.Message.rsp_getBlockHeader.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockHeader.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          timestamp_ = 0L;
  
          nrgConsumed_ = 0L;
  
          nrgLimit_ = 0L;
  
          parentHash_ = com.google.protobuf.ByteString.EMPTY;
  
          minerAddress_ = com.google.protobuf.ByteString.EMPTY;
  
          stateRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
  
          logsBloom_ = com.google.protobuf.ByteString.EMPTY;
  
          difficulty_ = com.google.protobuf.ByteString.EMPTY;
  
          extraData_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          solution_ = com.google.protobuf.ByteString.EMPTY;
  
          hash_ = com.google.protobuf.ByteString.EMPTY;
  
          size_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockHeader_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockHeader getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockHeader.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockHeader build() {
          org.aion.api.server.pb.Message.rsp_getBlockHeader result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockHeader buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockHeader result = new org.aion.api.server.pb.Message.rsp_getBlockHeader(this);
          result.blockNumber_ = blockNumber_;
          result.timestamp_ = timestamp_;
          result.nrgConsumed_ = nrgConsumed_;
          result.nrgLimit_ = nrgLimit_;
          result.parentHash_ = parentHash_;
          result.minerAddress_ = minerAddress_;
          result.stateRoot_ = stateRoot_;
          result.txTrieRoot_ = txTrieRoot_;
          result.receiptTrieRoot_ = receiptTrieRoot_;
          result.logsBloom_ = logsBloom_;
          result.difficulty_ = difficulty_;
          result.extraData_ = extraData_;
          result.nonce_ = nonce_;
          result.solution_ = solution_;
          result.hash_ = hash_;
          result.size_ = size_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockHeader) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockHeader)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockHeader other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockHeader.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getTimestamp() != 0L) {
            setTimestamp(other.getTimestamp());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getNrgLimit() != 0L) {
            setNrgLimit(other.getNrgLimit());
          }
          if (other.getParentHash() != com.google.protobuf.ByteString.EMPTY) {
            setParentHash(other.getParentHash());
          }
          if (other.getMinerAddress() != com.google.protobuf.ByteString.EMPTY) {
            setMinerAddress(other.getMinerAddress());
          }
          if (other.getStateRoot() != com.google.protobuf.ByteString.EMPTY) {
            setStateRoot(other.getStateRoot());
          }
          if (other.getTxTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setTxTrieRoot(other.getTxTrieRoot());
          }
          if (other.getReceiptTrieRoot() != com.google.protobuf.ByteString.EMPTY) {
            setReceiptTrieRoot(other.getReceiptTrieRoot());
          }
          if (other.getLogsBloom() != com.google.protobuf.ByteString.EMPTY) {
            setLogsBloom(other.getLogsBloom());
          }
          if (other.getDifficulty() != com.google.protobuf.ByteString.EMPTY) {
            setDifficulty(other.getDifficulty());
          }
          if (other.getExtraData() != com.google.protobuf.ByteString.EMPTY) {
            setExtraData(other.getExtraData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getSolution() != com.google.protobuf.ByteString.EMPTY) {
            setSolution(other.getSolution());
          }
          if (other.getHash() != com.google.protobuf.ByteString.EMPTY) {
            setHash(other.getHash());
          }
          if (other.getSize() != 0) {
            setSize(other.getSize());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockHeader parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockHeader) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private long timestamp_ ;
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public long getTimestamp() {
          return timestamp_;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder setTimestamp(long value) {
          
          timestamp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 timestamp = 2;</code>
         */
        public Builder clearTimestamp() {
          
          timestamp_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgLimit_ ;
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public long getNrgLimit() {
          return nrgLimit_;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder setNrgLimit(long value) {
          
          nrgLimit_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgLimit = 4;</code>
         */
        public Builder clearNrgLimit() {
          
          nrgLimit_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString parentHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public com.google.protobuf.ByteString getParentHash() {
          return parentHash_;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder setParentHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          parentHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes parentHash = 5;</code>
         */
        public Builder clearParentHash() {
          
          parentHash_ = getDefaultInstance().getParentHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString minerAddress_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public com.google.protobuf.ByteString getMinerAddress() {
          return minerAddress_;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder setMinerAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          minerAddress_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes minerAddress = 6;</code>
         */
        public Builder clearMinerAddress() {
          
          minerAddress_ = getDefaultInstance().getMinerAddress();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString stateRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public com.google.protobuf.ByteString getStateRoot() {
          return stateRoot_;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder setStateRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          stateRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes stateRoot = 7;</code>
         */
        public Builder clearStateRoot() {
          
          stateRoot_ = getDefaultInstance().getStateRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public com.google.protobuf.ByteString getTxTrieRoot() {
          return txTrieRoot_;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder setTxTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txTrieRoot = 8;</code>
         */
        public Builder clearTxTrieRoot() {
          
          txTrieRoot_ = getDefaultInstance().getTxTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString receiptTrieRoot_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public com.google.protobuf.ByteString getReceiptTrieRoot() {
          return receiptTrieRoot_;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder setReceiptTrieRoot(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          receiptTrieRoot_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes receiptTrieRoot = 9;</code>
         */
        public Builder clearReceiptTrieRoot() {
          
          receiptTrieRoot_ = getDefaultInstance().getReceiptTrieRoot();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString logsBloom_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public com.google.protobuf.ByteString getLogsBloom() {
          return logsBloom_;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder setLogsBloom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          logsBloom_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes logsBloom = 10;</code>
         */
        public Builder clearLogsBloom() {
          
          logsBloom_ = getDefaultInstance().getLogsBloom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString difficulty_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public com.google.protobuf.ByteString getDifficulty() {
          return difficulty_;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder setDifficulty(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          difficulty_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes difficulty = 11;</code>
         */
        public Builder clearDifficulty() {
          
          difficulty_ = getDefaultInstance().getDifficulty();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString extraData_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes extraData = 12;</code>
         */
        public com.google.protobuf.ByteString getExtraData() {
          return extraData_;
        }
        /**
         * <code>bytes extraData = 12;</code>
         */
        public Builder setExtraData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          extraData_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes extraData = 12;</code>
         */
        public Builder clearExtraData() {
          
          extraData_ = getDefaultInstance().getExtraData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 13;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 13;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 13;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString solution_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes solution = 14;</code>
         */
        public com.google.protobuf.ByteString getSolution() {
          return solution_;
        }
        /**
         * <code>bytes solution = 14;</code>
         */
        public Builder setSolution(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          solution_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes solution = 14;</code>
         */
        public Builder clearSolution() {
          
          solution_ = getDefaultInstance().getSolution();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString hash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes hash = 15;</code>
         */
        public com.google.protobuf.ByteString getHash() {
          return hash_;
        }
        /**
         * <code>bytes hash = 15;</code>
         */
        public Builder setHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          hash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes hash = 15;</code>
         */
        public Builder clearHash() {
          
          hash_ = getDefaultInstance().getHash();
          onChanged();
          return this;
        }
  
        private int size_ ;
        /**
         * <code>uint32 size = 16;</code>
         */
        public int getSize() {
          return size_;
        }
        /**
         * <code>uint32 size = 16;</code>
         */
        public Builder setSize(int value) {
          
          size_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 size = 16;</code>
         */
        public Builder clearSize() {
          
          size_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockHeader)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockHeader)
      private static final org.aion.api.server.pb.Message.rsp_getBlockHeader DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockHeader();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockHeader getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockHeader>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockHeader>() {
        public rsp_getBlockHeader parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockHeader(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockHeader> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockHeader> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockHeader getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_sendTransactionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_sendTransaction)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes from = 1;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes to = 2;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes value = 3;</code>
       */
      com.google.protobuf.ByteString getValue();
  
      /**
       * <code>bytes data = 4;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes nonce = 5;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>uint64 nrg = 6;</code>
       */
      long getNrg();
  
      /**
       * <code>uint64 nrgPrice = 7;</code>
       */
      long getNrgPrice();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_sendTransaction}
     */
    public  static final class req_sendTransaction extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_sendTransaction)
        req_sendTransactionOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_sendTransaction.newBuilder() to construct.
      private req_sendTransaction(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_sendTransaction() {
        from_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        nrg_ = 0L;
        nrgPrice_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_sendTransaction(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                from_ = input.readBytes();
                break;
              }
              case 18: {
  
                to_ = input.readBytes();
                break;
              }
              case 26: {
  
                value_ = input.readBytes();
                break;
              }
              case 34: {
  
                data_ = input.readBytes();
                break;
              }
              case 42: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 48: {
  
                nrg_ = input.readUInt64();
                break;
              }
              case 56: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_sendTransaction_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_sendTransaction_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_sendTransaction.class, org.aion.api.server.pb.Message.req_sendTransaction.Builder.class);
      }
  
      public static final int FROM_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 1;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TO_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 2;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 3;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      public static final int DATA_FIELD_NUMBER = 4;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 4;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 5;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int NRG_FIELD_NUMBER = 6;
      private long nrg_;
      /**
       * <code>uint64 nrg = 6;</code>
       */
      public long getNrg() {
        return nrg_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 7;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 7;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!from_.isEmpty()) {
          output.writeBytes(1, from_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(2, to_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(3, value_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(4, data_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(5, nonce_);
        }
        if (nrg_ != 0L) {
          output.writeUInt64(6, nrg_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(7, nrgPrice_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, from_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, to_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, value_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, data_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, nonce_);
        }
        if (nrg_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(6, nrg_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(7, nrgPrice_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_sendTransaction)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_sendTransaction other = (org.aion.api.server.pb.Message.req_sendTransaction) obj;
  
        boolean result = true;
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getValue()
            .equals(other.getValue());
        result = result && getData()
            .equals(other.getData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && (getNrg()
            == other.getNrg());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + NRG_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrg());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_sendTransaction parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_sendTransaction prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_sendTransaction}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_sendTransaction)
          org.aion.api.server.pb.Message.req_sendTransactionOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_sendTransaction_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_sendTransaction_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_sendTransaction.class, org.aion.api.server.pb.Message.req_sendTransaction.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_sendTransaction.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          nrg_ = 0L;
  
          nrgPrice_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_sendTransaction_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_sendTransaction getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_sendTransaction.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_sendTransaction build() {
          org.aion.api.server.pb.Message.req_sendTransaction result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_sendTransaction buildPartial() {
          org.aion.api.server.pb.Message.req_sendTransaction result = new org.aion.api.server.pb.Message.req_sendTransaction(this);
          result.from_ = from_;
          result.to_ = to_;
          result.value_ = value_;
          result.data_ = data_;
          result.nonce_ = nonce_;
          result.nrg_ = nrg_;
          result.nrgPrice_ = nrgPrice_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_sendTransaction) {
            return mergeFrom((org.aion.api.server.pb.Message.req_sendTransaction)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_sendTransaction other) {
          if (other == org.aion.api.server.pb.Message.req_sendTransaction.getDefaultInstance()) return this;
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getNrg() != 0L) {
            setNrg(other.getNrg());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_sendTransaction parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_sendTransaction) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 1;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 1;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 1;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 2;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 2;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 2;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 3;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 3;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 3;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 4;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 4;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 4;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 5;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 5;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 5;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private long nrg_ ;
        /**
         * <code>uint64 nrg = 6;</code>
         */
        public long getNrg() {
          return nrg_;
        }
        /**
         * <code>uint64 nrg = 6;</code>
         */
        public Builder setNrg(long value) {
          
          nrg_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrg = 6;</code>
         */
        public Builder clearNrg() {
          
          nrg_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 7;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 7;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 7;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_sendTransaction)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_sendTransaction)
      private static final org.aion.api.server.pb.Message.req_sendTransaction DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_sendTransaction();
      }
  
      public static org.aion.api.server.pb.Message.req_sendTransaction getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_sendTransaction>
          PARSER = new com.google.protobuf.AbstractParser<req_sendTransaction>() {
        public req_sendTransaction parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_sendTransaction(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_sendTransaction> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_sendTransaction> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_sendTransaction getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_sendTransactionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_sendTransaction)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_sendTransaction}
     */
    public  static final class rsp_sendTransaction extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_sendTransaction)
        rsp_sendTransactionOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_sendTransaction.newBuilder() to construct.
      private rsp_sendTransaction(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_sendTransaction() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_sendTransaction(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_sendTransaction_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_sendTransaction_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_sendTransaction.class, org.aion.api.server.pb.Message.rsp_sendTransaction.Builder.class);
      }
  
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_sendTransaction)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_sendTransaction other = (org.aion.api.server.pb.Message.rsp_sendTransaction) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_sendTransaction parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_sendTransaction prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_sendTransaction}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_sendTransaction)
          org.aion.api.server.pb.Message.rsp_sendTransactionOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_sendTransaction_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_sendTransaction_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_sendTransaction.class, org.aion.api.server.pb.Message.rsp_sendTransaction.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_sendTransaction.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_sendTransaction_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_sendTransaction getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_sendTransaction.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_sendTransaction build() {
          org.aion.api.server.pb.Message.rsp_sendTransaction result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_sendTransaction buildPartial() {
          org.aion.api.server.pb.Message.rsp_sendTransaction result = new org.aion.api.server.pb.Message.rsp_sendTransaction(this);
          result.txHash_ = txHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_sendTransaction) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_sendTransaction)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_sendTransaction other) {
          if (other == org.aion.api.server.pb.Message.rsp_sendTransaction.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_sendTransaction parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_sendTransaction) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_sendTransaction)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_sendTransaction)
      private static final org.aion.api.server.pb.Message.rsp_sendTransaction DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_sendTransaction();
      }
  
      public static org.aion.api.server.pb.Message.rsp_sendTransaction getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_sendTransaction>
          PARSER = new com.google.protobuf.AbstractParser<rsp_sendTransaction>() {
        public rsp_sendTransaction parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_sendTransaction(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_sendTransaction> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_sendTransaction> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_sendTransaction getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getTransactionByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getTransactionByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getTransactionByHash}
     */
    public  static final class req_getTransactionByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getTransactionByHash)
        req_getTransactionByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getTransactionByHash.newBuilder() to construct.
      private req_getTransactionByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getTransactionByHash() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getTransactionByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getTransactionByHash.class, org.aion.api.server.pb.Message.req_getTransactionByHash.Builder.class);
      }
  
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getTransactionByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getTransactionByHash other = (org.aion.api.server.pb.Message.req_getTransactionByHash) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getTransactionByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getTransactionByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getTransactionByHash)
          org.aion.api.server.pb.Message.req_getTransactionByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getTransactionByHash.class, org.aion.api.server.pb.Message.req_getTransactionByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getTransactionByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getTransactionByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByHash build() {
          org.aion.api.server.pb.Message.req_getTransactionByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByHash buildPartial() {
          org.aion.api.server.pb.Message.req_getTransactionByHash result = new org.aion.api.server.pb.Message.req_getTransactionByHash(this);
          result.txHash_ = txHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getTransactionByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getTransactionByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getTransactionByHash other) {
          if (other == org.aion.api.server.pb.Message.req_getTransactionByHash.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getTransactionByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getTransactionByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getTransactionByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getTransactionByHash)
      private static final org.aion.api.server.pb.Message.req_getTransactionByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getTransactionByHash();
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getTransactionByHash>
          PARSER = new com.google.protobuf.AbstractParser<req_getTransactionByHash>() {
        public req_getTransactionByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getTransactionByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getTransactionByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getTransactionByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getTransactionByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getTransactionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getTransaction)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint32 txIndex = 1;</code>
       */
      int getTxIndex();
  
      /**
       * <code>uint64 blocknumber = 2;</code>
       */
      long getBlocknumber();
  
      /**
       * <code>uint64 timeStamp = 3;</code>
       */
      long getTimeStamp();
  
      /**
       * <code>uint64 nrgConsume = 4;</code>
       */
      long getNrgConsume();
  
      /**
       * <code>uint64 nrgPrice = 5;</code>
       */
      long getNrgPrice();
  
      /**
       * <code>bytes blockhash = 6;</code>
       */
      com.google.protobuf.ByteString getBlockhash();
  
      /**
       * <code>bytes from = 7;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes txHash = 8;</code>
       */
      com.google.protobuf.ByteString getTxHash();
  
      /**
       * <code>bytes data = 9;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes nonce = 10;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>bytes to = 11;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes value = 12;</code>
       */
      com.google.protobuf.ByteString getValue();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getTransaction}
     */
    public  static final class rsp_getTransaction extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getTransaction)
        rsp_getTransactionOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getTransaction.newBuilder() to construct.
      private rsp_getTransaction(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getTransaction() {
        txIndex_ = 0;
        blocknumber_ = 0L;
        timeStamp_ = 0L;
        nrgConsume_ = 0L;
        nrgPrice_ = 0L;
        blockhash_ = com.google.protobuf.ByteString.EMPTY;
        from_ = com.google.protobuf.ByteString.EMPTY;
        txHash_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getTransaction(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                txIndex_ = input.readUInt32();
                break;
              }
              case 16: {
  
                blocknumber_ = input.readUInt64();
                break;
              }
              case 24: {
  
                timeStamp_ = input.readUInt64();
                break;
              }
              case 32: {
  
                nrgConsume_ = input.readUInt64();
                break;
              }
              case 40: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
              case 50: {
  
                blockhash_ = input.readBytes();
                break;
              }
              case 58: {
  
                from_ = input.readBytes();
                break;
              }
              case 66: {
  
                txHash_ = input.readBytes();
                break;
              }
              case 74: {
  
                data_ = input.readBytes();
                break;
              }
              case 82: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 90: {
  
                to_ = input.readBytes();
                break;
              }
              case 98: {
  
                value_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransaction_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransaction_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getTransaction.class, org.aion.api.server.pb.Message.rsp_getTransaction.Builder.class);
      }
  
      public static final int TXINDEX_FIELD_NUMBER = 1;
      private int txIndex_;
      /**
       * <code>uint32 txIndex = 1;</code>
       */
      public int getTxIndex() {
        return txIndex_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 2;
      private long blocknumber_;
      /**
       * <code>uint64 blocknumber = 2;</code>
       */
      public long getBlocknumber() {
        return blocknumber_;
      }
  
      public static final int TIMESTAMP_FIELD_NUMBER = 3;
      private long timeStamp_;
      /**
       * <code>uint64 timeStamp = 3;</code>
       */
      public long getTimeStamp() {
        return timeStamp_;
      }
  
      public static final int NRGCONSUME_FIELD_NUMBER = 4;
      private long nrgConsume_;
      /**
       * <code>uint64 nrgConsume = 4;</code>
       */
      public long getNrgConsume() {
        return nrgConsume_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 5;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 5;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString blockhash_;
      /**
       * <code>bytes blockhash = 6;</code>
       */
      public com.google.protobuf.ByteString getBlockhash() {
        return blockhash_;
      }
  
      public static final int FROM_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 7;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TXHASH_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 8;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      public static final int DATA_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 9;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int NONCE_FIELD_NUMBER = 10;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 10;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int TO_FIELD_NUMBER = 11;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 11;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 12;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 12;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (txIndex_ != 0) {
          output.writeUInt32(1, txIndex_);
        }
        if (blocknumber_ != 0L) {
          output.writeUInt64(2, blocknumber_);
        }
        if (timeStamp_ != 0L) {
          output.writeUInt64(3, timeStamp_);
        }
        if (nrgConsume_ != 0L) {
          output.writeUInt64(4, nrgConsume_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(5, nrgPrice_);
        }
        if (!blockhash_.isEmpty()) {
          output.writeBytes(6, blockhash_);
        }
        if (!from_.isEmpty()) {
          output.writeBytes(7, from_);
        }
        if (!txHash_.isEmpty()) {
          output.writeBytes(8, txHash_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(9, data_);
        }
        if (!nonce_.isEmpty()) {
          output.writeBytes(10, nonce_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(11, to_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(12, value_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (txIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(1, txIndex_);
        }
        if (blocknumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blocknumber_);
        }
        if (timeStamp_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, timeStamp_);
        }
        if (nrgConsume_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, nrgConsume_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(5, nrgPrice_);
        }
        if (!blockhash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, blockhash_);
        }
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, from_);
        }
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, txHash_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, data_);
        }
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(10, nonce_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(11, to_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(12, value_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getTransaction)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getTransaction other = (org.aion.api.server.pb.Message.rsp_getTransaction) obj;
  
        boolean result = true;
        result = result && (getTxIndex()
            == other.getTxIndex());
        result = result && (getBlocknumber()
            == other.getBlocknumber());
        result = result && (getTimeStamp()
            == other.getTimeStamp());
        result = result && (getNrgConsume()
            == other.getNrgConsume());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && getBlockhash()
            .equals(other.getBlockhash());
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && getData()
            .equals(other.getData());
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getValue()
            .equals(other.getValue());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTxIndex();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlocknumber());
        hash = (37 * hash) + TIMESTAMP_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTimeStamp());
        hash = (37 * hash) + NRGCONSUME_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsume());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockhash().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransaction parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getTransaction prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getTransaction}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getTransaction)
          org.aion.api.server.pb.Message.rsp_getTransactionOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransaction_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransaction_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getTransaction.class, org.aion.api.server.pb.Message.rsp_getTransaction.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getTransaction.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txIndex_ = 0;
  
          blocknumber_ = 0L;
  
          timeStamp_ = 0L;
  
          nrgConsume_ = 0L;
  
          nrgPrice_ = 0L;
  
          blockhash_ = com.google.protobuf.ByteString.EMPTY;
  
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransaction_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransaction getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getTransaction.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransaction build() {
          org.aion.api.server.pb.Message.rsp_getTransaction result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransaction buildPartial() {
          org.aion.api.server.pb.Message.rsp_getTransaction result = new org.aion.api.server.pb.Message.rsp_getTransaction(this);
          result.txIndex_ = txIndex_;
          result.blocknumber_ = blocknumber_;
          result.timeStamp_ = timeStamp_;
          result.nrgConsume_ = nrgConsume_;
          result.nrgPrice_ = nrgPrice_;
          result.blockhash_ = blockhash_;
          result.from_ = from_;
          result.txHash_ = txHash_;
          result.data_ = data_;
          result.nonce_ = nonce_;
          result.to_ = to_;
          result.value_ = value_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getTransaction) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getTransaction)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getTransaction other) {
          if (other == org.aion.api.server.pb.Message.rsp_getTransaction.getDefaultInstance()) return this;
          if (other.getTxIndex() != 0) {
            setTxIndex(other.getTxIndex());
          }
          if (other.getBlocknumber() != 0L) {
            setBlocknumber(other.getBlocknumber());
          }
          if (other.getTimeStamp() != 0L) {
            setTimeStamp(other.getTimeStamp());
          }
          if (other.getNrgConsume() != 0L) {
            setNrgConsume(other.getNrgConsume());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          if (other.getBlockhash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockhash(other.getBlockhash());
          }
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getTransaction parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getTransaction) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private int txIndex_ ;
        /**
         * <code>uint32 txIndex = 1;</code>
         */
        public int getTxIndex() {
          return txIndex_;
        }
        /**
         * <code>uint32 txIndex = 1;</code>
         */
        public Builder setTxIndex(int value) {
          
          txIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txIndex = 1;</code>
         */
        public Builder clearTxIndex() {
          
          txIndex_ = 0;
          onChanged();
          return this;
        }
  
        private long blocknumber_ ;
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public long getBlocknumber() {
          return blocknumber_;
        }
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public Builder setBlocknumber(long value) {
          
          blocknumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public Builder clearBlocknumber() {
          
          blocknumber_ = 0L;
          onChanged();
          return this;
        }
  
        private long timeStamp_ ;
        /**
         * <code>uint64 timeStamp = 3;</code>
         */
        public long getTimeStamp() {
          return timeStamp_;
        }
        /**
         * <code>uint64 timeStamp = 3;</code>
         */
        public Builder setTimeStamp(long value) {
          
          timeStamp_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 timeStamp = 3;</code>
         */
        public Builder clearTimeStamp() {
          
          timeStamp_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgConsume_ ;
        /**
         * <code>uint64 nrgConsume = 4;</code>
         */
        public long getNrgConsume() {
          return nrgConsume_;
        }
        /**
         * <code>uint64 nrgConsume = 4;</code>
         */
        public Builder setNrgConsume(long value) {
          
          nrgConsume_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsume = 4;</code>
         */
        public Builder clearNrgConsume() {
          
          nrgConsume_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 5;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 5;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 5;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString blockhash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockhash = 6;</code>
         */
        public com.google.protobuf.ByteString getBlockhash() {
          return blockhash_;
        }
        /**
         * <code>bytes blockhash = 6;</code>
         */
        public Builder setBlockhash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockhash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockhash = 6;</code>
         */
        public Builder clearBlockhash() {
          
          blockhash_ = getDefaultInstance().getBlockhash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 7;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 7;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 7;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 8;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 8;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 8;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 9;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 9;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 9;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 10;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 10;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 10;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 11;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 11;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 11;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 12;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 12;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 12;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getTransaction)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getTransaction)
      private static final org.aion.api.server.pb.Message.rsp_getTransaction DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getTransaction();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getTransaction getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getTransaction>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getTransaction>() {
        public rsp_getTransaction parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getTransaction(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getTransaction> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getTransaction> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getTransaction getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_unlockAccountOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_unlockAccount)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes account = 1;</code>
       */
      com.google.protobuf.ByteString getAccount();
  
      /**
       * <code>string password = 2;</code>
       */
      java.lang.String getPassword();
      /**
       * <code>string password = 2;</code>
       */
      com.google.protobuf.ByteString
          getPasswordBytes();
  
      /**
       * <code>uint32 duration = 3;</code>
       */
      int getDuration();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_unlockAccount}
     */
    public  static final class req_unlockAccount extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_unlockAccount)
        req_unlockAccountOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_unlockAccount.newBuilder() to construct.
      private req_unlockAccount(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_unlockAccount() {
        account_ = com.google.protobuf.ByteString.EMPTY;
        password_ = "";
        duration_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_unlockAccount(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                account_ = input.readBytes();
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                password_ = s;
                break;
              }
              case 24: {
  
                duration_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_unlockAccount_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_unlockAccount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_unlockAccount.class, org.aion.api.server.pb.Message.req_unlockAccount.Builder.class);
      }
  
      public static final int ACCOUNT_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString account_;
      /**
       * <code>bytes account = 1;</code>
       */
      public com.google.protobuf.ByteString getAccount() {
        return account_;
      }
  
      public static final int PASSWORD_FIELD_NUMBER = 2;
      private volatile java.lang.Object password_;
      /**
       * <code>string password = 2;</code>
       */
      public java.lang.String getPassword() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          password_ = s;
          return s;
        }
      }
      /**
       * <code>string password = 2;</code>
       */
      public com.google.protobuf.ByteString
          getPasswordBytes() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          password_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int DURATION_FIELD_NUMBER = 3;
      private int duration_;
      /**
       * <code>uint32 duration = 3;</code>
       */
      public int getDuration() {
        return duration_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!account_.isEmpty()) {
          output.writeBytes(1, account_);
        }
        if (!getPasswordBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, password_);
        }
        if (duration_ != 0) {
          output.writeUInt32(3, duration_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!account_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, account_);
        }
        if (!getPasswordBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, password_);
        }
        if (duration_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(3, duration_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_unlockAccount)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_unlockAccount other = (org.aion.api.server.pb.Message.req_unlockAccount) obj;
  
        boolean result = true;
        result = result && getAccount()
            .equals(other.getAccount());
        result = result && getPassword()
            .equals(other.getPassword());
        result = result && (getDuration()
            == other.getDuration());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ACCOUNT_FIELD_NUMBER;
        hash = (53 * hash) + getAccount().hashCode();
        hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
        hash = (53 * hash) + getPassword().hashCode();
        hash = (37 * hash) + DURATION_FIELD_NUMBER;
        hash = (53 * hash) + getDuration();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_unlockAccount parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_unlockAccount prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_unlockAccount}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_unlockAccount)
          org.aion.api.server.pb.Message.req_unlockAccountOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_unlockAccount_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_unlockAccount_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_unlockAccount.class, org.aion.api.server.pb.Message.req_unlockAccount.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_unlockAccount.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          account_ = com.google.protobuf.ByteString.EMPTY;
  
          password_ = "";
  
          duration_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_unlockAccount_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_unlockAccount getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_unlockAccount.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_unlockAccount build() {
          org.aion.api.server.pb.Message.req_unlockAccount result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_unlockAccount buildPartial() {
          org.aion.api.server.pb.Message.req_unlockAccount result = new org.aion.api.server.pb.Message.req_unlockAccount(this);
          result.account_ = account_;
          result.password_ = password_;
          result.duration_ = duration_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_unlockAccount) {
            return mergeFrom((org.aion.api.server.pb.Message.req_unlockAccount)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_unlockAccount other) {
          if (other == org.aion.api.server.pb.Message.req_unlockAccount.getDefaultInstance()) return this;
          if (other.getAccount() != com.google.protobuf.ByteString.EMPTY) {
            setAccount(other.getAccount());
          }
          if (!other.getPassword().isEmpty()) {
            password_ = other.password_;
            onChanged();
          }
          if (other.getDuration() != 0) {
            setDuration(other.getDuration());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_unlockAccount parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_unlockAccount) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString account_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes account = 1;</code>
         */
        public com.google.protobuf.ByteString getAccount() {
          return account_;
        }
        /**
         * <code>bytes account = 1;</code>
         */
        public Builder setAccount(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          account_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes account = 1;</code>
         */
        public Builder clearAccount() {
          
          account_ = getDefaultInstance().getAccount();
          onChanged();
          return this;
        }
  
        private java.lang.Object password_ = "";
        /**
         * <code>string password = 2;</code>
         */
        public java.lang.String getPassword() {
          java.lang.Object ref = password_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            password_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public com.google.protobuf.ByteString
            getPasswordBytes() {
          java.lang.Object ref = password_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            password_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPassword(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          password_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder clearPassword() {
          
          password_ = getDefaultInstance().getPassword();
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPasswordBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          password_ = value;
          onChanged();
          return this;
        }
  
        private int duration_ ;
        /**
         * <code>uint32 duration = 3;</code>
         */
        public int getDuration() {
          return duration_;
        }
        /**
         * <code>uint32 duration = 3;</code>
         */
        public Builder setDuration(int value) {
          
          duration_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 duration = 3;</code>
         */
        public Builder clearDuration() {
          
          duration_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_unlockAccount)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_unlockAccount)
      private static final org.aion.api.server.pb.Message.req_unlockAccount DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_unlockAccount();
      }
  
      public static org.aion.api.server.pb.Message.req_unlockAccount getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_unlockAccount>
          PARSER = new com.google.protobuf.AbstractParser<req_unlockAccount>() {
        public req_unlockAccount parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_unlockAccount(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_unlockAccount> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_unlockAccount> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_unlockAccount getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_accountsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_accounts)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated bytes accout = 1;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getAccoutList();
      /**
       * <code>repeated bytes accout = 1;</code>
       */
      int getAccoutCount();
      /**
       * <code>repeated bytes accout = 1;</code>
       */
      com.google.protobuf.ByteString getAccout(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_accounts}
     */
    public  static final class rsp_accounts extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_accounts)
        rsp_accountsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_accounts.newBuilder() to construct.
      private rsp_accounts(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_accounts() {
        accout_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_accounts(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  accout_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000001;
                }
                accout_.add(input.readBytes());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            accout_ = java.util.Collections.unmodifiableList(accout_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accounts_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accounts_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_accounts.class, org.aion.api.server.pb.Message.rsp_accounts.Builder.class);
      }
  
      public static final int ACCOUT_FIELD_NUMBER = 1;
      private java.util.List<com.google.protobuf.ByteString> accout_;
      /**
       * <code>repeated bytes accout = 1;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getAccoutList() {
        return accout_;
      }
      /**
       * <code>repeated bytes accout = 1;</code>
       */
      public int getAccoutCount() {
        return accout_.size();
      }
      /**
       * <code>repeated bytes accout = 1;</code>
       */
      public com.google.protobuf.ByteString getAccout(int index) {
        return accout_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < accout_.size(); i++) {
          output.writeBytes(1, accout_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < accout_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(accout_.get(i));
          }
          size += dataSize;
          size += 1 * getAccoutList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_accounts)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_accounts other = (org.aion.api.server.pb.Message.rsp_accounts) obj;
  
        boolean result = true;
        result = result && getAccoutList()
            .equals(other.getAccoutList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getAccoutCount() > 0) {
          hash = (37 * hash) + ACCOUT_FIELD_NUMBER;
          hash = (53 * hash) + getAccoutList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accounts parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_accounts prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_accounts}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_accounts)
          org.aion.api.server.pb.Message.rsp_accountsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accounts_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accounts_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_accounts.class, org.aion.api.server.pb.Message.rsp_accounts.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_accounts.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          accout_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accounts_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_accounts getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_accounts.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_accounts build() {
          org.aion.api.server.pb.Message.rsp_accounts result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_accounts buildPartial() {
          org.aion.api.server.pb.Message.rsp_accounts result = new org.aion.api.server.pb.Message.rsp_accounts(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            accout_ = java.util.Collections.unmodifiableList(accout_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.accout_ = accout_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_accounts) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_accounts)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_accounts other) {
          if (other == org.aion.api.server.pb.Message.rsp_accounts.getDefaultInstance()) return this;
          if (!other.accout_.isEmpty()) {
            if (accout_.isEmpty()) {
              accout_ = other.accout_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureAccoutIsMutable();
              accout_.addAll(other.accout_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_accounts parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_accounts) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.google.protobuf.ByteString> accout_ = java.util.Collections.emptyList();
        private void ensureAccoutIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            accout_ = new java.util.ArrayList<com.google.protobuf.ByteString>(accout_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getAccoutList() {
          return java.util.Collections.unmodifiableList(accout_);
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public int getAccoutCount() {
          return accout_.size();
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public com.google.protobuf.ByteString getAccout(int index) {
          return accout_.get(index);
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public Builder setAccout(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAccoutIsMutable();
          accout_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public Builder addAccout(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAccoutIsMutable();
          accout_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public Builder addAllAccout(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureAccoutIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, accout_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes accout = 1;</code>
         */
        public Builder clearAccout() {
          accout_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_accounts)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_accounts)
      private static final org.aion.api.server.pb.Message.rsp_accounts DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_accounts();
      }
  
      public static org.aion.api.server.pb.Message.rsp_accounts getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_accounts>
          PARSER = new com.google.protobuf.AbstractParser<rsp_accounts>() {
        public rsp_accounts parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_accounts(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_accounts> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_accounts> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_accounts getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_compileOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_compile)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string code = 1;</code>
       */
      java.lang.String getCode();
      /**
       * <code>string code = 1;</code>
       */
      com.google.protobuf.ByteString
          getCodeBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_compile}
     */
    public  static final class req_compile extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_compile)
        req_compileOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_compile.newBuilder() to construct.
      private req_compile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_compile() {
        code_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_compile(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                code_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compile_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compile_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_compile.class, org.aion.api.server.pb.Message.req_compile.Builder.class);
      }
  
      public static final int CODE_FIELD_NUMBER = 1;
      private volatile java.lang.Object code_;
      /**
       * <code>string code = 1;</code>
       */
      public java.lang.String getCode() {
        java.lang.Object ref = code_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          code_ = s;
          return s;
        }
      }
      /**
       * <code>string code = 1;</code>
       */
      public com.google.protobuf.ByteString
          getCodeBytes() {
        java.lang.Object ref = code_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          code_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getCodeBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, code_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getCodeBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, code_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_compile)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_compile other = (org.aion.api.server.pb.Message.req_compile) obj;
  
        boolean result = true;
        result = result && getCode()
            .equals(other.getCode());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + CODE_FIELD_NUMBER;
        hash = (53 * hash) + getCode().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compile parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_compile parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_compile parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_compile prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_compile}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_compile)
          org.aion.api.server.pb.Message.req_compileOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compile_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compile_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_compile.class, org.aion.api.server.pb.Message.req_compile.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_compile.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          code_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compile_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_compile getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_compile.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_compile build() {
          org.aion.api.server.pb.Message.req_compile result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_compile buildPartial() {
          org.aion.api.server.pb.Message.req_compile result = new org.aion.api.server.pb.Message.req_compile(this);
          result.code_ = code_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_compile) {
            return mergeFrom((org.aion.api.server.pb.Message.req_compile)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_compile other) {
          if (other == org.aion.api.server.pb.Message.req_compile.getDefaultInstance()) return this;
          if (!other.getCode().isEmpty()) {
            code_ = other.code_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_compile parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_compile) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object code_ = "";
        /**
         * <code>string code = 1;</code>
         */
        public java.lang.String getCode() {
          java.lang.Object ref = code_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            code_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string code = 1;</code>
         */
        public com.google.protobuf.ByteString
            getCodeBytes() {
          java.lang.Object ref = code_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            code_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string code = 1;</code>
         */
        public Builder setCode(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          code_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string code = 1;</code>
         */
        public Builder clearCode() {
          
          code_ = getDefaultInstance().getCode();
          onChanged();
          return this;
        }
        /**
         * <code>string code = 1;</code>
         */
        public Builder setCodeBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          code_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_compile)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_compile)
      private static final org.aion.api.server.pb.Message.req_compile DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_compile();
      }
  
      public static org.aion.api.server.pb.Message.req_compile getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_compile>
          PARSER = new com.google.protobuf.AbstractParser<req_compile>() {
        public req_compile parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_compile(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_compile> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_compile> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_compile getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_compileOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_compile)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
      int getConstractsCount();
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
      boolean containsConstracts(
          java.lang.String key);
      /**
       * Use {@link #getConstractsMap()} instead.
       */
      @java.lang.Deprecated
      java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
      getConstracts();
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
      java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
      getConstractsMap();
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
  
      org.aion.api.server.pb.Message.t_Contract getConstractsOrDefault(
          java.lang.String key,
          org.aion.api.server.pb.Message.t_Contract defaultValue);
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
  
      org.aion.api.server.pb.Message.t_Contract getConstractsOrThrow(
          java.lang.String key);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_compile}
     */
    public  static final class rsp_compile extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_compile)
        rsp_compileOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_compile.newBuilder() to construct.
      private rsp_compile(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_compile() {
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_compile(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  constracts_ = com.google.protobuf.MapField.newMapField(
                      ConstractsDefaultEntryHolder.defaultEntry);
                  mutable_bitField0_ |= 0x00000001;
                }
                com.google.protobuf.MapEntry<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
                constracts__ = input.readMessage(
                    ConstractsDefaultEntryHolder.defaultEntry.getParserForType(), extensionRegistry);
                constracts_.getMutableMap().put(
                    constracts__.getKey(), constracts__.getValue());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_compile_descriptor;
      }
  
      @SuppressWarnings({"rawtypes"})
      protected com.google.protobuf.MapField internalGetMapField(
          int number) {
        switch (number) {
          case 1:
            return internalGetConstracts();
          default:
            throw new RuntimeException(
                "Invalid map field number: " + number);
        }
      }
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_compile_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_compile.class, org.aion.api.server.pb.Message.rsp_compile.Builder.class);
      }
  
      public static final int CONSTRACTS_FIELD_NUMBER = 1;
      private static final class ConstractsDefaultEntryHolder {
        static final com.google.protobuf.MapEntry<
            java.lang.String, org.aion.api.server.pb.Message.t_Contract> defaultEntry =
                com.google.protobuf.MapEntry
                .<java.lang.String, org.aion.api.server.pb.Message.t_Contract>newDefaultInstance(
                    org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_compile_ConstractsEntry_descriptor, 
                    com.google.protobuf.WireFormat.FieldType.STRING,
                    "",
                    com.google.protobuf.WireFormat.FieldType.MESSAGE,
                    org.aion.api.server.pb.Message.t_Contract.getDefaultInstance());
      }
      private com.google.protobuf.MapField<
          java.lang.String, org.aion.api.server.pb.Message.t_Contract> constracts_;
      private com.google.protobuf.MapField<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
      internalGetConstracts() {
        if (constracts_ == null) {
          return com.google.protobuf.MapField.emptyMapField(
              ConstractsDefaultEntryHolder.defaultEntry);
        }
        return constracts_;
      }
  
      public int getConstractsCount() {
        return internalGetConstracts().getMap().size();
      }
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
  
      public boolean containsConstracts(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        return internalGetConstracts().getMap().containsKey(key);
      }
      /**
       * Use {@link #getConstractsMap()} instead.
       */
      @java.lang.Deprecated
      public java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> getConstracts() {
        return getConstractsMap();
      }
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
  
      public java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> getConstractsMap() {
        return internalGetConstracts().getMap();
      }
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
  
      public org.aion.api.server.pb.Message.t_Contract getConstractsOrDefault(
          java.lang.String key,
          org.aion.api.server.pb.Message.t_Contract defaultValue) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> map =
            internalGetConstracts().getMap();
        return map.containsKey(key) ? map.get(key) : defaultValue;
      }
      /**
       * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
       */
  
      public org.aion.api.server.pb.Message.t_Contract getConstractsOrThrow(
          java.lang.String key) {
        if (key == null) { throw new java.lang.NullPointerException(); }
        java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> map =
            internalGetConstracts().getMap();
        if (!map.containsKey(key)) {
          throw new java.lang.IllegalArgumentException();
        }
        return map.get(key);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        com.google.protobuf.GeneratedMessageV3
          .serializeStringMapTo(
            output,
            internalGetConstracts(),
            ConstractsDefaultEntryHolder.defaultEntry,
            1);
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (java.util.Map.Entry<java.lang.String, org.aion.api.server.pb.Message.t_Contract> entry
             : internalGetConstracts().getMap().entrySet()) {
          com.google.protobuf.MapEntry<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
          constracts__ = ConstractsDefaultEntryHolder.defaultEntry.newBuilderForType()
              .setKey(entry.getKey())
              .setValue(entry.getValue())
              .build();
          size += com.google.protobuf.CodedOutputStream
              .computeMessageSize(1, constracts__);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_compile)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_compile other = (org.aion.api.server.pb.Message.rsp_compile) obj;
  
        boolean result = true;
        result = result && internalGetConstracts().equals(
            other.internalGetConstracts());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (!internalGetConstracts().getMap().isEmpty()) {
          hash = (37 * hash) + CONSTRACTS_FIELD_NUMBER;
          hash = (53 * hash) + internalGetConstracts().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_compile parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_compile prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_compile}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_compile)
          org.aion.api.server.pb.Message.rsp_compileOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_compile_descriptor;
        }
  
        @SuppressWarnings({"rawtypes"})
        protected com.google.protobuf.MapField internalGetMapField(
            int number) {
          switch (number) {
            case 1:
              return internalGetConstracts();
            default:
              throw new RuntimeException(
                  "Invalid map field number: " + number);
          }
        }
        @SuppressWarnings({"rawtypes"})
        protected com.google.protobuf.MapField internalGetMutableMapField(
            int number) {
          switch (number) {
            case 1:
              return internalGetMutableConstracts();
            default:
              throw new RuntimeException(
                  "Invalid map field number: " + number);
          }
        }
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_compile_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_compile.class, org.aion.api.server.pb.Message.rsp_compile.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_compile.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          internalGetMutableConstracts().clear();
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_compile_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_compile getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_compile.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_compile build() {
          org.aion.api.server.pb.Message.rsp_compile result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_compile buildPartial() {
          org.aion.api.server.pb.Message.rsp_compile result = new org.aion.api.server.pb.Message.rsp_compile(this);
          int from_bitField0_ = bitField0_;
          result.constracts_ = internalGetConstracts();
          result.constracts_.makeImmutable();
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_compile) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_compile)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_compile other) {
          if (other == org.aion.api.server.pb.Message.rsp_compile.getDefaultInstance()) return this;
          internalGetMutableConstracts().mergeFrom(
              other.internalGetConstracts());
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_compile parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_compile) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.MapField<
            java.lang.String, org.aion.api.server.pb.Message.t_Contract> constracts_;
        private com.google.protobuf.MapField<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
        internalGetConstracts() {
          if (constracts_ == null) {
            return com.google.protobuf.MapField.emptyMapField(
                ConstractsDefaultEntryHolder.defaultEntry);
          }
          return constracts_;
        }
        private com.google.protobuf.MapField<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
        internalGetMutableConstracts() {
          onChanged();;
          if (constracts_ == null) {
            constracts_ = com.google.protobuf.MapField.newMapField(
                ConstractsDefaultEntryHolder.defaultEntry);
          }
          if (!constracts_.isMutable()) {
            constracts_ = constracts_.copy();
          }
          return constracts_;
        }
  
        public int getConstractsCount() {
          return internalGetConstracts().getMap().size();
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
  
        public boolean containsConstracts(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          return internalGetConstracts().getMap().containsKey(key);
        }
        /**
         * Use {@link #getConstractsMap()} instead.
         */
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> getConstracts() {
          return getConstractsMap();
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
  
        public java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> getConstractsMap() {
          return internalGetConstracts().getMap();
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
  
        public org.aion.api.server.pb.Message.t_Contract getConstractsOrDefault(
            java.lang.String key,
            org.aion.api.server.pb.Message.t_Contract defaultValue) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> map =
              internalGetConstracts().getMap();
          return map.containsKey(key) ? map.get(key) : defaultValue;
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
  
        public org.aion.api.server.pb.Message.t_Contract getConstractsOrThrow(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> map =
              internalGetConstracts().getMap();
          if (!map.containsKey(key)) {
            throw new java.lang.IllegalArgumentException();
          }
          return map.get(key);
        }
  
        public Builder clearConstracts() {
          internalGetMutableConstracts().getMutableMap()
              .clear();
          return this;
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
  
        public Builder removeConstracts(
            java.lang.String key) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          internalGetMutableConstracts().getMutableMap()
              .remove(key);
          return this;
        }
        /**
         * Use alternate mutation accessors instead.
         */
        @java.lang.Deprecated
        public java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract>
        getMutableConstracts() {
          return internalGetMutableConstracts().getMutableMap();
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
        public Builder putConstracts(
            java.lang.String key,
            org.aion.api.server.pb.Message.t_Contract value) {
          if (key == null) { throw new java.lang.NullPointerException(); }
          if (value == null) { throw new java.lang.NullPointerException(); }
          internalGetMutableConstracts().getMutableMap()
              .put(key, value);
          return this;
        }
        /**
         * <code>map&lt;string, .org.aion.api.server.pb.t_Contract&gt; constracts = 1;</code>
         */
  
        public Builder putAllConstracts(
            java.util.Map<java.lang.String, org.aion.api.server.pb.Message.t_Contract> values) {
          internalGetMutableConstracts().getMutableMap()
              .putAll(values);
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_compile)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_compile)
      private static final org.aion.api.server.pb.Message.rsp_compile DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_compile();
      }
  
      public static org.aion.api.server.pb.Message.rsp_compile getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_compile>
          PARSER = new com.google.protobuf.AbstractParser<rsp_compile>() {
        public rsp_compile parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_compile(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_compile> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_compile> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_compile getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getCodeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getCode)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>uint64 blocknumber = 2;</code>
       */
      long getBlocknumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getCode}
     */
    public  static final class req_getCode extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getCode)
        req_getCodeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getCode.newBuilder() to construct.
      private req_getCode(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getCode() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        blocknumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getCode(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 16: {
  
                blocknumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getCode_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getCode_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getCode.class, org.aion.api.server.pb.Message.req_getCode.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 2;
      private long blocknumber_;
      /**
       * <code>uint64 blocknumber = 2;</code>
       */
      public long getBlocknumber() {
        return blocknumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (blocknumber_ != 0L) {
          output.writeUInt64(2, blocknumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (blocknumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blocknumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getCode)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getCode other = (org.aion.api.server.pb.Message.req_getCode) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && (getBlocknumber()
            == other.getBlocknumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlocknumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getCode parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getCode prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getCode}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getCode)
          org.aion.api.server.pb.Message.req_getCodeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getCode_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getCode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getCode.class, org.aion.api.server.pb.Message.req_getCode.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getCode.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          blocknumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getCode_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getCode getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getCode.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getCode build() {
          org.aion.api.server.pb.Message.req_getCode result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getCode buildPartial() {
          org.aion.api.server.pb.Message.req_getCode result = new org.aion.api.server.pb.Message.req_getCode(this);
          result.address_ = address_;
          result.blocknumber_ = blocknumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getCode) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getCode)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getCode other) {
          if (other == org.aion.api.server.pb.Message.req_getCode.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getBlocknumber() != 0L) {
            setBlocknumber(other.getBlocknumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getCode parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getCode) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private long blocknumber_ ;
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public long getBlocknumber() {
          return blocknumber_;
        }
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public Builder setBlocknumber(long value) {
          
          blocknumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public Builder clearBlocknumber() {
          
          blocknumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getCode)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getCode)
      private static final org.aion.api.server.pb.Message.req_getCode DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getCode();
      }
  
      public static org.aion.api.server.pb.Message.req_getCode getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getCode>
          PARSER = new com.google.protobuf.AbstractParser<req_getCode>() {
        public req_getCode parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getCode(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getCode> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getCode> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getCode getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getCodeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getCode)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes code = 1;</code>
       */
      com.google.protobuf.ByteString getCode();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getCode}
     */
    public  static final class rsp_getCode extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getCode)
        rsp_getCodeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getCode.newBuilder() to construct.
      private rsp_getCode(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getCode() {
        code_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getCode(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                code_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCode_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCode_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getCode.class, org.aion.api.server.pb.Message.rsp_getCode.Builder.class);
      }
  
      public static final int CODE_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString code_;
      /**
       * <code>bytes code = 1;</code>
       */
      public com.google.protobuf.ByteString getCode() {
        return code_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!code_.isEmpty()) {
          output.writeBytes(1, code_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!code_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, code_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getCode)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getCode other = (org.aion.api.server.pb.Message.rsp_getCode) obj;
  
        boolean result = true;
        result = result && getCode()
            .equals(other.getCode());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + CODE_FIELD_NUMBER;
        hash = (53 * hash) + getCode().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCode parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getCode prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getCode}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getCode)
          org.aion.api.server.pb.Message.rsp_getCodeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCode_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCode_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getCode.class, org.aion.api.server.pb.Message.rsp_getCode.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getCode.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          code_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCode_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getCode getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getCode.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getCode build() {
          org.aion.api.server.pb.Message.rsp_getCode result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getCode buildPartial() {
          org.aion.api.server.pb.Message.rsp_getCode result = new org.aion.api.server.pb.Message.rsp_getCode(this);
          result.code_ = code_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getCode) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getCode)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getCode other) {
          if (other == org.aion.api.server.pb.Message.rsp_getCode.getDefaultInstance()) return this;
          if (other.getCode() != com.google.protobuf.ByteString.EMPTY) {
            setCode(other.getCode());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getCode parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getCode) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString code_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes code = 1;</code>
         */
        public com.google.protobuf.ByteString getCode() {
          return code_;
        }
        /**
         * <code>bytes code = 1;</code>
         */
        public Builder setCode(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          code_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes code = 1;</code>
         */
        public Builder clearCode() {
          
          code_ = getDefaultInstance().getCode();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getCode)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getCode)
      private static final org.aion.api.server.pb.Message.rsp_getCode DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getCode();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getCode getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getCode>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getCode>() {
        public rsp_getCode parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getCode(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getCode> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getCode> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getCode getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_contractDeployOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_contractDeploy)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 nrgLimit = 1;</code>
       */
      long getNrgLimit();
  
      /**
       * <code>uint64 nrgPrice = 2;</code>
       */
      long getNrgPrice();
  
      /**
       * <code>bytes from = 3;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes data = 4;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes value = 5;</code>
       */
      com.google.protobuf.ByteString getValue();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_contractDeploy}
     */
    public  static final class req_contractDeploy extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_contractDeploy)
        req_contractDeployOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_contractDeploy.newBuilder() to construct.
      private req_contractDeploy(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_contractDeploy() {
        nrgLimit_ = 0L;
        nrgPrice_ = 0L;
        from_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_contractDeploy(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                nrgLimit_ = input.readUInt64();
                break;
              }
              case 16: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
              case 26: {
  
                from_ = input.readBytes();
                break;
              }
              case 34: {
  
                data_ = input.readBytes();
                break;
              }
              case 42: {
  
                value_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_contractDeploy_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_contractDeploy_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_contractDeploy.class, org.aion.api.server.pb.Message.req_contractDeploy.Builder.class);
      }
  
      public static final int NRGLIMIT_FIELD_NUMBER = 1;
      private long nrgLimit_;
      /**
       * <code>uint64 nrgLimit = 1;</code>
       */
      public long getNrgLimit() {
        return nrgLimit_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 2;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 2;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      public static final int FROM_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 3;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int DATA_FIELD_NUMBER = 4;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 4;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 5;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (nrgLimit_ != 0L) {
          output.writeUInt64(1, nrgLimit_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(2, nrgPrice_);
        }
        if (!from_.isEmpty()) {
          output.writeBytes(3, from_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(4, data_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(5, value_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (nrgLimit_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, nrgLimit_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, nrgPrice_);
        }
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, from_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, data_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, value_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_contractDeploy)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_contractDeploy other = (org.aion.api.server.pb.Message.req_contractDeploy) obj;
  
        boolean result = true;
        result = result && (getNrgLimit()
            == other.getNrgLimit());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getData()
            .equals(other.getData());
        result = result && getValue()
            .equals(other.getValue());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + NRGLIMIT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgLimit());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_contractDeploy parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_contractDeploy prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_contractDeploy}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_contractDeploy)
          org.aion.api.server.pb.Message.req_contractDeployOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_contractDeploy_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_contractDeploy_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_contractDeploy.class, org.aion.api.server.pb.Message.req_contractDeploy.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_contractDeploy.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          nrgLimit_ = 0L;
  
          nrgPrice_ = 0L;
  
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_contractDeploy_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_contractDeploy getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_contractDeploy.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_contractDeploy build() {
          org.aion.api.server.pb.Message.req_contractDeploy result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_contractDeploy buildPartial() {
          org.aion.api.server.pb.Message.req_contractDeploy result = new org.aion.api.server.pb.Message.req_contractDeploy(this);
          result.nrgLimit_ = nrgLimit_;
          result.nrgPrice_ = nrgPrice_;
          result.from_ = from_;
          result.data_ = data_;
          result.value_ = value_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_contractDeploy) {
            return mergeFrom((org.aion.api.server.pb.Message.req_contractDeploy)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_contractDeploy other) {
          if (other == org.aion.api.server.pb.Message.req_contractDeploy.getDefaultInstance()) return this;
          if (other.getNrgLimit() != 0L) {
            setNrgLimit(other.getNrgLimit());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_contractDeploy parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_contractDeploy) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long nrgLimit_ ;
        /**
         * <code>uint64 nrgLimit = 1;</code>
         */
        public long getNrgLimit() {
          return nrgLimit_;
        }
        /**
         * <code>uint64 nrgLimit = 1;</code>
         */
        public Builder setNrgLimit(long value) {
          
          nrgLimit_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgLimit = 1;</code>
         */
        public Builder clearNrgLimit() {
          
          nrgLimit_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 2;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 2;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 2;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 3;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 3;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 3;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 4;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 4;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 4;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 5;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 5;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 5;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_contractDeploy)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_contractDeploy)
      private static final org.aion.api.server.pb.Message.req_contractDeploy DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_contractDeploy();
      }
  
      public static org.aion.api.server.pb.Message.req_contractDeploy getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_contractDeploy>
          PARSER = new com.google.protobuf.AbstractParser<req_contractDeploy>() {
        public req_contractDeploy parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_contractDeploy(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_contractDeploy> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_contractDeploy> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_contractDeploy getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_contractDeployOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_contractDeploy)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
  
      /**
       * <code>bytes contractAddress = 2;</code>
       */
      com.google.protobuf.ByteString getContractAddress();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_contractDeploy}
     */
    public  static final class rsp_contractDeploy extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_contractDeploy)
        rsp_contractDeployOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_contractDeploy.newBuilder() to construct.
      private rsp_contractDeploy(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_contractDeploy() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
        contractAddress_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_contractDeploy(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
              case 18: {
  
                contractAddress_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_contractDeploy_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_contractDeploy_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_contractDeploy.class, org.aion.api.server.pb.Message.rsp_contractDeploy.Builder.class);
      }
  
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      public static final int CONTRACTADDRESS_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString contractAddress_;
      /**
       * <code>bytes contractAddress = 2;</code>
       */
      public com.google.protobuf.ByteString getContractAddress() {
        return contractAddress_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        if (!contractAddress_.isEmpty()) {
          output.writeBytes(2, contractAddress_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        if (!contractAddress_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, contractAddress_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_contractDeploy)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_contractDeploy other = (org.aion.api.server.pb.Message.rsp_contractDeploy) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && getContractAddress()
            .equals(other.getContractAddress());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (37 * hash) + CONTRACTADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getContractAddress().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_contractDeploy parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_contractDeploy prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_contractDeploy}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_contractDeploy)
          org.aion.api.server.pb.Message.rsp_contractDeployOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_contractDeploy_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_contractDeploy_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_contractDeploy.class, org.aion.api.server.pb.Message.rsp_contractDeploy.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_contractDeploy.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          contractAddress_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_contractDeploy_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_contractDeploy getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_contractDeploy.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_contractDeploy build() {
          org.aion.api.server.pb.Message.rsp_contractDeploy result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_contractDeploy buildPartial() {
          org.aion.api.server.pb.Message.rsp_contractDeploy result = new org.aion.api.server.pb.Message.rsp_contractDeploy(this);
          result.txHash_ = txHash_;
          result.contractAddress_ = contractAddress_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_contractDeploy) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_contractDeploy)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_contractDeploy other) {
          if (other == org.aion.api.server.pb.Message.rsp_contractDeploy.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          if (other.getContractAddress() != com.google.protobuf.ByteString.EMPTY) {
            setContractAddress(other.getContractAddress());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_contractDeploy parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_contractDeploy) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString contractAddress_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes contractAddress = 2;</code>
         */
        public com.google.protobuf.ByteString getContractAddress() {
          return contractAddress_;
        }
        /**
         * <code>bytes contractAddress = 2;</code>
         */
        public Builder setContractAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          contractAddress_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes contractAddress = 2;</code>
         */
        public Builder clearContractAddress() {
          
          contractAddress_ = getDefaultInstance().getContractAddress();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_contractDeploy)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_contractDeploy)
      private static final org.aion.api.server.pb.Message.rsp_contractDeploy DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_contractDeploy();
      }
  
      public static org.aion.api.server.pb.Message.rsp_contractDeploy getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_contractDeploy>
          PARSER = new com.google.protobuf.AbstractParser<rsp_contractDeploy>() {
        public rsp_contractDeploy parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_contractDeploy(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_contractDeploy> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_contractDeploy> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_contractDeploy getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_callOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_call)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes from = 1;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes to = 2;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes data = 3;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>bytes value = 4;</code>
       */
      com.google.protobuf.ByteString getValue();
  
      /**
       * <code>uint64 nrg = 5;</code>
       */
      long getNrg();
  
      /**
       * <code>uint64 nrgPrice = 6;</code>
       */
      long getNrgPrice();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_call}
     */
    public  static final class req_call extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_call)
        req_callOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_call.newBuilder() to construct.
      private req_call(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_call() {
        from_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
        nrg_ = 0L;
        nrgPrice_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_call(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                from_ = input.readBytes();
                break;
              }
              case 18: {
  
                to_ = input.readBytes();
                break;
              }
              case 26: {
  
                data_ = input.readBytes();
                break;
              }
              case 34: {
  
                value_ = input.readBytes();
                break;
              }
              case 40: {
  
                nrg_ = input.readUInt64();
                break;
              }
              case 48: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_call_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_call_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_call.class, org.aion.api.server.pb.Message.req_call.Builder.class);
      }
  
      public static final int FROM_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 1;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TO_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 2;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int DATA_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 3;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 4;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 4;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      public static final int NRG_FIELD_NUMBER = 5;
      private long nrg_;
      /**
       * <code>uint64 nrg = 5;</code>
       */
      public long getNrg() {
        return nrg_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 6;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 6;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!from_.isEmpty()) {
          output.writeBytes(1, from_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(2, to_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(3, data_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(4, value_);
        }
        if (nrg_ != 0L) {
          output.writeUInt64(5, nrg_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(6, nrgPrice_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, from_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, to_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, data_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, value_);
        }
        if (nrg_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(5, nrg_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(6, nrgPrice_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_call)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_call other = (org.aion.api.server.pb.Message.req_call) obj;
  
        boolean result = true;
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getData()
            .equals(other.getData());
        result = result && getValue()
            .equals(other.getValue());
        result = result && (getNrg()
            == other.getNrg());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (37 * hash) + NRG_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrg());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_call parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_call parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_call parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_call prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_call}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_call)
          org.aion.api.server.pb.Message.req_callOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_call_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_call_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_call.class, org.aion.api.server.pb.Message.req_call.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_call.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          nrg_ = 0L;
  
          nrgPrice_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_call_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_call getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_call.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_call build() {
          org.aion.api.server.pb.Message.req_call result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_call buildPartial() {
          org.aion.api.server.pb.Message.req_call result = new org.aion.api.server.pb.Message.req_call(this);
          result.from_ = from_;
          result.to_ = to_;
          result.data_ = data_;
          result.value_ = value_;
          result.nrg_ = nrg_;
          result.nrgPrice_ = nrgPrice_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_call) {
            return mergeFrom((org.aion.api.server.pb.Message.req_call)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_call other) {
          if (other == org.aion.api.server.pb.Message.req_call.getDefaultInstance()) return this;
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          if (other.getNrg() != 0L) {
            setNrg(other.getNrg());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_call parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_call) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 1;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 1;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 1;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 2;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 2;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 2;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 3;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 3;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 3;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 4;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 4;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 4;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
  
        private long nrg_ ;
        /**
         * <code>uint64 nrg = 5;</code>
         */
        public long getNrg() {
          return nrg_;
        }
        /**
         * <code>uint64 nrg = 5;</code>
         */
        public Builder setNrg(long value) {
          
          nrg_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrg = 5;</code>
         */
        public Builder clearNrg() {
          
          nrg_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 6;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 6;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 6;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_call)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_call)
      private static final org.aion.api.server.pb.Message.req_call DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_call();
      }
  
      public static org.aion.api.server.pb.Message.req_call getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_call>
          PARSER = new com.google.protobuf.AbstractParser<req_call>() {
        public req_call parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_call(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_call> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_call> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_call getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_callOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_call)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes result = 1;</code>
       */
      com.google.protobuf.ByteString getResult();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_call}
     */
    public  static final class rsp_call extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_call)
        rsp_callOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_call.newBuilder() to construct.
      private rsp_call(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_call() {
        result_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_call(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                result_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_call_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_call_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_call.class, org.aion.api.server.pb.Message.rsp_call.Builder.class);
      }
  
      public static final int RESULT_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString result_;
      /**
       * <code>bytes result = 1;</code>
       */
      public com.google.protobuf.ByteString getResult() {
        return result_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!result_.isEmpty()) {
          output.writeBytes(1, result_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!result_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, result_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_call)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_call other = (org.aion.api.server.pb.Message.rsp_call) obj;
  
        boolean result = true;
        result = result && getResult()
            .equals(other.getResult());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + RESULT_FIELD_NUMBER;
        hash = (53 * hash) + getResult().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_call parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_call prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_call}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_call)
          org.aion.api.server.pb.Message.rsp_callOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_call_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_call_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_call.class, org.aion.api.server.pb.Message.rsp_call.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_call.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          result_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_call_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_call getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_call.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_call build() {
          org.aion.api.server.pb.Message.rsp_call result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_call buildPartial() {
          org.aion.api.server.pb.Message.rsp_call result = new org.aion.api.server.pb.Message.rsp_call(this);
          result.result_ = result_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_call) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_call)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_call other) {
          if (other == org.aion.api.server.pb.Message.rsp_call.getDefaultInstance()) return this;
          if (other.getResult() != com.google.protobuf.ByteString.EMPTY) {
            setResult(other.getResult());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_call parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_call) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString result_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes result = 1;</code>
         */
        public com.google.protobuf.ByteString getResult() {
          return result_;
        }
        /**
         * <code>bytes result = 1;</code>
         */
        public Builder setResult(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          result_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes result = 1;</code>
         */
        public Builder clearResult() {
          
          result_ = getDefaultInstance().getResult();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_call)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_call)
      private static final org.aion.api.server.pb.Message.rsp_call DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_call();
      }
  
      public static org.aion.api.server.pb.Message.rsp_call getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_call>
          PARSER = new com.google.protobuf.AbstractParser<rsp_call>() {
        public rsp_call parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_call(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_call> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_call> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_call getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes blockHash = 1;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockByHash}
     */
    public  static final class req_getBlockByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockByHash)
        req_getBlockByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockByHash.newBuilder() to construct.
      private req_getBlockByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockByHash() {
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                blockHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockByHash.class, org.aion.api.server.pb.Message.req_getBlockByHash.Builder.class);
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 1;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!blockHash_.isEmpty()) {
          output.writeBytes(1, blockHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, blockHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockByHash other = (org.aion.api.server.pb.Message.req_getBlockByHash) obj;
  
        boolean result = true;
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockByHash)
          org.aion.api.server.pb.Message.req_getBlockByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockByHash.class, org.aion.api.server.pb.Message.req_getBlockByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockByHash build() {
          org.aion.api.server.pb.Message.req_getBlockByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockByHash buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockByHash result = new org.aion.api.server.pb.Message.req_getBlockByHash(this);
          result.blockHash_ = blockHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockByHash other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockByHash.getDefaultInstance()) return this;
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockByHash)
      private static final org.aion.api.server.pb.Message.req_getBlockByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockByHash();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockByHash>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockByHash>() {
        public req_getBlockByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockHeaderByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockHeaderByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes blockHash = 1;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockHeaderByHash}
     */
    public  static final class req_getBlockHeaderByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockHeaderByHash)
        req_getBlockHeaderByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockHeaderByHash.newBuilder() to construct.
      private req_getBlockHeaderByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockHeaderByHash() {
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockHeaderByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                blockHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockHeaderByHash.class, org.aion.api.server.pb.Message.req_getBlockHeaderByHash.Builder.class);
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 1;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!blockHash_.isEmpty()) {
          output.writeBytes(1, blockHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, blockHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockHeaderByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockHeaderByHash other = (org.aion.api.server.pb.Message.req_getBlockHeaderByHash) obj;
  
        boolean result = true;
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockHeaderByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockHeaderByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockHeaderByHash)
          org.aion.api.server.pb.Message.req_getBlockHeaderByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockHeaderByHash.class, org.aion.api.server.pb.Message.req_getBlockHeaderByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockHeaderByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockHeaderByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockHeaderByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockHeaderByHash build() {
          org.aion.api.server.pb.Message.req_getBlockHeaderByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockHeaderByHash buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockHeaderByHash result = new org.aion.api.server.pb.Message.req_getBlockHeaderByHash(this);
          result.blockHash_ = blockHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockHeaderByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockHeaderByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockHeaderByHash other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockHeaderByHash.getDefaultInstance()) return this;
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockHeaderByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockHeaderByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockHeaderByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockHeaderByHash)
      private static final org.aion.api.server.pb.Message.req_getBlockHeaderByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockHeaderByHash();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockHeaderByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockHeaderByHash>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockHeaderByHash>() {
        public req_getBlockHeaderByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockHeaderByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockHeaderByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockHeaderByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockHeaderByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getTransactionCountOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getTransactionCount)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>uint64 blocknumber = 2;</code>
       */
      long getBlocknumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getTransactionCount}
     */
    public  static final class req_getTransactionCount extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getTransactionCount)
        req_getTransactionCountOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getTransactionCount.newBuilder() to construct.
      private req_getTransactionCount(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getTransactionCount() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        blocknumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getTransactionCount(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 16: {
  
                blocknumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCount_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getTransactionCount.class, org.aion.api.server.pb.Message.req_getTransactionCount.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 2;
      private long blocknumber_;
      /**
       * <code>uint64 blocknumber = 2;</code>
       */
      public long getBlocknumber() {
        return blocknumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (blocknumber_ != 0L) {
          output.writeUInt64(2, blocknumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (blocknumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blocknumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getTransactionCount)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getTransactionCount other = (org.aion.api.server.pb.Message.req_getTransactionCount) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && (getBlocknumber()
            == other.getBlocknumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlocknumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCount parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getTransactionCount prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getTransactionCount}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getTransactionCount)
          org.aion.api.server.pb.Message.req_getTransactionCountOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCount_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCount_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getTransactionCount.class, org.aion.api.server.pb.Message.req_getTransactionCount.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getTransactionCount.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          blocknumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCount_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionCount getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getTransactionCount.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionCount build() {
          org.aion.api.server.pb.Message.req_getTransactionCount result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionCount buildPartial() {
          org.aion.api.server.pb.Message.req_getTransactionCount result = new org.aion.api.server.pb.Message.req_getTransactionCount(this);
          result.address_ = address_;
          result.blocknumber_ = blocknumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getTransactionCount) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getTransactionCount)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getTransactionCount other) {
          if (other == org.aion.api.server.pb.Message.req_getTransactionCount.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getBlocknumber() != 0L) {
            setBlocknumber(other.getBlocknumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getTransactionCount parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getTransactionCount) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private long blocknumber_ ;
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public long getBlocknumber() {
          return blocknumber_;
        }
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public Builder setBlocknumber(long value) {
          
          blocknumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blocknumber = 2;</code>
         */
        public Builder clearBlocknumber() {
          
          blocknumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getTransactionCount)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getTransactionCount)
      private static final org.aion.api.server.pb.Message.req_getTransactionCount DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getTransactionCount();
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionCount getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getTransactionCount>
          PARSER = new com.google.protobuf.AbstractParser<req_getTransactionCount>() {
        public req_getTransactionCount parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getTransactionCount(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getTransactionCount> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getTransactionCount> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getTransactionCount getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getTransactionCountOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getTransactionCount)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 txCount = 1;</code>
       */
      long getTxCount();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getTransactionCount}
     */
    public  static final class rsp_getTransactionCount extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getTransactionCount)
        rsp_getTransactionCountOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getTransactionCount.newBuilder() to construct.
      private rsp_getTransactionCount(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getTransactionCount() {
        txCount_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getTransactionCount(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                txCount_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionCount_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionCount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getTransactionCount.class, org.aion.api.server.pb.Message.rsp_getTransactionCount.Builder.class);
      }
  
      public static final int TXCOUNT_FIELD_NUMBER = 1;
      private long txCount_;
      /**
       * <code>uint64 txCount = 1;</code>
       */
      public long getTxCount() {
        return txCount_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (txCount_ != 0L) {
          output.writeUInt64(1, txCount_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (txCount_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, txCount_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getTransactionCount)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getTransactionCount other = (org.aion.api.server.pb.Message.rsp_getTransactionCount) obj;
  
        boolean result = true;
        result = result && (getTxCount()
            == other.getTxCount());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXCOUNT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getTxCount());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getTransactionCount prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getTransactionCount}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getTransactionCount)
          org.aion.api.server.pb.Message.rsp_getTransactionCountOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionCount_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionCount_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getTransactionCount.class, org.aion.api.server.pb.Message.rsp_getTransactionCount.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getTransactionCount.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txCount_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionCount_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransactionCount getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getTransactionCount.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransactionCount build() {
          org.aion.api.server.pb.Message.rsp_getTransactionCount result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransactionCount buildPartial() {
          org.aion.api.server.pb.Message.rsp_getTransactionCount result = new org.aion.api.server.pb.Message.rsp_getTransactionCount(this);
          result.txCount_ = txCount_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getTransactionCount) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getTransactionCount)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getTransactionCount other) {
          if (other == org.aion.api.server.pb.Message.rsp_getTransactionCount.getDefaultInstance()) return this;
          if (other.getTxCount() != 0L) {
            setTxCount(other.getTxCount());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getTransactionCount parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getTransactionCount) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long txCount_ ;
        /**
         * <code>uint64 txCount = 1;</code>
         */
        public long getTxCount() {
          return txCount_;
        }
        /**
         * <code>uint64 txCount = 1;</code>
         */
        public Builder setTxCount(long value) {
          
          txCount_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 txCount = 1;</code>
         */
        public Builder clearTxCount() {
          
          txCount_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getTransactionCount)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getTransactionCount)
      private static final org.aion.api.server.pb.Message.rsp_getTransactionCount DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getTransactionCount();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getTransactionCount getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getTransactionCount>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getTransactionCount>() {
        public rsp_getTransactionCount parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getTransactionCount(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getTransactionCount> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getTransactionCount> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getTransactionCount getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getTransactionCountByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getTransactionCountByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getTransactionCountByHash}
     */
    public  static final class req_getTransactionCountByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getTransactionCountByHash)
        req_getTransactionCountByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getTransactionCountByHash.newBuilder() to construct.
      private req_getTransactionCountByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getTransactionCountByHash() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getTransactionCountByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getTransactionCountByHash.class, org.aion.api.server.pb.Message.req_getTransactionCountByHash.Builder.class);
      }
  
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getTransactionCountByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getTransactionCountByHash other = (org.aion.api.server.pb.Message.req_getTransactionCountByHash) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getTransactionCountByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getTransactionCountByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getTransactionCountByHash)
          org.aion.api.server.pb.Message.req_getTransactionCountByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getTransactionCountByHash.class, org.aion.api.server.pb.Message.req_getTransactionCountByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getTransactionCountByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionCountByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getTransactionCountByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionCountByHash build() {
          org.aion.api.server.pb.Message.req_getTransactionCountByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionCountByHash buildPartial() {
          org.aion.api.server.pb.Message.req_getTransactionCountByHash result = new org.aion.api.server.pb.Message.req_getTransactionCountByHash(this);
          result.txHash_ = txHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getTransactionCountByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getTransactionCountByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getTransactionCountByHash other) {
          if (other == org.aion.api.server.pb.Message.req_getTransactionCountByHash.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getTransactionCountByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getTransactionCountByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getTransactionCountByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getTransactionCountByHash)
      private static final org.aion.api.server.pb.Message.req_getTransactionCountByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getTransactionCountByHash();
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionCountByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getTransactionCountByHash>
          PARSER = new com.google.protobuf.AbstractParser<req_getTransactionCountByHash>() {
        public req_getTransactionCountByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getTransactionCountByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getTransactionCountByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getTransactionCountByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getTransactionCountByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_blockNumberOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_blockNumber)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blocknumber = 1;</code>
       */
      long getBlocknumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_blockNumber}
     */
    public  static final class rsp_blockNumber extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_blockNumber)
        rsp_blockNumberOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_blockNumber.newBuilder() to construct.
      private rsp_blockNumber(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_blockNumber() {
        blocknumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_blockNumber(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blocknumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_blockNumber_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_blockNumber_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_blockNumber.class, org.aion.api.server.pb.Message.rsp_blockNumber.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blocknumber_;
      /**
       * <code>uint64 blocknumber = 1;</code>
       */
      public long getBlocknumber() {
        return blocknumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blocknumber_ != 0L) {
          output.writeUInt64(1, blocknumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blocknumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blocknumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_blockNumber)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_blockNumber other = (org.aion.api.server.pb.Message.rsp_blockNumber) obj;
  
        boolean result = true;
        result = result && (getBlocknumber()
            == other.getBlocknumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlocknumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_blockNumber parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_blockNumber prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_blockNumber}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_blockNumber)
          org.aion.api.server.pb.Message.rsp_blockNumberOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_blockNumber_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_blockNumber_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_blockNumber.class, org.aion.api.server.pb.Message.rsp_blockNumber.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_blockNumber.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blocknumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_blockNumber_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_blockNumber getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_blockNumber.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_blockNumber build() {
          org.aion.api.server.pb.Message.rsp_blockNumber result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_blockNumber buildPartial() {
          org.aion.api.server.pb.Message.rsp_blockNumber result = new org.aion.api.server.pb.Message.rsp_blockNumber(this);
          result.blocknumber_ = blocknumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_blockNumber) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_blockNumber)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_blockNumber other) {
          if (other == org.aion.api.server.pb.Message.rsp_blockNumber.getDefaultInstance()) return this;
          if (other.getBlocknumber() != 0L) {
            setBlocknumber(other.getBlocknumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_blockNumber parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_blockNumber) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blocknumber_ ;
        /**
         * <code>uint64 blocknumber = 1;</code>
         */
        public long getBlocknumber() {
          return blocknumber_;
        }
        /**
         * <code>uint64 blocknumber = 1;</code>
         */
        public Builder setBlocknumber(long value) {
          
          blocknumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blocknumber = 1;</code>
         */
        public Builder clearBlocknumber() {
          
          blocknumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_blockNumber)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_blockNumber)
      private static final org.aion.api.server.pb.Message.rsp_blockNumber DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_blockNumber();
      }
  
      public static org.aion.api.server.pb.Message.rsp_blockNumber getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_blockNumber>
          PARSER = new com.google.protobuf.AbstractParser<rsp_blockNumber>() {
        public rsp_blockNumber parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_blockNumber(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_blockNumber> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_blockNumber> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_blockNumber getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBalanceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBalance)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>uint64 blockNumber = 2;</code>
       */
      long getBlockNumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBalance}
     */
    public  static final class req_getBalance extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBalance)
        req_getBalanceOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBalance.newBuilder() to construct.
      private req_getBalance(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBalance() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        blockNumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBalance(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 16: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBalance_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBalance_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBalance.class, org.aion.api.server.pb.Message.req_getBalance.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 2;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 2;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (blockNumber_ != 0L) {
          output.writeUInt64(2, blockNumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blockNumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBalance)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBalance other = (org.aion.api.server.pb.Message.req_getBalance) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBalance parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBalance prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBalance}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBalance)
          org.aion.api.server.pb.Message.req_getBalanceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBalance_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBalance_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBalance.class, org.aion.api.server.pb.Message.req_getBalance.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBalance.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          blockNumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBalance_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBalance getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBalance.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBalance build() {
          org.aion.api.server.pb.Message.req_getBalance result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBalance buildPartial() {
          org.aion.api.server.pb.Message.req_getBalance result = new org.aion.api.server.pb.Message.req_getBalance(this);
          result.address_ = address_;
          result.blockNumber_ = blockNumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBalance) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBalance)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBalance other) {
          if (other == org.aion.api.server.pb.Message.req_getBalance.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBalance parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBalance) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 2;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 2;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 2;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBalance)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBalance)
      private static final org.aion.api.server.pb.Message.req_getBalance DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBalance();
      }
  
      public static org.aion.api.server.pb.Message.req_getBalance getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBalance>
          PARSER = new com.google.protobuf.AbstractParser<req_getBalance>() {
        public req_getBalance parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBalance(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBalance> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBalance> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBalance getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBalanceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBalance)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes balance = 1;</code>
       */
      com.google.protobuf.ByteString getBalance();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBalance}
     */
    public  static final class rsp_getBalance extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBalance)
        rsp_getBalanceOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBalance.newBuilder() to construct.
      private rsp_getBalance(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBalance() {
        balance_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBalance(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                balance_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBalance_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBalance_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBalance.class, org.aion.api.server.pb.Message.rsp_getBalance.Builder.class);
      }
  
      public static final int BALANCE_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString balance_;
      /**
       * <code>bytes balance = 1;</code>
       */
      public com.google.protobuf.ByteString getBalance() {
        return balance_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!balance_.isEmpty()) {
          output.writeBytes(1, balance_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!balance_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, balance_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBalance)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBalance other = (org.aion.api.server.pb.Message.rsp_getBalance) obj;
  
        boolean result = true;
        result = result && getBalance()
            .equals(other.getBalance());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BALANCE_FIELD_NUMBER;
        hash = (53 * hash) + getBalance().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBalance parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBalance prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBalance}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBalance)
          org.aion.api.server.pb.Message.rsp_getBalanceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBalance_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBalance_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBalance.class, org.aion.api.server.pb.Message.rsp_getBalance.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBalance.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          balance_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBalance_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBalance getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBalance.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBalance build() {
          org.aion.api.server.pb.Message.rsp_getBalance result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBalance buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBalance result = new org.aion.api.server.pb.Message.rsp_getBalance(this);
          result.balance_ = balance_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBalance) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBalance)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBalance other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBalance.getDefaultInstance()) return this;
          if (other.getBalance() != com.google.protobuf.ByteString.EMPTY) {
            setBalance(other.getBalance());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBalance parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBalance) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString balance_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes balance = 1;</code>
         */
        public com.google.protobuf.ByteString getBalance() {
          return balance_;
        }
        /**
         * <code>bytes balance = 1;</code>
         */
        public Builder setBalance(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          balance_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes balance = 1;</code>
         */
        public Builder clearBalance() {
          
          balance_ = getDefaultInstance().getBalance();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBalance)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBalance)
      private static final org.aion.api.server.pb.Message.rsp_getBalance DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBalance();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBalance getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBalance>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBalance>() {
        public rsp_getBalance parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBalance(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBalance> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBalance> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBalance getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getStorageAtOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getStorageAt)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>uint32 position = 2;</code>
       */
      int getPosition();
  
      /**
       * <code>uint64 blocknumber = 3;</code>
       */
      long getBlocknumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getStorageAt}
     */
    public  static final class req_getStorageAt extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getStorageAt)
        req_getStorageAtOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getStorageAt.newBuilder() to construct.
      private req_getStorageAt(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getStorageAt() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        position_ = 0;
        blocknumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getStorageAt(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 16: {
  
                position_ = input.readUInt32();
                break;
              }
              case 24: {
  
                blocknumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getStorageAt_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getStorageAt_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getStorageAt.class, org.aion.api.server.pb.Message.req_getStorageAt.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int POSITION_FIELD_NUMBER = 2;
      private int position_;
      /**
       * <code>uint32 position = 2;</code>
       */
      public int getPosition() {
        return position_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 3;
      private long blocknumber_;
      /**
       * <code>uint64 blocknumber = 3;</code>
       */
      public long getBlocknumber() {
        return blocknumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (position_ != 0) {
          output.writeUInt32(2, position_);
        }
        if (blocknumber_ != 0L) {
          output.writeUInt64(3, blocknumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (position_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(2, position_);
        }
        if (blocknumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, blocknumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getStorageAt)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getStorageAt other = (org.aion.api.server.pb.Message.req_getStorageAt) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && (getPosition()
            == other.getPosition());
        result = result && (getBlocknumber()
            == other.getBlocknumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + POSITION_FIELD_NUMBER;
        hash = (53 * hash) + getPosition();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlocknumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getStorageAt parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getStorageAt prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getStorageAt}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getStorageAt)
          org.aion.api.server.pb.Message.req_getStorageAtOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getStorageAt_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getStorageAt_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getStorageAt.class, org.aion.api.server.pb.Message.req_getStorageAt.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getStorageAt.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          position_ = 0;
  
          blocknumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getStorageAt_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getStorageAt getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getStorageAt.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getStorageAt build() {
          org.aion.api.server.pb.Message.req_getStorageAt result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getStorageAt buildPartial() {
          org.aion.api.server.pb.Message.req_getStorageAt result = new org.aion.api.server.pb.Message.req_getStorageAt(this);
          result.address_ = address_;
          result.position_ = position_;
          result.blocknumber_ = blocknumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getStorageAt) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getStorageAt)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getStorageAt other) {
          if (other == org.aion.api.server.pb.Message.req_getStorageAt.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (other.getPosition() != 0) {
            setPosition(other.getPosition());
          }
          if (other.getBlocknumber() != 0L) {
            setBlocknumber(other.getBlocknumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getStorageAt parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getStorageAt) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private int position_ ;
        /**
         * <code>uint32 position = 2;</code>
         */
        public int getPosition() {
          return position_;
        }
        /**
         * <code>uint32 position = 2;</code>
         */
        public Builder setPosition(int value) {
          
          position_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 position = 2;</code>
         */
        public Builder clearPosition() {
          
          position_ = 0;
          onChanged();
          return this;
        }
  
        private long blocknumber_ ;
        /**
         * <code>uint64 blocknumber = 3;</code>
         */
        public long getBlocknumber() {
          return blocknumber_;
        }
        /**
         * <code>uint64 blocknumber = 3;</code>
         */
        public Builder setBlocknumber(long value) {
          
          blocknumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blocknumber = 3;</code>
         */
        public Builder clearBlocknumber() {
          
          blocknumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getStorageAt)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getStorageAt)
      private static final org.aion.api.server.pb.Message.req_getStorageAt DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getStorageAt();
      }
  
      public static org.aion.api.server.pb.Message.req_getStorageAt getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getStorageAt>
          PARSER = new com.google.protobuf.AbstractParser<req_getStorageAt>() {
        public req_getStorageAt parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getStorageAt(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getStorageAt> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getStorageAt> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getStorageAt getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getStorageAtOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getStorageAt)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string storage = 1;</code>
       */
      java.lang.String getStorage();
      /**
       * <code>string storage = 1;</code>
       */
      com.google.protobuf.ByteString
          getStorageBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getStorageAt}
     */
    public  static final class rsp_getStorageAt extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getStorageAt)
        rsp_getStorageAtOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getStorageAt.newBuilder() to construct.
      private rsp_getStorageAt(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getStorageAt() {
        storage_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getStorageAt(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                storage_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStorageAt_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStorageAt_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getStorageAt.class, org.aion.api.server.pb.Message.rsp_getStorageAt.Builder.class);
      }
  
      public static final int STORAGE_FIELD_NUMBER = 1;
      private volatile java.lang.Object storage_;
      /**
       * <code>string storage = 1;</code>
       */
      public java.lang.String getStorage() {
        java.lang.Object ref = storage_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          storage_ = s;
          return s;
        }
      }
      /**
       * <code>string storage = 1;</code>
       */
      public com.google.protobuf.ByteString
          getStorageBytes() {
        java.lang.Object ref = storage_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          storage_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getStorageBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, storage_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getStorageBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, storage_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getStorageAt)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getStorageAt other = (org.aion.api.server.pb.Message.rsp_getStorageAt) obj;
  
        boolean result = true;
        result = result && getStorage()
            .equals(other.getStorage());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + STORAGE_FIELD_NUMBER;
        hash = (53 * hash) + getStorage().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getStorageAt parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getStorageAt prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getStorageAt}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getStorageAt)
          org.aion.api.server.pb.Message.rsp_getStorageAtOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStorageAt_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStorageAt_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getStorageAt.class, org.aion.api.server.pb.Message.rsp_getStorageAt.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getStorageAt.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          storage_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStorageAt_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getStorageAt getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getStorageAt.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getStorageAt build() {
          org.aion.api.server.pb.Message.rsp_getStorageAt result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getStorageAt buildPartial() {
          org.aion.api.server.pb.Message.rsp_getStorageAt result = new org.aion.api.server.pb.Message.rsp_getStorageAt(this);
          result.storage_ = storage_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getStorageAt) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getStorageAt)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getStorageAt other) {
          if (other == org.aion.api.server.pb.Message.rsp_getStorageAt.getDefaultInstance()) return this;
          if (!other.getStorage().isEmpty()) {
            storage_ = other.storage_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getStorageAt parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getStorageAt) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object storage_ = "";
        /**
         * <code>string storage = 1;</code>
         */
        public java.lang.String getStorage() {
          java.lang.Object ref = storage_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            storage_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string storage = 1;</code>
         */
        public com.google.protobuf.ByteString
            getStorageBytes() {
          java.lang.Object ref = storage_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            storage_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string storage = 1;</code>
         */
        public Builder setStorage(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          storage_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string storage = 1;</code>
         */
        public Builder clearStorage() {
          
          storage_ = getDefaultInstance().getStorage();
          onChanged();
          return this;
        }
        /**
         * <code>string storage = 1;</code>
         */
        public Builder setStorageBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          storage_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getStorageAt)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getStorageAt)
      private static final org.aion.api.server.pb.Message.rsp_getStorageAt DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getStorageAt();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getStorageAt getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getStorageAt>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getStorageAt>() {
        public rsp_getStorageAt parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getStorageAt(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getStorageAt> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getStorageAt> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getStorageAt getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockTransactionCountByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockTransactionCountByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes blockHash = 1;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockTransactionCountByHash}
     */
    public  static final class req_getBlockTransactionCountByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockTransactionCountByHash)
        req_getBlockTransactionCountByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockTransactionCountByHash.newBuilder() to construct.
      private req_getBlockTransactionCountByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockTransactionCountByHash() {
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockTransactionCountByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                blockHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.class, org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.Builder.class);
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 1;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!blockHash_.isEmpty()) {
          output.writeBytes(1, blockHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, blockHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash other = (org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash) obj;
  
        boolean result = true;
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockTransactionCountByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockTransactionCountByHash)
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.class, org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash build() {
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash result = new org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash(this);
          result.blockHash_ = blockHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash.getDefaultInstance()) return this;
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockTransactionCountByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockTransactionCountByHash)
      private static final org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockTransactionCountByHash>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockTransactionCountByHash>() {
        public req_getBlockTransactionCountByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockTransactionCountByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockTransactionCountByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockTransactionCountByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockTransactionCountByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockTransactionCountOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockTransactionCount)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint32 txCount = 1;</code>
       */
      int getTxCount();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockTransactionCount}
     */
    public  static final class rsp_getBlockTransactionCount extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockTransactionCount)
        rsp_getBlockTransactionCountOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockTransactionCount.newBuilder() to construct.
      private rsp_getBlockTransactionCount(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockTransactionCount() {
        txCount_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockTransactionCount(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                txCount_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.class, org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.Builder.class);
      }
  
      public static final int TXCOUNT_FIELD_NUMBER = 1;
      private int txCount_;
      /**
       * <code>uint32 txCount = 1;</code>
       */
      public int getTxCount() {
        return txCount_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (txCount_ != 0) {
          output.writeUInt32(1, txCount_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (txCount_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(1, txCount_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockTransactionCount)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockTransactionCount other = (org.aion.api.server.pb.Message.rsp_getBlockTransactionCount) obj;
  
        boolean result = true;
        result = result && (getTxCount()
            == other.getTxCount());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXCOUNT_FIELD_NUMBER;
        hash = (53 * hash) + getTxCount();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockTransactionCount prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockTransactionCount}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockTransactionCount)
          org.aion.api.server.pb.Message.rsp_getBlockTransactionCountOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.class, org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txCount_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockTransactionCount getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockTransactionCount build() {
          org.aion.api.server.pb.Message.rsp_getBlockTransactionCount result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockTransactionCount buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockTransactionCount result = new org.aion.api.server.pb.Message.rsp_getBlockTransactionCount(this);
          result.txCount_ = txCount_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockTransactionCount) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockTransactionCount)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockTransactionCount other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockTransactionCount.getDefaultInstance()) return this;
          if (other.getTxCount() != 0) {
            setTxCount(other.getTxCount());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockTransactionCount parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockTransactionCount) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private int txCount_ ;
        /**
         * <code>uint32 txCount = 1;</code>
         */
        public int getTxCount() {
          return txCount_;
        }
        /**
         * <code>uint32 txCount = 1;</code>
         */
        public Builder setTxCount(int value) {
          
          txCount_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txCount = 1;</code>
         */
        public Builder clearTxCount() {
          
          txCount_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockTransactionCount)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockTransactionCount)
      private static final org.aion.api.server.pb.Message.rsp_getBlockTransactionCount DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockTransactionCount();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockTransactionCount getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockTransactionCount>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockTransactionCount>() {
        public rsp_getBlockTransactionCount parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockTransactionCount(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockTransactionCount> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockTransactionCount> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockTransactionCount getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockTransactionCountByNumberOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockTransactionCountByNumber)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockTransactionCountByNumber}
     */
    public  static final class req_getBlockTransactionCountByNumber extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockTransactionCountByNumber)
        req_getBlockTransactionCountByNumberOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockTransactionCountByNumber.newBuilder() to construct.
      private req_getBlockTransactionCountByNumber(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockTransactionCountByNumber() {
        blockNumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockTransactionCountByNumber(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.class, org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber other = (org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockTransactionCountByNumber}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockTransactionCountByNumber)
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumberOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.class, org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber build() {
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber result = new org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber(this);
          result.blockNumber_ = blockNumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockTransactionCountByNumber)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockTransactionCountByNumber)
      private static final org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockTransactionCountByNumber>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockTransactionCountByNumber>() {
        public req_getBlockTransactionCountByNumber parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockTransactionCountByNumber(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockTransactionCountByNumber> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockTransactionCountByNumber> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockTransactionCountByNumber getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getTransactionByBlockHashAndIndexOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes blockHash = 1;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
  
      /**
       * <code>uint32 txIndex = 2;</code>
       */
      int getTxIndex();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex}
     */
    public  static final class req_getTransactionByBlockHashAndIndex extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex)
        req_getTransactionByBlockHashAndIndexOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getTransactionByBlockHashAndIndex.newBuilder() to construct.
      private req_getTransactionByBlockHashAndIndex(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getTransactionByBlockHashAndIndex() {
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
        txIndex_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getTransactionByBlockHashAndIndex(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                blockHash_ = input.readBytes();
                break;
              }
              case 16: {
  
                txIndex_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.class, org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.Builder.class);
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 1;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      public static final int TXINDEX_FIELD_NUMBER = 2;
      private int txIndex_;
      /**
       * <code>uint32 txIndex = 2;</code>
       */
      public int getTxIndex() {
        return txIndex_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!blockHash_.isEmpty()) {
          output.writeBytes(1, blockHash_);
        }
        if (txIndex_ != 0) {
          output.writeUInt32(2, txIndex_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, blockHash_);
        }
        if (txIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(2, txIndex_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex other = (org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex) obj;
  
        boolean result = true;
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && (getTxIndex()
            == other.getTxIndex());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (37 * hash) + TXINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTxIndex();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex)
          org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndexOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.class, org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          txIndex_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex build() {
          org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex buildPartial() {
          org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex result = new org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex(this);
          result.blockHash_ = blockHash_;
          result.txIndex_ = txIndex_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex other) {
          if (other == org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex.getDefaultInstance()) return this;
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          if (other.getTxIndex() != 0) {
            setTxIndex(other.getTxIndex());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
  
        private int txIndex_ ;
        /**
         * <code>uint32 txIndex = 2;</code>
         */
        public int getTxIndex() {
          return txIndex_;
        }
        /**
         * <code>uint32 txIndex = 2;</code>
         */
        public Builder setTxIndex(int value) {
          
          txIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txIndex = 2;</code>
         */
        public Builder clearTxIndex() {
          
          txIndex_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getTransactionByBlockHashAndIndex)
      private static final org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex();
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getTransactionByBlockHashAndIndex>
          PARSER = new com.google.protobuf.AbstractParser<req_getTransactionByBlockHashAndIndex>() {
        public req_getTransactionByBlockHashAndIndex parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getTransactionByBlockHashAndIndex(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getTransactionByBlockHashAndIndex> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getTransactionByBlockHashAndIndex> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getTransactionByBlockHashAndIndex getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getTransactionByBlockNumberAndIndexOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint32 txIndex = 2;</code>
       */
      int getTxIndex();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex}
     */
    public  static final class req_getTransactionByBlockNumberAndIndex extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex)
        req_getTransactionByBlockNumberAndIndexOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getTransactionByBlockNumberAndIndex.newBuilder() to construct.
      private req_getTransactionByBlockNumberAndIndex(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getTransactionByBlockNumberAndIndex() {
        blockNumber_ = 0L;
        txIndex_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getTransactionByBlockNumberAndIndex(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 16: {
  
                txIndex_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.class, org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int TXINDEX_FIELD_NUMBER = 2;
      private int txIndex_;
      /**
       * <code>uint32 txIndex = 2;</code>
       */
      public int getTxIndex() {
        return txIndex_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        if (txIndex_ != 0) {
          output.writeUInt32(2, txIndex_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        if (txIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(2, txIndex_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex other = (org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getTxIndex()
            == other.getTxIndex());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + TXINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTxIndex();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex)
          org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndexOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.class, org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          txIndex_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex build() {
          org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex buildPartial() {
          org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex result = new org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex(this);
          result.blockNumber_ = blockNumber_;
          result.txIndex_ = txIndex_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex other) {
          if (other == org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getTxIndex() != 0) {
            setTxIndex(other.getTxIndex());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private int txIndex_ ;
        /**
         * <code>uint32 txIndex = 2;</code>
         */
        public int getTxIndex() {
          return txIndex_;
        }
        /**
         * <code>uint32 txIndex = 2;</code>
         */
        public Builder setTxIndex(int value) {
          
          txIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txIndex = 2;</code>
         */
        public Builder clearTxIndex() {
          
          txIndex_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getTransactionByBlockNumberAndIndex)
      private static final org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex();
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getTransactionByBlockNumberAndIndex>
          PARSER = new com.google.protobuf.AbstractParser<req_getTransactionByBlockNumberAndIndex>() {
        public req_getTransactionByBlockNumberAndIndex parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getTransactionByBlockNumberAndIndex(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getTransactionByBlockNumberAndIndex> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getTransactionByBlockNumberAndIndex> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getTransactionByBlockNumberAndIndex getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getTransactionReceiptOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getTransactionReceipt)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes txHash = 1;</code>
       */
      com.google.protobuf.ByteString getTxHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getTransactionReceipt}
     */
    public  static final class req_getTransactionReceipt extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getTransactionReceipt)
        req_getTransactionReceiptOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getTransactionReceipt.newBuilder() to construct.
      private req_getTransactionReceipt(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getTransactionReceipt() {
        txHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getTransactionReceipt(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                txHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionReceipt_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionReceipt_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getTransactionReceipt.class, org.aion.api.server.pb.Message.req_getTransactionReceipt.Builder.class);
      }
  
      public static final int TXHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 1;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!txHash_.isEmpty()) {
          output.writeBytes(1, txHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, txHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getTransactionReceipt)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getTransactionReceipt other = (org.aion.api.server.pb.Message.req_getTransactionReceipt) obj;
  
        boolean result = true;
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getTransactionReceipt prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getTransactionReceipt}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getTransactionReceipt)
          org.aion.api.server.pb.Message.req_getTransactionReceiptOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionReceipt_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionReceipt_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getTransactionReceipt.class, org.aion.api.server.pb.Message.req_getTransactionReceipt.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getTransactionReceipt.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getTransactionReceipt_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionReceipt getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getTransactionReceipt.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionReceipt build() {
          org.aion.api.server.pb.Message.req_getTransactionReceipt result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getTransactionReceipt buildPartial() {
          org.aion.api.server.pb.Message.req_getTransactionReceipt result = new org.aion.api.server.pb.Message.req_getTransactionReceipt(this);
          result.txHash_ = txHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getTransactionReceipt) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getTransactionReceipt)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getTransactionReceipt other) {
          if (other == org.aion.api.server.pb.Message.req_getTransactionReceipt.getDefaultInstance()) return this;
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getTransactionReceipt parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getTransactionReceipt) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 1;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 1;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getTransactionReceipt)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getTransactionReceipt)
      private static final org.aion.api.server.pb.Message.req_getTransactionReceipt DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getTransactionReceipt();
      }
  
      public static org.aion.api.server.pb.Message.req_getTransactionReceipt getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getTransactionReceipt>
          PARSER = new com.google.protobuf.AbstractParser<req_getTransactionReceipt>() {
        public req_getTransactionReceipt parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getTransactionReceipt(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getTransactionReceipt> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getTransactionReceipt> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getTransactionReceipt getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getTransactionReceiptOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getTransactionReceipt)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint32 txIndex = 1;</code>
       */
      int getTxIndex();
  
      /**
       * <code>uint64 blockNumber = 2;</code>
       */
      long getBlockNumber();
  
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      long getNrgConsumed();
  
      /**
       * <code>uint64 cumulativeNrgUsed = 4;</code>
       */
      long getCumulativeNrgUsed();
  
      /**
       * <code>bytes blockHash = 5;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
  
      /**
       * <code>bytes txHash = 6;</code>
       */
      com.google.protobuf.ByteString getTxHash();
  
      /**
       * <code>bytes from = 7;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes to = 8;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes contractAddress = 9;</code>
       */
      com.google.protobuf.ByteString getContractAddress();
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_LgEle> 
          getLogsList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      org.aion.api.server.pb.Message.t_LgEle getLogs(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      int getLogsCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
          getLogsOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      org.aion.api.server.pb.Message.t_LgEleOrBuilder getLogsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getTransactionReceipt}
     */
    public  static final class rsp_getTransactionReceipt extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getTransactionReceipt)
        rsp_getTransactionReceiptOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getTransactionReceipt.newBuilder() to construct.
      private rsp_getTransactionReceipt(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getTransactionReceipt() {
        txIndex_ = 0;
        blockNumber_ = 0L;
        nrgConsumed_ = 0L;
        cumulativeNrgUsed_ = 0L;
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
        txHash_ = com.google.protobuf.ByteString.EMPTY;
        from_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        contractAddress_ = com.google.protobuf.ByteString.EMPTY;
        logs_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getTransactionReceipt(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                txIndex_ = input.readUInt32();
                break;
              }
              case 16: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
              case 24: {
  
                nrgConsumed_ = input.readUInt64();
                break;
              }
              case 32: {
  
                cumulativeNrgUsed_ = input.readUInt64();
                break;
              }
              case 42: {
  
                blockHash_ = input.readBytes();
                break;
              }
              case 50: {
  
                txHash_ = input.readBytes();
                break;
              }
              case 58: {
  
                from_ = input.readBytes();
                break;
              }
              case 66: {
  
                to_ = input.readBytes();
                break;
              }
              case 74: {
  
                contractAddress_ = input.readBytes();
                break;
              }
              case 82: {
                if (!((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
                  logs_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_LgEle>();
                  mutable_bitField0_ |= 0x00000200;
                }
                logs_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_LgEle.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000200) == 0x00000200)) {
            logs_ = java.util.Collections.unmodifiableList(logs_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getTransactionReceipt.class, org.aion.api.server.pb.Message.rsp_getTransactionReceipt.Builder.class);
      }
  
      private int bitField0_;
      public static final int TXINDEX_FIELD_NUMBER = 1;
      private int txIndex_;
      /**
       * <code>uint32 txIndex = 1;</code>
       */
      public int getTxIndex() {
        return txIndex_;
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 2;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 2;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      public static final int NRGCONSUMED_FIELD_NUMBER = 3;
      private long nrgConsumed_;
      /**
       * <code>uint64 nrgConsumed = 3;</code>
       */
      public long getNrgConsumed() {
        return nrgConsumed_;
      }
  
      public static final int CUMULATIVENRGUSED_FIELD_NUMBER = 4;
      private long cumulativeNrgUsed_;
      /**
       * <code>uint64 cumulativeNrgUsed = 4;</code>
       */
      public long getCumulativeNrgUsed() {
        return cumulativeNrgUsed_;
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 5;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 5;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      public static final int TXHASH_FIELD_NUMBER = 6;
      private com.google.protobuf.ByteString txHash_;
      /**
       * <code>bytes txHash = 6;</code>
       */
      public com.google.protobuf.ByteString getTxHash() {
        return txHash_;
      }
  
      public static final int FROM_FIELD_NUMBER = 7;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 7;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TO_FIELD_NUMBER = 8;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 8;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int CONTRACTADDRESS_FIELD_NUMBER = 9;
      private com.google.protobuf.ByteString contractAddress_;
      /**
       * <code>bytes contractAddress = 9;</code>
       */
      public com.google.protobuf.ByteString getContractAddress() {
        return contractAddress_;
      }
  
      public static final int LOGS_FIELD_NUMBER = 10;
      private java.util.List<org.aion.api.server.pb.Message.t_LgEle> logs_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_LgEle> getLogsList() {
        return logs_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
          getLogsOrBuilderList() {
        return logs_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      public int getLogsCount() {
        return logs_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      public org.aion.api.server.pb.Message.t_LgEle getLogs(int index) {
        return logs_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
       */
      public org.aion.api.server.pb.Message.t_LgEleOrBuilder getLogsOrBuilder(
          int index) {
        return logs_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (txIndex_ != 0) {
          output.writeUInt32(1, txIndex_);
        }
        if (blockNumber_ != 0L) {
          output.writeUInt64(2, blockNumber_);
        }
        if (nrgConsumed_ != 0L) {
          output.writeUInt64(3, nrgConsumed_);
        }
        if (cumulativeNrgUsed_ != 0L) {
          output.writeUInt64(4, cumulativeNrgUsed_);
        }
        if (!blockHash_.isEmpty()) {
          output.writeBytes(5, blockHash_);
        }
        if (!txHash_.isEmpty()) {
          output.writeBytes(6, txHash_);
        }
        if (!from_.isEmpty()) {
          output.writeBytes(7, from_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(8, to_);
        }
        if (!contractAddress_.isEmpty()) {
          output.writeBytes(9, contractAddress_);
        }
        for (int i = 0; i < logs_.size(); i++) {
          output.writeMessage(10, logs_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (txIndex_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(1, txIndex_);
        }
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blockNumber_);
        }
        if (nrgConsumed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, nrgConsumed_);
        }
        if (cumulativeNrgUsed_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(4, cumulativeNrgUsed_);
        }
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(5, blockHash_);
        }
        if (!txHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(6, txHash_);
        }
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(7, from_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(8, to_);
        }
        if (!contractAddress_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(9, contractAddress_);
        }
        for (int i = 0; i < logs_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(10, logs_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getTransactionReceipt)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getTransactionReceipt other = (org.aion.api.server.pb.Message.rsp_getTransactionReceipt) obj;
  
        boolean result = true;
        result = result && (getTxIndex()
            == other.getTxIndex());
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && (getNrgConsumed()
            == other.getNrgConsumed());
        result = result && (getCumulativeNrgUsed()
            == other.getCumulativeNrgUsed());
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && getTxHash()
            .equals(other.getTxHash());
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getContractAddress()
            .equals(other.getContractAddress());
        result = result && getLogsList()
            .equals(other.getLogsList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TXINDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTxIndex();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (37 * hash) + NRGCONSUMED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgConsumed());
        hash = (37 * hash) + CUMULATIVENRGUSED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCumulativeNrgUsed());
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (37 * hash) + TXHASH_FIELD_NUMBER;
        hash = (53 * hash) + getTxHash().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + CONTRACTADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getContractAddress().hashCode();
        if (getLogsCount() > 0) {
          hash = (37 * hash) + LOGS_FIELD_NUMBER;
          hash = (53 * hash) + getLogsList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getTransactionReceipt prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getTransactionReceipt}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getTransactionReceipt)
          org.aion.api.server.pb.Message.rsp_getTransactionReceiptOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getTransactionReceipt.class, org.aion.api.server.pb.Message.rsp_getTransactionReceipt.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getTransactionReceipt.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getLogsFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          txIndex_ = 0;
  
          blockNumber_ = 0L;
  
          nrgConsumed_ = 0L;
  
          cumulativeNrgUsed_ = 0L;
  
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          txHash_ = com.google.protobuf.ByteString.EMPTY;
  
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          contractAddress_ = com.google.protobuf.ByteString.EMPTY;
  
          if (logsBuilder_ == null) {
            logs_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000200);
          } else {
            logsBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransactionReceipt getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getTransactionReceipt.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransactionReceipt build() {
          org.aion.api.server.pb.Message.rsp_getTransactionReceipt result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getTransactionReceipt buildPartial() {
          org.aion.api.server.pb.Message.rsp_getTransactionReceipt result = new org.aion.api.server.pb.Message.rsp_getTransactionReceipt(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          result.txIndex_ = txIndex_;
          result.blockNumber_ = blockNumber_;
          result.nrgConsumed_ = nrgConsumed_;
          result.cumulativeNrgUsed_ = cumulativeNrgUsed_;
          result.blockHash_ = blockHash_;
          result.txHash_ = txHash_;
          result.from_ = from_;
          result.to_ = to_;
          result.contractAddress_ = contractAddress_;
          if (logsBuilder_ == null) {
            if (((bitField0_ & 0x00000200) == 0x00000200)) {
              logs_ = java.util.Collections.unmodifiableList(logs_);
              bitField0_ = (bitField0_ & ~0x00000200);
            }
            result.logs_ = logs_;
          } else {
            result.logs_ = logsBuilder_.build();
          }
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getTransactionReceipt) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getTransactionReceipt)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getTransactionReceipt other) {
          if (other == org.aion.api.server.pb.Message.rsp_getTransactionReceipt.getDefaultInstance()) return this;
          if (other.getTxIndex() != 0) {
            setTxIndex(other.getTxIndex());
          }
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          if (other.getNrgConsumed() != 0L) {
            setNrgConsumed(other.getNrgConsumed());
          }
          if (other.getCumulativeNrgUsed() != 0L) {
            setCumulativeNrgUsed(other.getCumulativeNrgUsed());
          }
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          if (other.getTxHash() != com.google.protobuf.ByteString.EMPTY) {
            setTxHash(other.getTxHash());
          }
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getContractAddress() != com.google.protobuf.ByteString.EMPTY) {
            setContractAddress(other.getContractAddress());
          }
          if (logsBuilder_ == null) {
            if (!other.logs_.isEmpty()) {
              if (logs_.isEmpty()) {
                logs_ = other.logs_;
                bitField0_ = (bitField0_ & ~0x00000200);
              } else {
                ensureLogsIsMutable();
                logs_.addAll(other.logs_);
              }
              onChanged();
            }
          } else {
            if (!other.logs_.isEmpty()) {
              if (logsBuilder_.isEmpty()) {
                logsBuilder_.dispose();
                logsBuilder_ = null;
                logs_ = other.logs_;
                bitField0_ = (bitField0_ & ~0x00000200);
                logsBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getLogsFieldBuilder() : null;
              } else {
                logsBuilder_.addAllMessages(other.logs_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getTransactionReceipt parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getTransactionReceipt) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private int txIndex_ ;
        /**
         * <code>uint32 txIndex = 1;</code>
         */
        public int getTxIndex() {
          return txIndex_;
        }
        /**
         * <code>uint32 txIndex = 1;</code>
         */
        public Builder setTxIndex(int value) {
          
          txIndex_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 txIndex = 1;</code>
         */
        public Builder clearTxIndex() {
          
          txIndex_ = 0;
          onChanged();
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 2;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 2;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 2;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgConsumed_ ;
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public long getNrgConsumed() {
          return nrgConsumed_;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder setNrgConsumed(long value) {
          
          nrgConsumed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgConsumed = 3;</code>
         */
        public Builder clearNrgConsumed() {
          
          nrgConsumed_ = 0L;
          onChanged();
          return this;
        }
  
        private long cumulativeNrgUsed_ ;
        /**
         * <code>uint64 cumulativeNrgUsed = 4;</code>
         */
        public long getCumulativeNrgUsed() {
          return cumulativeNrgUsed_;
        }
        /**
         * <code>uint64 cumulativeNrgUsed = 4;</code>
         */
        public Builder setCumulativeNrgUsed(long value) {
          
          cumulativeNrgUsed_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 cumulativeNrgUsed = 4;</code>
         */
        public Builder clearCumulativeNrgUsed() {
          
          cumulativeNrgUsed_ = 0L;
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 5;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 5;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 5;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString txHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes txHash = 6;</code>
         */
        public com.google.protobuf.ByteString getTxHash() {
          return txHash_;
        }
        /**
         * <code>bytes txHash = 6;</code>
         */
        public Builder setTxHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          txHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes txHash = 6;</code>
         */
        public Builder clearTxHash() {
          
          txHash_ = getDefaultInstance().getTxHash();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 7;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 7;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 7;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 8;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 8;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 8;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString contractAddress_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes contractAddress = 9;</code>
         */
        public com.google.protobuf.ByteString getContractAddress() {
          return contractAddress_;
        }
        /**
         * <code>bytes contractAddress = 9;</code>
         */
        public Builder setContractAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          contractAddress_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes contractAddress = 9;</code>
         */
        public Builder clearContractAddress() {
          
          contractAddress_ = getDefaultInstance().getContractAddress();
          onChanged();
          return this;
        }
  
        private java.util.List<org.aion.api.server.pb.Message.t_LgEle> logs_ =
          java.util.Collections.emptyList();
        private void ensureLogsIsMutable() {
          if (!((bitField0_ & 0x00000200) == 0x00000200)) {
            logs_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_LgEle>(logs_);
            bitField0_ |= 0x00000200;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_LgEle, org.aion.api.server.pb.Message.t_LgEle.Builder, org.aion.api.server.pb.Message.t_LgEleOrBuilder> logsBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_LgEle> getLogsList() {
          if (logsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(logs_);
          } else {
            return logsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public int getLogsCount() {
          if (logsBuilder_ == null) {
            return logs_.size();
          } else {
            return logsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle getLogs(int index) {
          if (logsBuilder_ == null) {
            return logs_.get(index);
          } else {
            return logsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder setLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle value) {
          if (logsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLogsIsMutable();
            logs_.set(index, value);
            onChanged();
          } else {
            logsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder setLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle.Builder builderForValue) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.set(index, builderForValue.build());
            onChanged();
          } else {
            logsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder addLogs(org.aion.api.server.pb.Message.t_LgEle value) {
          if (logsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLogsIsMutable();
            logs_.add(value);
            onChanged();
          } else {
            logsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder addLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle value) {
          if (logsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureLogsIsMutable();
            logs_.add(index, value);
            onChanged();
          } else {
            logsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder addLogs(
            org.aion.api.server.pb.Message.t_LgEle.Builder builderForValue) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.add(builderForValue.build());
            onChanged();
          } else {
            logsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder addLogs(
            int index, org.aion.api.server.pb.Message.t_LgEle.Builder builderForValue) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.add(index, builderForValue.build());
            onChanged();
          } else {
            logsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder addAllLogs(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_LgEle> values) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, logs_);
            onChanged();
          } else {
            logsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder clearLogs() {
          if (logsBuilder_ == null) {
            logs_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000200);
            onChanged();
          } else {
            logsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public Builder removeLogs(int index) {
          if (logsBuilder_ == null) {
            ensureLogsIsMutable();
            logs_.remove(index);
            onChanged();
          } else {
            logsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle.Builder getLogsBuilder(
            int index) {
          return getLogsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEleOrBuilder getLogsOrBuilder(
            int index) {
          if (logsBuilder_ == null) {
            return logs_.get(index);  } else {
            return logsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
             getLogsOrBuilderList() {
          if (logsBuilder_ != null) {
            return logsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(logs_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle.Builder addLogsBuilder() {
          return getLogsFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_LgEle.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public org.aion.api.server.pb.Message.t_LgEle.Builder addLogsBuilder(
            int index) {
          return getLogsFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_LgEle.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_LgEle logs = 10;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_LgEle.Builder> 
             getLogsBuilderList() {
          return getLogsFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_LgEle, org.aion.api.server.pb.Message.t_LgEle.Builder, org.aion.api.server.pb.Message.t_LgEleOrBuilder> 
            getLogsFieldBuilder() {
          if (logsBuilder_ == null) {
            logsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_LgEle, org.aion.api.server.pb.Message.t_LgEle.Builder, org.aion.api.server.pb.Message.t_LgEleOrBuilder>(
                    logs_,
                    ((bitField0_ & 0x00000200) == 0x00000200),
                    getParentForChildren(),
                    isClean());
            logs_ = null;
          }
          return logsBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getTransactionReceipt)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getTransactionReceipt)
      private static final org.aion.api.server.pb.Message.rsp_getTransactionReceipt DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getTransactionReceipt();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getTransactionReceipt getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getTransactionReceipt>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getTransactionReceipt>() {
        public rsp_getTransactionReceipt parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getTransactionReceipt(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getTransactionReceipt> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getTransactionReceipt> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getTransactionReceipt getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getUncleByBlockHashAndIndexOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getUncleByBlockHashAndIndex)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes blockHash = 1;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
  
      /**
       * <code>uint32 index = 2;</code>
       */
      int getIndex();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getUncleByBlockHashAndIndex}
     */
    public  static final class req_getUncleByBlockHashAndIndex extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getUncleByBlockHashAndIndex)
        req_getUncleByBlockHashAndIndexOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getUncleByBlockHashAndIndex.newBuilder() to construct.
      private req_getUncleByBlockHashAndIndex(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getUncleByBlockHashAndIndex() {
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
        index_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getUncleByBlockHashAndIndex(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                blockHash_ = input.readBytes();
                break;
              }
              case 16: {
  
                index_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.class, org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.Builder.class);
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 1;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      public static final int INDEX_FIELD_NUMBER = 2;
      private int index_;
      /**
       * <code>uint32 index = 2;</code>
       */
      public int getIndex() {
        return index_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!blockHash_.isEmpty()) {
          output.writeBytes(1, blockHash_);
        }
        if (index_ != 0) {
          output.writeUInt32(2, index_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, blockHash_);
        }
        if (index_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(2, index_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex other = (org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex) obj;
  
        boolean result = true;
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && (getIndex()
            == other.getIndex());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (37 * hash) + INDEX_FIELD_NUMBER;
        hash = (53 * hash) + getIndex();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getUncleByBlockHashAndIndex}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getUncleByBlockHashAndIndex)
          org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndexOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.class, org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          index_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex build() {
          org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex buildPartial() {
          org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex result = new org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex(this);
          result.blockHash_ = blockHash_;
          result.index_ = index_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex other) {
          if (other == org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex.getDefaultInstance()) return this;
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          if (other.getIndex() != 0) {
            setIndex(other.getIndex());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
  
        private int index_ ;
        /**
         * <code>uint32 index = 2;</code>
         */
        public int getIndex() {
          return index_;
        }
        /**
         * <code>uint32 index = 2;</code>
         */
        public Builder setIndex(int value) {
          
          index_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 index = 2;</code>
         */
        public Builder clearIndex() {
          
          index_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getUncleByBlockHashAndIndex)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getUncleByBlockHashAndIndex)
      private static final org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex();
      }
  
      public static org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getUncleByBlockHashAndIndex>
          PARSER = new com.google.protobuf.AbstractParser<req_getUncleByBlockHashAndIndex>() {
        public req_getUncleByBlockHashAndIndex parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getUncleByBlockHashAndIndex(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getUncleByBlockHashAndIndex> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getUncleByBlockHashAndIndex> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getUncleByBlockHashAndIndex getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getCompilersOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getCompilers)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string compiler = 1;</code>
       */
      java.util.List<java.lang.String>
          getCompilerList();
      /**
       * <code>repeated string compiler = 1;</code>
       */
      int getCompilerCount();
      /**
       * <code>repeated string compiler = 1;</code>
       */
      java.lang.String getCompiler(int index);
      /**
       * <code>repeated string compiler = 1;</code>
       */
      com.google.protobuf.ByteString
          getCompilerBytes(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getCompilers}
     */
    public  static final class rsp_getCompilers extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getCompilers)
        rsp_getCompilersOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getCompilers.newBuilder() to construct.
      private rsp_getCompilers(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getCompilers() {
        compiler_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getCompilers(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  compiler_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                compiler_.add(s);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            compiler_ = compiler_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCompilers_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCompilers_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getCompilers.class, org.aion.api.server.pb.Message.rsp_getCompilers.Builder.class);
      }
  
      public static final int COMPILER_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList compiler_;
      /**
       * <code>repeated string compiler = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getCompilerList() {
        return compiler_;
      }
      /**
       * <code>repeated string compiler = 1;</code>
       */
      public int getCompilerCount() {
        return compiler_.size();
      }
      /**
       * <code>repeated string compiler = 1;</code>
       */
      public java.lang.String getCompiler(int index) {
        return compiler_.get(index);
      }
      /**
       * <code>repeated string compiler = 1;</code>
       */
      public com.google.protobuf.ByteString
          getCompilerBytes(int index) {
        return compiler_.getByteString(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < compiler_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, compiler_.getRaw(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < compiler_.size(); i++) {
            dataSize += computeStringSizeNoTag(compiler_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getCompilerList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getCompilers)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getCompilers other = (org.aion.api.server.pb.Message.rsp_getCompilers) obj;
  
        boolean result = true;
        result = result && getCompilerList()
            .equals(other.getCompilerList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getCompilerCount() > 0) {
          hash = (37 * hash) + COMPILER_FIELD_NUMBER;
          hash = (53 * hash) + getCompilerList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCompilers parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getCompilers prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getCompilers}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getCompilers)
          org.aion.api.server.pb.Message.rsp_getCompilersOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCompilers_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCompilers_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getCompilers.class, org.aion.api.server.pb.Message.rsp_getCompilers.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getCompilers.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          compiler_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCompilers_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getCompilers getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getCompilers.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getCompilers build() {
          org.aion.api.server.pb.Message.rsp_getCompilers result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getCompilers buildPartial() {
          org.aion.api.server.pb.Message.rsp_getCompilers result = new org.aion.api.server.pb.Message.rsp_getCompilers(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            compiler_ = compiler_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.compiler_ = compiler_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getCompilers) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getCompilers)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getCompilers other) {
          if (other == org.aion.api.server.pb.Message.rsp_getCompilers.getDefaultInstance()) return this;
          if (!other.compiler_.isEmpty()) {
            if (compiler_.isEmpty()) {
              compiler_ = other.compiler_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureCompilerIsMutable();
              compiler_.addAll(other.compiler_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getCompilers parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getCompilers) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList compiler_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureCompilerIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            compiler_ = new com.google.protobuf.LazyStringArrayList(compiler_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getCompilerList() {
          return compiler_.getUnmodifiableView();
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public int getCompilerCount() {
          return compiler_.size();
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public java.lang.String getCompiler(int index) {
          return compiler_.get(index);
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public com.google.protobuf.ByteString
            getCompilerBytes(int index) {
          return compiler_.getByteString(index);
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public Builder setCompiler(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureCompilerIsMutable();
          compiler_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public Builder addCompiler(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureCompilerIsMutable();
          compiler_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public Builder addAllCompiler(
            java.lang.Iterable<java.lang.String> values) {
          ensureCompilerIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, compiler_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public Builder clearCompiler() {
          compiler_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string compiler = 1;</code>
         */
        public Builder addCompilerBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureCompilerIsMutable();
          compiler_.add(value);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getCompilers)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getCompilers)
      private static final org.aion.api.server.pb.Message.rsp_getCompilers DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getCompilers();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getCompilers getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getCompilers>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getCompilers>() {
        public rsp_getCompilers parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getCompilers(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getCompilers> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getCompilers> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getCompilers getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_compileSolidityZipOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_compileSolidityZip)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes zipfile = 1;</code>
       */
      com.google.protobuf.ByteString getZipfile();
  
      /**
       * <code>string entryPoint = 2;</code>
       */
      java.lang.String getEntryPoint();
      /**
       * <code>string entryPoint = 2;</code>
       */
      com.google.protobuf.ByteString
          getEntryPointBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_compileSolidityZip}
     */
    public  static final class req_compileSolidityZip extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_compileSolidityZip)
        req_compileSolidityZipOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_compileSolidityZip.newBuilder() to construct.
      private req_compileSolidityZip(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_compileSolidityZip() {
        zipfile_ = com.google.protobuf.ByteString.EMPTY;
        entryPoint_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_compileSolidityZip(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                zipfile_ = input.readBytes();
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                entryPoint_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compileSolidityZip_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compileSolidityZip_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_compileSolidityZip.class, org.aion.api.server.pb.Message.req_compileSolidityZip.Builder.class);
      }
  
      public static final int ZIPFILE_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString zipfile_;
      /**
       * <code>bytes zipfile = 1;</code>
       */
      public com.google.protobuf.ByteString getZipfile() {
        return zipfile_;
      }
  
      public static final int ENTRYPOINT_FIELD_NUMBER = 2;
      private volatile java.lang.Object entryPoint_;
      /**
       * <code>string entryPoint = 2;</code>
       */
      public java.lang.String getEntryPoint() {
        java.lang.Object ref = entryPoint_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          entryPoint_ = s;
          return s;
        }
      }
      /**
       * <code>string entryPoint = 2;</code>
       */
      public com.google.protobuf.ByteString
          getEntryPointBytes() {
        java.lang.Object ref = entryPoint_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          entryPoint_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!zipfile_.isEmpty()) {
          output.writeBytes(1, zipfile_);
        }
        if (!getEntryPointBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, entryPoint_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!zipfile_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, zipfile_);
        }
        if (!getEntryPointBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, entryPoint_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_compileSolidityZip)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_compileSolidityZip other = (org.aion.api.server.pb.Message.req_compileSolidityZip) obj;
  
        boolean result = true;
        result = result && getZipfile()
            .equals(other.getZipfile());
        result = result && getEntryPoint()
            .equals(other.getEntryPoint());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ZIPFILE_FIELD_NUMBER;
        hash = (53 * hash) + getZipfile().hashCode();
        hash = (37 * hash) + ENTRYPOINT_FIELD_NUMBER;
        hash = (53 * hash) + getEntryPoint().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_compileSolidityZip parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_compileSolidityZip prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_compileSolidityZip}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_compileSolidityZip)
          org.aion.api.server.pb.Message.req_compileSolidityZipOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compileSolidityZip_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compileSolidityZip_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_compileSolidityZip.class, org.aion.api.server.pb.Message.req_compileSolidityZip.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_compileSolidityZip.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          zipfile_ = com.google.protobuf.ByteString.EMPTY;
  
          entryPoint_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_compileSolidityZip_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_compileSolidityZip getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_compileSolidityZip.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_compileSolidityZip build() {
          org.aion.api.server.pb.Message.req_compileSolidityZip result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_compileSolidityZip buildPartial() {
          org.aion.api.server.pb.Message.req_compileSolidityZip result = new org.aion.api.server.pb.Message.req_compileSolidityZip(this);
          result.zipfile_ = zipfile_;
          result.entryPoint_ = entryPoint_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_compileSolidityZip) {
            return mergeFrom((org.aion.api.server.pb.Message.req_compileSolidityZip)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_compileSolidityZip other) {
          if (other == org.aion.api.server.pb.Message.req_compileSolidityZip.getDefaultInstance()) return this;
          if (other.getZipfile() != com.google.protobuf.ByteString.EMPTY) {
            setZipfile(other.getZipfile());
          }
          if (!other.getEntryPoint().isEmpty()) {
            entryPoint_ = other.entryPoint_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_compileSolidityZip parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_compileSolidityZip) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString zipfile_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes zipfile = 1;</code>
         */
        public com.google.protobuf.ByteString getZipfile() {
          return zipfile_;
        }
        /**
         * <code>bytes zipfile = 1;</code>
         */
        public Builder setZipfile(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          zipfile_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes zipfile = 1;</code>
         */
        public Builder clearZipfile() {
          
          zipfile_ = getDefaultInstance().getZipfile();
          onChanged();
          return this;
        }
  
        private java.lang.Object entryPoint_ = "";
        /**
         * <code>string entryPoint = 2;</code>
         */
        public java.lang.String getEntryPoint() {
          java.lang.Object ref = entryPoint_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            entryPoint_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string entryPoint = 2;</code>
         */
        public com.google.protobuf.ByteString
            getEntryPointBytes() {
          java.lang.Object ref = entryPoint_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            entryPoint_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string entryPoint = 2;</code>
         */
        public Builder setEntryPoint(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          entryPoint_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string entryPoint = 2;</code>
         */
        public Builder clearEntryPoint() {
          
          entryPoint_ = getDefaultInstance().getEntryPoint();
          onChanged();
          return this;
        }
        /**
         * <code>string entryPoint = 2;</code>
         */
        public Builder setEntryPointBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          entryPoint_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_compileSolidityZip)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_compileSolidityZip)
      private static final org.aion.api.server.pb.Message.req_compileSolidityZip DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_compileSolidityZip();
      }
  
      public static org.aion.api.server.pb.Message.req_compileSolidityZip getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_compileSolidityZip>
          PARSER = new com.google.protobuf.AbstractParser<req_compileSolidityZip>() {
        public req_compileSolidityZip parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_compileSolidityZip(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_compileSolidityZip> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_compileSolidityZip> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_compileSolidityZip getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getWorkOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getWork)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string work = 1;</code>
       */
      java.util.List<java.lang.String>
          getWorkList();
      /**
       * <code>repeated string work = 1;</code>
       */
      int getWorkCount();
      /**
       * <code>repeated string work = 1;</code>
       */
      java.lang.String getWork(int index);
      /**
       * <code>repeated string work = 1;</code>
       */
      com.google.protobuf.ByteString
          getWorkBytes(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getWork}
     */
    public  static final class rsp_getWork extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getWork)
        rsp_getWorkOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getWork.newBuilder() to construct.
      private rsp_getWork(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getWork() {
        work_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getWork(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  work_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                work_.add(s);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            work_ = work_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getWork_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getWork_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getWork.class, org.aion.api.server.pb.Message.rsp_getWork.Builder.class);
      }
  
      public static final int WORK_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList work_;
      /**
       * <code>repeated string work = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getWorkList() {
        return work_;
      }
      /**
       * <code>repeated string work = 1;</code>
       */
      public int getWorkCount() {
        return work_.size();
      }
      /**
       * <code>repeated string work = 1;</code>
       */
      public java.lang.String getWork(int index) {
        return work_.get(index);
      }
      /**
       * <code>repeated string work = 1;</code>
       */
      public com.google.protobuf.ByteString
          getWorkBytes(int index) {
        return work_.getByteString(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < work_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, work_.getRaw(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < work_.size(); i++) {
            dataSize += computeStringSizeNoTag(work_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getWorkList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getWork)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getWork other = (org.aion.api.server.pb.Message.rsp_getWork) obj;
  
        boolean result = true;
        result = result && getWorkList()
            .equals(other.getWorkList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getWorkCount() > 0) {
          hash = (37 * hash) + WORK_FIELD_NUMBER;
          hash = (53 * hash) + getWorkList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getWork parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getWork prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getWork}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getWork)
          org.aion.api.server.pb.Message.rsp_getWorkOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getWork_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getWork_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getWork.class, org.aion.api.server.pb.Message.rsp_getWork.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getWork.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          work_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getWork_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getWork getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getWork.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getWork build() {
          org.aion.api.server.pb.Message.rsp_getWork result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getWork buildPartial() {
          org.aion.api.server.pb.Message.rsp_getWork result = new org.aion.api.server.pb.Message.rsp_getWork(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            work_ = work_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.work_ = work_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getWork) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getWork)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getWork other) {
          if (other == org.aion.api.server.pb.Message.rsp_getWork.getDefaultInstance()) return this;
          if (!other.work_.isEmpty()) {
            if (work_.isEmpty()) {
              work_ = other.work_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureWorkIsMutable();
              work_.addAll(other.work_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getWork parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getWork) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList work_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureWorkIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            work_ = new com.google.protobuf.LazyStringArrayList(work_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getWorkList() {
          return work_.getUnmodifiableView();
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public int getWorkCount() {
          return work_.size();
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public java.lang.String getWork(int index) {
          return work_.get(index);
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public com.google.protobuf.ByteString
            getWorkBytes(int index) {
          return work_.getByteString(index);
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public Builder setWork(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureWorkIsMutable();
          work_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public Builder addWork(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureWorkIsMutable();
          work_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public Builder addAllWork(
            java.lang.Iterable<java.lang.String> values) {
          ensureWorkIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, work_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public Builder clearWork() {
          work_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string work = 1;</code>
         */
        public Builder addWorkBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureWorkIsMutable();
          work_.add(value);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getWork)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getWork)
      private static final org.aion.api.server.pb.Message.rsp_getWork DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getWork();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getWork getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getWork>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getWork>() {
        public rsp_getWork parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getWork(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getWork> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getWork> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getWork getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_submitWorkOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_submitWork)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes nonce = 1;</code>
       */
      com.google.protobuf.ByteString getNonce();
  
      /**
       * <code>bytes solution = 2;</code>
       */
      com.google.protobuf.ByteString getSolution();
  
      /**
       * <code>bytes digest = 3;</code>
       */
      com.google.protobuf.ByteString getDigest();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_submitWork}
     */
    public  static final class req_submitWork extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_submitWork)
        req_submitWorkOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_submitWork.newBuilder() to construct.
      private req_submitWork(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_submitWork() {
        nonce_ = com.google.protobuf.ByteString.EMPTY;
        solution_ = com.google.protobuf.ByteString.EMPTY;
        digest_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_submitWork(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                nonce_ = input.readBytes();
                break;
              }
              case 18: {
  
                solution_ = input.readBytes();
                break;
              }
              case 26: {
  
                digest_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_submitWork_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_submitWork_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_submitWork.class, org.aion.api.server.pb.Message.req_submitWork.Builder.class);
      }
  
      public static final int NONCE_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 1;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      public static final int SOLUTION_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString solution_;
      /**
       * <code>bytes solution = 2;</code>
       */
      public com.google.protobuf.ByteString getSolution() {
        return solution_;
      }
  
      public static final int DIGEST_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString digest_;
      /**
       * <code>bytes digest = 3;</code>
       */
      public com.google.protobuf.ByteString getDigest() {
        return digest_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!nonce_.isEmpty()) {
          output.writeBytes(1, nonce_);
        }
        if (!solution_.isEmpty()) {
          output.writeBytes(2, solution_);
        }
        if (!digest_.isEmpty()) {
          output.writeBytes(3, digest_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, nonce_);
        }
        if (!solution_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, solution_);
        }
        if (!digest_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, digest_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_submitWork)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_submitWork other = (org.aion.api.server.pb.Message.req_submitWork) obj;
  
        boolean result = true;
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && getSolution()
            .equals(other.getSolution());
        result = result && getDigest()
            .equals(other.getDigest());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (37 * hash) + SOLUTION_FIELD_NUMBER;
        hash = (53 * hash) + getSolution().hashCode();
        hash = (37 * hash) + DIGEST_FIELD_NUMBER;
        hash = (53 * hash) + getDigest().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_submitWork parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_submitWork prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_submitWork}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_submitWork)
          org.aion.api.server.pb.Message.req_submitWorkOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_submitWork_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_submitWork_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_submitWork.class, org.aion.api.server.pb.Message.req_submitWork.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_submitWork.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          solution_ = com.google.protobuf.ByteString.EMPTY;
  
          digest_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_submitWork_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_submitWork getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_submitWork.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_submitWork build() {
          org.aion.api.server.pb.Message.req_submitWork result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_submitWork buildPartial() {
          org.aion.api.server.pb.Message.req_submitWork result = new org.aion.api.server.pb.Message.req_submitWork(this);
          result.nonce_ = nonce_;
          result.solution_ = solution_;
          result.digest_ = digest_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_submitWork) {
            return mergeFrom((org.aion.api.server.pb.Message.req_submitWork)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_submitWork other) {
          if (other == org.aion.api.server.pb.Message.req_submitWork.getDefaultInstance()) return this;
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          if (other.getSolution() != com.google.protobuf.ByteString.EMPTY) {
            setSolution(other.getSolution());
          }
          if (other.getDigest() != com.google.protobuf.ByteString.EMPTY) {
            setDigest(other.getDigest());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_submitWork parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_submitWork) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 1;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 1;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 1;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString solution_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes solution = 2;</code>
         */
        public com.google.protobuf.ByteString getSolution() {
          return solution_;
        }
        /**
         * <code>bytes solution = 2;</code>
         */
        public Builder setSolution(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          solution_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes solution = 2;</code>
         */
        public Builder clearSolution() {
          
          solution_ = getDefaultInstance().getSolution();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString digest_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes digest = 3;</code>
         */
        public com.google.protobuf.ByteString getDigest() {
          return digest_;
        }
        /**
         * <code>bytes digest = 3;</code>
         */
        public Builder setDigest(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          digest_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes digest = 3;</code>
         */
        public Builder clearDigest() {
          
          digest_ = getDefaultInstance().getDigest();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_submitWork)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_submitWork)
      private static final org.aion.api.server.pb.Message.req_submitWork DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_submitWork();
      }
  
      public static org.aion.api.server.pb.Message.req_submitWork getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_submitWork>
          PARSER = new com.google.protobuf.AbstractParser<req_submitWork>() {
        public req_submitWork parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_submitWork(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_submitWork> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_submitWork> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_submitWork getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_submitWorkOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_submitWork)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool workAccepted = 1;</code>
       */
      boolean getWorkAccepted();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_submitWork}
     */
    public  static final class rsp_submitWork extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_submitWork)
        rsp_submitWorkOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_submitWork.newBuilder() to construct.
      private rsp_submitWork(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_submitWork() {
        workAccepted_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_submitWork(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                workAccepted_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_submitWork_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_submitWork_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_submitWork.class, org.aion.api.server.pb.Message.rsp_submitWork.Builder.class);
      }
  
      public static final int WORKACCEPTED_FIELD_NUMBER = 1;
      private boolean workAccepted_;
      /**
       * <code>bool workAccepted = 1;</code>
       */
      public boolean getWorkAccepted() {
        return workAccepted_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (workAccepted_ != false) {
          output.writeBool(1, workAccepted_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (workAccepted_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, workAccepted_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_submitWork)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_submitWork other = (org.aion.api.server.pb.Message.rsp_submitWork) obj;
  
        boolean result = true;
        result = result && (getWorkAccepted()
            == other.getWorkAccepted());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + WORKACCEPTED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getWorkAccepted());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_submitWork parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_submitWork prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_submitWork}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_submitWork)
          org.aion.api.server.pb.Message.rsp_submitWorkOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_submitWork_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_submitWork_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_submitWork.class, org.aion.api.server.pb.Message.rsp_submitWork.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_submitWork.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          workAccepted_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_submitWork_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_submitWork getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_submitWork.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_submitWork build() {
          org.aion.api.server.pb.Message.rsp_submitWork result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_submitWork buildPartial() {
          org.aion.api.server.pb.Message.rsp_submitWork result = new org.aion.api.server.pb.Message.rsp_submitWork(this);
          result.workAccepted_ = workAccepted_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_submitWork) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_submitWork)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_submitWork other) {
          if (other == org.aion.api.server.pb.Message.rsp_submitWork.getDefaultInstance()) return this;
          if (other.getWorkAccepted() != false) {
            setWorkAccepted(other.getWorkAccepted());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_submitWork parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_submitWork) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean workAccepted_ ;
        /**
         * <code>bool workAccepted = 1;</code>
         */
        public boolean getWorkAccepted() {
          return workAccepted_;
        }
        /**
         * <code>bool workAccepted = 1;</code>
         */
        public Builder setWorkAccepted(boolean value) {
          
          workAccepted_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool workAccepted = 1;</code>
         */
        public Builder clearWorkAccepted() {
          
          workAccepted_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_submitWork)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_submitWork)
      private static final org.aion.api.server.pb.Message.rsp_submitWork DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_submitWork();
      }
  
      public static org.aion.api.server.pb.Message.rsp_submitWork getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_submitWork>
          PARSER = new com.google.protobuf.AbstractParser<rsp_submitWork>() {
        public rsp_submitWork parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_submitWork(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_submitWork> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_submitWork> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_submitWork getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_fetchQueuedTransactionsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_fetchQueuedTransactions)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_AionTx> 
          getTxList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      org.aion.api.server.pb.Message.t_AionTx getTx(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      int getTxCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_AionTxOrBuilder> 
          getTxOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      org.aion.api.server.pb.Message.t_AionTxOrBuilder getTxOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_fetchQueuedTransactions}
     */
    public  static final class rsp_fetchQueuedTransactions extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_fetchQueuedTransactions)
        rsp_fetchQueuedTransactionsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_fetchQueuedTransactions.newBuilder() to construct.
      private rsp_fetchQueuedTransactions(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_fetchQueuedTransactions() {
        tx_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_fetchQueuedTransactions(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  tx_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_AionTx>();
                  mutable_bitField0_ |= 0x00000001;
                }
                tx_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_AionTx.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            tx_ = java.util.Collections.unmodifiableList(tx_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.class, org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.Builder.class);
      }
  
      public static final int TX_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_AionTx> tx_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_AionTx> getTxList() {
        return tx_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_AionTxOrBuilder> 
          getTxOrBuilderList() {
        return tx_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      public int getTxCount() {
        return tx_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_AionTx getTx(int index) {
        return tx_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_AionTxOrBuilder getTxOrBuilder(
          int index) {
        return tx_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < tx_.size(); i++) {
          output.writeMessage(1, tx_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < tx_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, tx_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions other = (org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions) obj;
  
        boolean result = true;
        result = result && getTxList()
            .equals(other.getTxList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getTxCount() > 0) {
          hash = (37 * hash) + TX_FIELD_NUMBER;
          hash = (53 * hash) + getTxList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_fetchQueuedTransactions}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_fetchQueuedTransactions)
          org.aion.api.server.pb.Message.rsp_fetchQueuedTransactionsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.class, org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getTxFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (txBuilder_ == null) {
            tx_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            txBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions build() {
          org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions buildPartial() {
          org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions result = new org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions(this);
          int from_bitField0_ = bitField0_;
          if (txBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              tx_ = java.util.Collections.unmodifiableList(tx_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.tx_ = tx_;
          } else {
            result.tx_ = txBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions other) {
          if (other == org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions.getDefaultInstance()) return this;
          if (txBuilder_ == null) {
            if (!other.tx_.isEmpty()) {
              if (tx_.isEmpty()) {
                tx_ = other.tx_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureTxIsMutable();
                tx_.addAll(other.tx_);
              }
              onChanged();
            }
          } else {
            if (!other.tx_.isEmpty()) {
              if (txBuilder_.isEmpty()) {
                txBuilder_.dispose();
                txBuilder_ = null;
                tx_ = other.tx_;
                bitField0_ = (bitField0_ & ~0x00000001);
                txBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getTxFieldBuilder() : null;
              } else {
                txBuilder_.addAllMessages(other.tx_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_AionTx> tx_ =
          java.util.Collections.emptyList();
        private void ensureTxIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            tx_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_AionTx>(tx_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_AionTx, org.aion.api.server.pb.Message.t_AionTx.Builder, org.aion.api.server.pb.Message.t_AionTxOrBuilder> txBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_AionTx> getTxList() {
          if (txBuilder_ == null) {
            return java.util.Collections.unmodifiableList(tx_);
          } else {
            return txBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public int getTxCount() {
          if (txBuilder_ == null) {
            return tx_.size();
          } else {
            return txBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AionTx getTx(int index) {
          if (txBuilder_ == null) {
            return tx_.get(index);
          } else {
            return txBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder setTx(
            int index, org.aion.api.server.pb.Message.t_AionTx value) {
          if (txBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTxIsMutable();
            tx_.set(index, value);
            onChanged();
          } else {
            txBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder setTx(
            int index, org.aion.api.server.pb.Message.t_AionTx.Builder builderForValue) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.set(index, builderForValue.build());
            onChanged();
          } else {
            txBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder addTx(org.aion.api.server.pb.Message.t_AionTx value) {
          if (txBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTxIsMutable();
            tx_.add(value);
            onChanged();
          } else {
            txBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder addTx(
            int index, org.aion.api.server.pb.Message.t_AionTx value) {
          if (txBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureTxIsMutable();
            tx_.add(index, value);
            onChanged();
          } else {
            txBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder addTx(
            org.aion.api.server.pb.Message.t_AionTx.Builder builderForValue) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.add(builderForValue.build());
            onChanged();
          } else {
            txBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder addTx(
            int index, org.aion.api.server.pb.Message.t_AionTx.Builder builderForValue) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.add(index, builderForValue.build());
            onChanged();
          } else {
            txBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder addAllTx(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_AionTx> values) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, tx_);
            onChanged();
          } else {
            txBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder clearTx() {
          if (txBuilder_ == null) {
            tx_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            txBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public Builder removeTx(int index) {
          if (txBuilder_ == null) {
            ensureTxIsMutable();
            tx_.remove(index);
            onChanged();
          } else {
            txBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AionTx.Builder getTxBuilder(
            int index) {
          return getTxFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AionTxOrBuilder getTxOrBuilder(
            int index) {
          if (txBuilder_ == null) {
            return tx_.get(index);  } else {
            return txBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_AionTxOrBuilder> 
             getTxOrBuilderList() {
          if (txBuilder_ != null) {
            return txBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(tx_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AionTx.Builder addTxBuilder() {
          return getTxFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_AionTx.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AionTx.Builder addTxBuilder(
            int index) {
          return getTxFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_AionTx.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AionTx tx = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_AionTx.Builder> 
             getTxBuilderList() {
          return getTxFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_AionTx, org.aion.api.server.pb.Message.t_AionTx.Builder, org.aion.api.server.pb.Message.t_AionTxOrBuilder> 
            getTxFieldBuilder() {
          if (txBuilder_ == null) {
            txBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_AionTx, org.aion.api.server.pb.Message.t_AionTx.Builder, org.aion.api.server.pb.Message.t_AionTxOrBuilder>(
                    tx_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            tx_ = null;
          }
          return txBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_fetchQueuedTransactions)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_fetchQueuedTransactions)
      private static final org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions();
      }
  
      public static org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_fetchQueuedTransactions>
          PARSER = new com.google.protobuf.AbstractParser<rsp_fetchQueuedTransactions>() {
        public rsp_fetchQueuedTransactions parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_fetchQueuedTransactions(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_fetchQueuedTransactions> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_fetchQueuedTransactions> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_fetchQueuedTransactions getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_rawTransactionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_rawTransaction)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes encodedTx = 1;</code>
       */
      com.google.protobuf.ByteString getEncodedTx();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_rawTransaction}
     */
    public  static final class req_rawTransaction extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_rawTransaction)
        req_rawTransactionOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_rawTransaction.newBuilder() to construct.
      private req_rawTransaction(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_rawTransaction() {
        encodedTx_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_rawTransaction(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                encodedTx_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_rawTransaction_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_rawTransaction_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_rawTransaction.class, org.aion.api.server.pb.Message.req_rawTransaction.Builder.class);
      }
  
      public static final int ENCODEDTX_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString encodedTx_;
      /**
       * <code>bytes encodedTx = 1;</code>
       */
      public com.google.protobuf.ByteString getEncodedTx() {
        return encodedTx_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!encodedTx_.isEmpty()) {
          output.writeBytes(1, encodedTx_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!encodedTx_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, encodedTx_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_rawTransaction)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_rawTransaction other = (org.aion.api.server.pb.Message.req_rawTransaction) obj;
  
        boolean result = true;
        result = result && getEncodedTx()
            .equals(other.getEncodedTx());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ENCODEDTX_FIELD_NUMBER;
        hash = (53 * hash) + getEncodedTx().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_rawTransaction parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_rawTransaction prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_rawTransaction}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_rawTransaction)
          org.aion.api.server.pb.Message.req_rawTransactionOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_rawTransaction_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_rawTransaction_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_rawTransaction.class, org.aion.api.server.pb.Message.req_rawTransaction.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_rawTransaction.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          encodedTx_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_rawTransaction_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_rawTransaction getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_rawTransaction.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_rawTransaction build() {
          org.aion.api.server.pb.Message.req_rawTransaction result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_rawTransaction buildPartial() {
          org.aion.api.server.pb.Message.req_rawTransaction result = new org.aion.api.server.pb.Message.req_rawTransaction(this);
          result.encodedTx_ = encodedTx_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_rawTransaction) {
            return mergeFrom((org.aion.api.server.pb.Message.req_rawTransaction)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_rawTransaction other) {
          if (other == org.aion.api.server.pb.Message.req_rawTransaction.getDefaultInstance()) return this;
          if (other.getEncodedTx() != com.google.protobuf.ByteString.EMPTY) {
            setEncodedTx(other.getEncodedTx());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_rawTransaction parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_rawTransaction) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString encodedTx_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes encodedTx = 1;</code>
         */
        public com.google.protobuf.ByteString getEncodedTx() {
          return encodedTx_;
        }
        /**
         * <code>bytes encodedTx = 1;</code>
         */
        public Builder setEncodedTx(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          encodedTx_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes encodedTx = 1;</code>
         */
        public Builder clearEncodedTx() {
          
          encodedTx_ = getDefaultInstance().getEncodedTx();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_rawTransaction)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_rawTransaction)
      private static final org.aion.api.server.pb.Message.req_rawTransaction DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_rawTransaction();
      }
  
      public static org.aion.api.server.pb.Message.req_rawTransaction getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_rawTransaction>
          PARSER = new com.google.protobuf.AbstractParser<req_rawTransaction>() {
        public req_rawTransaction parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_rawTransaction(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_rawTransaction> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_rawTransaction> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_rawTransaction getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_estimateNrgOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_estimateNrg)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes from = 1;</code>
       */
      com.google.protobuf.ByteString getFrom();
  
      /**
       * <code>bytes to = 2;</code>
       */
      com.google.protobuf.ByteString getTo();
  
      /**
       * <code>bytes value = 3;</code>
       */
      com.google.protobuf.ByteString getValue();
  
      /**
       * <code>bytes data = 4;</code>
       */
      com.google.protobuf.ByteString getData();
  
      /**
       * <code>uint64 nrg = 5;</code>
       */
      long getNrg();
  
      /**
       * <code>uint64 nrgPrice = 6;</code>
       */
      long getNrgPrice();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_estimateNrg}
     */
    public  static final class req_estimateNrg extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_estimateNrg)
        req_estimateNrgOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_estimateNrg.newBuilder() to construct.
      private req_estimateNrg(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_estimateNrg() {
        from_ = com.google.protobuf.ByteString.EMPTY;
        to_ = com.google.protobuf.ByteString.EMPTY;
        value_ = com.google.protobuf.ByteString.EMPTY;
        data_ = com.google.protobuf.ByteString.EMPTY;
        nrg_ = 0L;
        nrgPrice_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_estimateNrg(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                from_ = input.readBytes();
                break;
              }
              case 18: {
  
                to_ = input.readBytes();
                break;
              }
              case 26: {
  
                value_ = input.readBytes();
                break;
              }
              case 34: {
  
                data_ = input.readBytes();
                break;
              }
              case 40: {
  
                nrg_ = input.readUInt64();
                break;
              }
              case 48: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_estimateNrg_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_estimateNrg_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_estimateNrg.class, org.aion.api.server.pb.Message.req_estimateNrg.Builder.class);
      }
  
      public static final int FROM_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString from_;
      /**
       * <code>bytes from = 1;</code>
       */
      public com.google.protobuf.ByteString getFrom() {
        return from_;
      }
  
      public static final int TO_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString to_;
      /**
       * <code>bytes to = 2;</code>
       */
      public com.google.protobuf.ByteString getTo() {
        return to_;
      }
  
      public static final int VALUE_FIELD_NUMBER = 3;
      private com.google.protobuf.ByteString value_;
      /**
       * <code>bytes value = 3;</code>
       */
      public com.google.protobuf.ByteString getValue() {
        return value_;
      }
  
      public static final int DATA_FIELD_NUMBER = 4;
      private com.google.protobuf.ByteString data_;
      /**
       * <code>bytes data = 4;</code>
       */
      public com.google.protobuf.ByteString getData() {
        return data_;
      }
  
      public static final int NRG_FIELD_NUMBER = 5;
      private long nrg_;
      /**
       * <code>uint64 nrg = 5;</code>
       */
      public long getNrg() {
        return nrg_;
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 6;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 6;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!from_.isEmpty()) {
          output.writeBytes(1, from_);
        }
        if (!to_.isEmpty()) {
          output.writeBytes(2, to_);
        }
        if (!value_.isEmpty()) {
          output.writeBytes(3, value_);
        }
        if (!data_.isEmpty()) {
          output.writeBytes(4, data_);
        }
        if (nrg_ != 0L) {
          output.writeUInt64(5, nrg_);
        }
        if (nrgPrice_ != 0L) {
          output.writeUInt64(6, nrgPrice_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!from_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, from_);
        }
        if (!to_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, to_);
        }
        if (!value_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(3, value_);
        }
        if (!data_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(4, data_);
        }
        if (nrg_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(5, nrg_);
        }
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(6, nrgPrice_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_estimateNrg)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_estimateNrg other = (org.aion.api.server.pb.Message.req_estimateNrg) obj;
  
        boolean result = true;
        result = result && getFrom()
            .equals(other.getFrom());
        result = result && getTo()
            .equals(other.getTo());
        result = result && getValue()
            .equals(other.getValue());
        result = result && getData()
            .equals(other.getData());
        result = result && (getNrg()
            == other.getNrg());
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + FROM_FIELD_NUMBER;
        hash = (53 * hash) + getFrom().hashCode();
        hash = (37 * hash) + TO_FIELD_NUMBER;
        hash = (53 * hash) + getTo().hashCode();
        hash = (37 * hash) + VALUE_FIELD_NUMBER;
        hash = (53 * hash) + getValue().hashCode();
        hash = (37 * hash) + DATA_FIELD_NUMBER;
        hash = (53 * hash) + getData().hashCode();
        hash = (37 * hash) + NRG_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrg());
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_estimateNrg parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_estimateNrg prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_estimateNrg}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_estimateNrg)
          org.aion.api.server.pb.Message.req_estimateNrgOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_estimateNrg_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_estimateNrg_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_estimateNrg.class, org.aion.api.server.pb.Message.req_estimateNrg.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_estimateNrg.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          from_ = com.google.protobuf.ByteString.EMPTY;
  
          to_ = com.google.protobuf.ByteString.EMPTY;
  
          value_ = com.google.protobuf.ByteString.EMPTY;
  
          data_ = com.google.protobuf.ByteString.EMPTY;
  
          nrg_ = 0L;
  
          nrgPrice_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_estimateNrg_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_estimateNrg getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_estimateNrg.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_estimateNrg build() {
          org.aion.api.server.pb.Message.req_estimateNrg result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_estimateNrg buildPartial() {
          org.aion.api.server.pb.Message.req_estimateNrg result = new org.aion.api.server.pb.Message.req_estimateNrg(this);
          result.from_ = from_;
          result.to_ = to_;
          result.value_ = value_;
          result.data_ = data_;
          result.nrg_ = nrg_;
          result.nrgPrice_ = nrgPrice_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_estimateNrg) {
            return mergeFrom((org.aion.api.server.pb.Message.req_estimateNrg)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_estimateNrg other) {
          if (other == org.aion.api.server.pb.Message.req_estimateNrg.getDefaultInstance()) return this;
          if (other.getFrom() != com.google.protobuf.ByteString.EMPTY) {
            setFrom(other.getFrom());
          }
          if (other.getTo() != com.google.protobuf.ByteString.EMPTY) {
            setTo(other.getTo());
          }
          if (other.getValue() != com.google.protobuf.ByteString.EMPTY) {
            setValue(other.getValue());
          }
          if (other.getData() != com.google.protobuf.ByteString.EMPTY) {
            setData(other.getData());
          }
          if (other.getNrg() != 0L) {
            setNrg(other.getNrg());
          }
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_estimateNrg parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_estimateNrg) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString from_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes from = 1;</code>
         */
        public com.google.protobuf.ByteString getFrom() {
          return from_;
        }
        /**
         * <code>bytes from = 1;</code>
         */
        public Builder setFrom(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          from_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes from = 1;</code>
         */
        public Builder clearFrom() {
          
          from_ = getDefaultInstance().getFrom();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString to_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes to = 2;</code>
         */
        public com.google.protobuf.ByteString getTo() {
          return to_;
        }
        /**
         * <code>bytes to = 2;</code>
         */
        public Builder setTo(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          to_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes to = 2;</code>
         */
        public Builder clearTo() {
          
          to_ = getDefaultInstance().getTo();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString value_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes value = 3;</code>
         */
        public com.google.protobuf.ByteString getValue() {
          return value_;
        }
        /**
         * <code>bytes value = 3;</code>
         */
        public Builder setValue(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          value_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes value = 3;</code>
         */
        public Builder clearValue() {
          
          value_ = getDefaultInstance().getValue();
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString data_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes data = 4;</code>
         */
        public com.google.protobuf.ByteString getData() {
          return data_;
        }
        /**
         * <code>bytes data = 4;</code>
         */
        public Builder setData(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          data_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes data = 4;</code>
         */
        public Builder clearData() {
          
          data_ = getDefaultInstance().getData();
          onChanged();
          return this;
        }
  
        private long nrg_ ;
        /**
         * <code>uint64 nrg = 5;</code>
         */
        public long getNrg() {
          return nrg_;
        }
        /**
         * <code>uint64 nrg = 5;</code>
         */
        public Builder setNrg(long value) {
          
          nrg_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrg = 5;</code>
         */
        public Builder clearNrg() {
          
          nrg_ = 0L;
          onChanged();
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 6;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 6;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 6;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_estimateNrg)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_estimateNrg)
      private static final org.aion.api.server.pb.Message.req_estimateNrg DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_estimateNrg();
      }
  
      public static org.aion.api.server.pb.Message.req_estimateNrg getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_estimateNrg>
          PARSER = new com.google.protobuf.AbstractParser<req_estimateNrg>() {
        public req_estimateNrg parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_estimateNrg(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_estimateNrg> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_estimateNrg> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_estimateNrg getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_estimateNrgOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_estimateNrg)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 nrg = 1;</code>
       */
      long getNrg();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_estimateNrg}
     */
    public  static final class rsp_estimateNrg extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_estimateNrg)
        rsp_estimateNrgOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_estimateNrg.newBuilder() to construct.
      private rsp_estimateNrg(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_estimateNrg() {
        nrg_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_estimateNrg(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                nrg_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_estimateNrg_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_estimateNrg_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_estimateNrg.class, org.aion.api.server.pb.Message.rsp_estimateNrg.Builder.class);
      }
  
      public static final int NRG_FIELD_NUMBER = 1;
      private long nrg_;
      /**
       * <code>uint64 nrg = 1;</code>
       */
      public long getNrg() {
        return nrg_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (nrg_ != 0L) {
          output.writeUInt64(1, nrg_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (nrg_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, nrg_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_estimateNrg)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_estimateNrg other = (org.aion.api.server.pb.Message.rsp_estimateNrg) obj;
  
        boolean result = true;
        result = result && (getNrg()
            == other.getNrg());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + NRG_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrg());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_estimateNrg parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_estimateNrg prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_estimateNrg}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_estimateNrg)
          org.aion.api.server.pb.Message.rsp_estimateNrgOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_estimateNrg_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_estimateNrg_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_estimateNrg.class, org.aion.api.server.pb.Message.rsp_estimateNrg.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_estimateNrg.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          nrg_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_estimateNrg_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_estimateNrg getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_estimateNrg.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_estimateNrg build() {
          org.aion.api.server.pb.Message.rsp_estimateNrg result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_estimateNrg buildPartial() {
          org.aion.api.server.pb.Message.rsp_estimateNrg result = new org.aion.api.server.pb.Message.rsp_estimateNrg(this);
          result.nrg_ = nrg_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_estimateNrg) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_estimateNrg)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_estimateNrg other) {
          if (other == org.aion.api.server.pb.Message.rsp_estimateNrg.getDefaultInstance()) return this;
          if (other.getNrg() != 0L) {
            setNrg(other.getNrg());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_estimateNrg parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_estimateNrg) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long nrg_ ;
        /**
         * <code>uint64 nrg = 1;</code>
         */
        public long getNrg() {
          return nrg_;
        }
        /**
         * <code>uint64 nrg = 1;</code>
         */
        public Builder setNrg(long value) {
          
          nrg_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrg = 1;</code>
         */
        public Builder clearNrg() {
          
          nrg_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_estimateNrg)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_estimateNrg)
      private static final org.aion.api.server.pb.Message.rsp_estimateNrg DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_estimateNrg();
      }
  
      public static org.aion.api.server.pb.Message.rsp_estimateNrg getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_estimateNrg>
          PARSER = new com.google.protobuf.AbstractParser<rsp_estimateNrg>() {
        public rsp_estimateNrg parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_estimateNrg(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_estimateNrg> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_estimateNrg> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_estimateNrg getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_miningOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_mining)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool mining = 1;</code>
       */
      boolean getMining();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_mining}
     */
    public  static final class rsp_mining extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_mining)
        rsp_miningOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_mining.newBuilder() to construct.
      private rsp_mining(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_mining() {
        mining_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_mining(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                mining_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_mining_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_mining_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_mining.class, org.aion.api.server.pb.Message.rsp_mining.Builder.class);
      }
  
      public static final int MINING_FIELD_NUMBER = 1;
      private boolean mining_;
      /**
       * <code>bool mining = 1;</code>
       */
      public boolean getMining() {
        return mining_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (mining_ != false) {
          output.writeBool(1, mining_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (mining_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, mining_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_mining)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_mining other = (org.aion.api.server.pb.Message.rsp_mining) obj;
  
        boolean result = true;
        result = result && (getMining()
            == other.getMining());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + MINING_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getMining());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_mining parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_mining prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_mining}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_mining)
          org.aion.api.server.pb.Message.rsp_miningOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_mining_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_mining_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_mining.class, org.aion.api.server.pb.Message.rsp_mining.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_mining.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          mining_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_mining_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_mining getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_mining.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_mining build() {
          org.aion.api.server.pb.Message.rsp_mining result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_mining buildPartial() {
          org.aion.api.server.pb.Message.rsp_mining result = new org.aion.api.server.pb.Message.rsp_mining(this);
          result.mining_ = mining_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_mining) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_mining)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_mining other) {
          if (other == org.aion.api.server.pb.Message.rsp_mining.getDefaultInstance()) return this;
          if (other.getMining() != false) {
            setMining(other.getMining());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_mining parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_mining) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean mining_ ;
        /**
         * <code>bool mining = 1;</code>
         */
        public boolean getMining() {
          return mining_;
        }
        /**
         * <code>bool mining = 1;</code>
         */
        public Builder setMining(boolean value) {
          
          mining_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool mining = 1;</code>
         */
        public Builder clearMining() {
          
          mining_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_mining)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_mining)
      private static final org.aion.api.server.pb.Message.rsp_mining DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_mining();
      }
  
      public static org.aion.api.server.pb.Message.rsp_mining getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_mining>
          PARSER = new com.google.protobuf.AbstractParser<rsp_mining>() {
        public rsp_mining parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_mining(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_mining> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_mining> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_mining getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_hashrateOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_hashrate)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 hashrate = 1;</code>
       */
      long getHashrate();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_hashrate}
     */
    public  static final class rsp_hashrate extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_hashrate)
        rsp_hashrateOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_hashrate.newBuilder() to construct.
      private rsp_hashrate(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_hashrate() {
        hashrate_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_hashrate(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                hashrate_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_hashrate_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_hashrate_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_hashrate.class, org.aion.api.server.pb.Message.rsp_hashrate.Builder.class);
      }
  
      public static final int HASHRATE_FIELD_NUMBER = 1;
      private long hashrate_;
      /**
       * <code>uint64 hashrate = 1;</code>
       */
      public long getHashrate() {
        return hashrate_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (hashrate_ != 0L) {
          output.writeUInt64(1, hashrate_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (hashrate_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, hashrate_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_hashrate)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_hashrate other = (org.aion.api.server.pb.Message.rsp_hashrate) obj;
  
        boolean result = true;
        result = result && (getHashrate()
            == other.getHashrate());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + HASHRATE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getHashrate());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_hashrate parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_hashrate prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_hashrate}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_hashrate)
          org.aion.api.server.pb.Message.rsp_hashrateOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_hashrate_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_hashrate_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_hashrate.class, org.aion.api.server.pb.Message.rsp_hashrate.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_hashrate.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          hashrate_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_hashrate_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_hashrate getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_hashrate.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_hashrate build() {
          org.aion.api.server.pb.Message.rsp_hashrate result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_hashrate buildPartial() {
          org.aion.api.server.pb.Message.rsp_hashrate result = new org.aion.api.server.pb.Message.rsp_hashrate(this);
          result.hashrate_ = hashrate_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_hashrate) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_hashrate)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_hashrate other) {
          if (other == org.aion.api.server.pb.Message.rsp_hashrate.getDefaultInstance()) return this;
          if (other.getHashrate() != 0L) {
            setHashrate(other.getHashrate());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_hashrate parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_hashrate) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long hashrate_ ;
        /**
         * <code>uint64 hashrate = 1;</code>
         */
        public long getHashrate() {
          return hashrate_;
        }
        /**
         * <code>uint64 hashrate = 1;</code>
         */
        public Builder setHashrate(long value) {
          
          hashrate_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 hashrate = 1;</code>
         */
        public Builder clearHashrate() {
          
          hashrate_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_hashrate)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_hashrate)
      private static final org.aion.api.server.pb.Message.rsp_hashrate DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_hashrate();
      }
  
      public static org.aion.api.server.pb.Message.rsp_hashrate getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_hashrate>
          PARSER = new com.google.protobuf.AbstractParser<rsp_hashrate>() {
        public rsp_hashrate parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_hashrate(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_hashrate> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_hashrate> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_hashrate getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getActiveNodesOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getActiveNodes)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_Node> 
          getNodeList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      org.aion.api.server.pb.Message.t_Node getNode(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      int getNodeCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_NodeOrBuilder> 
          getNodeOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      org.aion.api.server.pb.Message.t_NodeOrBuilder getNodeOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getActiveNodes}
     */
    public  static final class rsp_getActiveNodes extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getActiveNodes)
        rsp_getActiveNodesOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getActiveNodes.newBuilder() to construct.
      private rsp_getActiveNodes(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getActiveNodes() {
        node_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getActiveNodes(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  node_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Node>();
                  mutable_bitField0_ |= 0x00000001;
                }
                node_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_Node.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            node_ = java.util.Collections.unmodifiableList(node_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getActiveNodes_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getActiveNodes_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getActiveNodes.class, org.aion.api.server.pb.Message.rsp_getActiveNodes.Builder.class);
      }
  
      public static final int NODE_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_Node> node_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_Node> getNodeList() {
        return node_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_NodeOrBuilder> 
          getNodeOrBuilderList() {
        return node_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public int getNodeCount() {
        return node_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_Node getNode(int index) {
        return node_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_NodeOrBuilder getNodeOrBuilder(
          int index) {
        return node_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < node_.size(); i++) {
          output.writeMessage(1, node_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < node_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, node_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getActiveNodes)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getActiveNodes other = (org.aion.api.server.pb.Message.rsp_getActiveNodes) obj;
  
        boolean result = true;
        result = result && getNodeList()
            .equals(other.getNodeList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getNodeCount() > 0) {
          hash = (37 * hash) + NODE_FIELD_NUMBER;
          hash = (53 * hash) + getNodeList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getActiveNodes prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getActiveNodes}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getActiveNodes)
          org.aion.api.server.pb.Message.rsp_getActiveNodesOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getActiveNodes_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getActiveNodes_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getActiveNodes.class, org.aion.api.server.pb.Message.rsp_getActiveNodes.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getActiveNodes.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getNodeFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (nodeBuilder_ == null) {
            node_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            nodeBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getActiveNodes_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getActiveNodes getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getActiveNodes.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getActiveNodes build() {
          org.aion.api.server.pb.Message.rsp_getActiveNodes result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getActiveNodes buildPartial() {
          org.aion.api.server.pb.Message.rsp_getActiveNodes result = new org.aion.api.server.pb.Message.rsp_getActiveNodes(this);
          int from_bitField0_ = bitField0_;
          if (nodeBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              node_ = java.util.Collections.unmodifiableList(node_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.node_ = node_;
          } else {
            result.node_ = nodeBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getActiveNodes) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getActiveNodes)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getActiveNodes other) {
          if (other == org.aion.api.server.pb.Message.rsp_getActiveNodes.getDefaultInstance()) return this;
          if (nodeBuilder_ == null) {
            if (!other.node_.isEmpty()) {
              if (node_.isEmpty()) {
                node_ = other.node_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureNodeIsMutable();
                node_.addAll(other.node_);
              }
              onChanged();
            }
          } else {
            if (!other.node_.isEmpty()) {
              if (nodeBuilder_.isEmpty()) {
                nodeBuilder_.dispose();
                nodeBuilder_ = null;
                node_ = other.node_;
                bitField0_ = (bitField0_ & ~0x00000001);
                nodeBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getNodeFieldBuilder() : null;
              } else {
                nodeBuilder_.addAllMessages(other.node_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getActiveNodes parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getActiveNodes) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_Node> node_ =
          java.util.Collections.emptyList();
        private void ensureNodeIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            node_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Node>(node_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Node, org.aion.api.server.pb.Message.t_Node.Builder, org.aion.api.server.pb.Message.t_NodeOrBuilder> nodeBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Node> getNodeList() {
          if (nodeBuilder_ == null) {
            return java.util.Collections.unmodifiableList(node_);
          } else {
            return nodeBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public int getNodeCount() {
          if (nodeBuilder_ == null) {
            return node_.size();
          } else {
            return nodeBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node getNode(int index) {
          if (nodeBuilder_ == null) {
            return node_.get(index);
          } else {
            return nodeBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder setNode(
            int index, org.aion.api.server.pb.Message.t_Node value) {
          if (nodeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureNodeIsMutable();
            node_.set(index, value);
            onChanged();
          } else {
            nodeBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder setNode(
            int index, org.aion.api.server.pb.Message.t_Node.Builder builderForValue) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.set(index, builderForValue.build());
            onChanged();
          } else {
            nodeBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(org.aion.api.server.pb.Message.t_Node value) {
          if (nodeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureNodeIsMutable();
            node_.add(value);
            onChanged();
          } else {
            nodeBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(
            int index, org.aion.api.server.pb.Message.t_Node value) {
          if (nodeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureNodeIsMutable();
            node_.add(index, value);
            onChanged();
          } else {
            nodeBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(
            org.aion.api.server.pb.Message.t_Node.Builder builderForValue) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.add(builderForValue.build());
            onChanged();
          } else {
            nodeBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(
            int index, org.aion.api.server.pb.Message.t_Node.Builder builderForValue) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.add(index, builderForValue.build());
            onChanged();
          } else {
            nodeBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addAllNode(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_Node> values) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, node_);
            onChanged();
          } else {
            nodeBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder clearNode() {
          if (nodeBuilder_ == null) {
            node_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            nodeBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder removeNode(int index) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.remove(index);
            onChanged();
          } else {
            nodeBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node.Builder getNodeBuilder(
            int index) {
          return getNodeFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_NodeOrBuilder getNodeOrBuilder(
            int index) {
          if (nodeBuilder_ == null) {
            return node_.get(index);  } else {
            return nodeBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_NodeOrBuilder> 
             getNodeOrBuilderList() {
          if (nodeBuilder_ != null) {
            return nodeBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(node_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node.Builder addNodeBuilder() {
          return getNodeFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_Node.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node.Builder addNodeBuilder(
            int index) {
          return getNodeFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_Node.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Node.Builder> 
             getNodeBuilderList() {
          return getNodeFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Node, org.aion.api.server.pb.Message.t_Node.Builder, org.aion.api.server.pb.Message.t_NodeOrBuilder> 
            getNodeFieldBuilder() {
          if (nodeBuilder_ == null) {
            nodeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_Node, org.aion.api.server.pb.Message.t_Node.Builder, org.aion.api.server.pb.Message.t_NodeOrBuilder>(
                    node_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            node_ = null;
          }
          return nodeBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getActiveNodes)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getActiveNodes)
      private static final org.aion.api.server.pb.Message.rsp_getActiveNodes DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getActiveNodes();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getActiveNodes getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getActiveNodes>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getActiveNodes>() {
        public rsp_getActiveNodes parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getActiveNodes(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getActiveNodes> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getActiveNodes> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getActiveNodes getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getStaticNodesOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getStaticNodes)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_Node> 
          getNodeList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      org.aion.api.server.pb.Message.t_Node getNode(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      int getNodeCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_NodeOrBuilder> 
          getNodeOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      org.aion.api.server.pb.Message.t_NodeOrBuilder getNodeOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getStaticNodes}
     */
    public  static final class rsp_getStaticNodes extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getStaticNodes)
        rsp_getStaticNodesOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getStaticNodes.newBuilder() to construct.
      private rsp_getStaticNodes(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getStaticNodes() {
        node_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getStaticNodes(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  node_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Node>();
                  mutable_bitField0_ |= 0x00000001;
                }
                node_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_Node.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            node_ = java.util.Collections.unmodifiableList(node_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStaticNodes_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStaticNodes_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getStaticNodes.class, org.aion.api.server.pb.Message.rsp_getStaticNodes.Builder.class);
      }
  
      public static final int NODE_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_Node> node_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_Node> getNodeList() {
        return node_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_NodeOrBuilder> 
          getNodeOrBuilderList() {
        return node_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public int getNodeCount() {
        return node_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_Node getNode(int index) {
        return node_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_NodeOrBuilder getNodeOrBuilder(
          int index) {
        return node_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < node_.size(); i++) {
          output.writeMessage(1, node_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < node_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, node_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getStaticNodes)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getStaticNodes other = (org.aion.api.server.pb.Message.rsp_getStaticNodes) obj;
  
        boolean result = true;
        result = result && getNodeList()
            .equals(other.getNodeList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getNodeCount() > 0) {
          hash = (37 * hash) + NODE_FIELD_NUMBER;
          hash = (53 * hash) + getNodeList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getStaticNodes prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getStaticNodes}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getStaticNodes)
          org.aion.api.server.pb.Message.rsp_getStaticNodesOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStaticNodes_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStaticNodes_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getStaticNodes.class, org.aion.api.server.pb.Message.rsp_getStaticNodes.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getStaticNodes.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getNodeFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (nodeBuilder_ == null) {
            node_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            nodeBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getStaticNodes_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getStaticNodes getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getStaticNodes.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getStaticNodes build() {
          org.aion.api.server.pb.Message.rsp_getStaticNodes result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getStaticNodes buildPartial() {
          org.aion.api.server.pb.Message.rsp_getStaticNodes result = new org.aion.api.server.pb.Message.rsp_getStaticNodes(this);
          int from_bitField0_ = bitField0_;
          if (nodeBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              node_ = java.util.Collections.unmodifiableList(node_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.node_ = node_;
          } else {
            result.node_ = nodeBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getStaticNodes) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getStaticNodes)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getStaticNodes other) {
          if (other == org.aion.api.server.pb.Message.rsp_getStaticNodes.getDefaultInstance()) return this;
          if (nodeBuilder_ == null) {
            if (!other.node_.isEmpty()) {
              if (node_.isEmpty()) {
                node_ = other.node_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureNodeIsMutable();
                node_.addAll(other.node_);
              }
              onChanged();
            }
          } else {
            if (!other.node_.isEmpty()) {
              if (nodeBuilder_.isEmpty()) {
                nodeBuilder_.dispose();
                nodeBuilder_ = null;
                node_ = other.node_;
                bitField0_ = (bitField0_ & ~0x00000001);
                nodeBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getNodeFieldBuilder() : null;
              } else {
                nodeBuilder_.addAllMessages(other.node_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getStaticNodes parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getStaticNodes) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_Node> node_ =
          java.util.Collections.emptyList();
        private void ensureNodeIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            node_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Node>(node_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Node, org.aion.api.server.pb.Message.t_Node.Builder, org.aion.api.server.pb.Message.t_NodeOrBuilder> nodeBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Node> getNodeList() {
          if (nodeBuilder_ == null) {
            return java.util.Collections.unmodifiableList(node_);
          } else {
            return nodeBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public int getNodeCount() {
          if (nodeBuilder_ == null) {
            return node_.size();
          } else {
            return nodeBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node getNode(int index) {
          if (nodeBuilder_ == null) {
            return node_.get(index);
          } else {
            return nodeBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder setNode(
            int index, org.aion.api.server.pb.Message.t_Node value) {
          if (nodeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureNodeIsMutable();
            node_.set(index, value);
            onChanged();
          } else {
            nodeBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder setNode(
            int index, org.aion.api.server.pb.Message.t_Node.Builder builderForValue) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.set(index, builderForValue.build());
            onChanged();
          } else {
            nodeBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(org.aion.api.server.pb.Message.t_Node value) {
          if (nodeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureNodeIsMutable();
            node_.add(value);
            onChanged();
          } else {
            nodeBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(
            int index, org.aion.api.server.pb.Message.t_Node value) {
          if (nodeBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureNodeIsMutable();
            node_.add(index, value);
            onChanged();
          } else {
            nodeBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(
            org.aion.api.server.pb.Message.t_Node.Builder builderForValue) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.add(builderForValue.build());
            onChanged();
          } else {
            nodeBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addNode(
            int index, org.aion.api.server.pb.Message.t_Node.Builder builderForValue) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.add(index, builderForValue.build());
            onChanged();
          } else {
            nodeBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder addAllNode(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_Node> values) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, node_);
            onChanged();
          } else {
            nodeBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder clearNode() {
          if (nodeBuilder_ == null) {
            node_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            nodeBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public Builder removeNode(int index) {
          if (nodeBuilder_ == null) {
            ensureNodeIsMutable();
            node_.remove(index);
            onChanged();
          } else {
            nodeBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node.Builder getNodeBuilder(
            int index) {
          return getNodeFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_NodeOrBuilder getNodeOrBuilder(
            int index) {
          if (nodeBuilder_ == null) {
            return node_.get(index);  } else {
            return nodeBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_NodeOrBuilder> 
             getNodeOrBuilderList() {
          if (nodeBuilder_ != null) {
            return nodeBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(node_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node.Builder addNodeBuilder() {
          return getNodeFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_Node.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Node.Builder addNodeBuilder(
            int index) {
          return getNodeFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_Node.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Node node = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Node.Builder> 
             getNodeBuilderList() {
          return getNodeFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Node, org.aion.api.server.pb.Message.t_Node.Builder, org.aion.api.server.pb.Message.t_NodeOrBuilder> 
            getNodeFieldBuilder() {
          if (nodeBuilder_ == null) {
            nodeBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_Node, org.aion.api.server.pb.Message.t_Node.Builder, org.aion.api.server.pb.Message.t_NodeOrBuilder>(
                    node_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            node_ = null;
          }
          return nodeBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getStaticNodes)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getStaticNodes)
      private static final org.aion.api.server.pb.Message.rsp_getStaticNodes DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getStaticNodes();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getStaticNodes getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getStaticNodes>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getStaticNodes>() {
        public rsp_getStaticNodes parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getStaticNodes(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getStaticNodes> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getStaticNodes> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getStaticNodes getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getSolcVersionOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getSolcVersion)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string ver = 1;</code>
       */
      java.lang.String getVer();
      /**
       * <code>string ver = 1;</code>
       */
      com.google.protobuf.ByteString
          getVerBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getSolcVersion}
     */
    public  static final class rsp_getSolcVersion extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getSolcVersion)
        rsp_getSolcVersionOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getSolcVersion.newBuilder() to construct.
      private rsp_getSolcVersion(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getSolcVersion() {
        ver_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getSolcVersion(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                ver_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getSolcVersion_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getSolcVersion_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getSolcVersion.class, org.aion.api.server.pb.Message.rsp_getSolcVersion.Builder.class);
      }
  
      public static final int VER_FIELD_NUMBER = 1;
      private volatile java.lang.Object ver_;
      /**
       * <code>string ver = 1;</code>
       */
      public java.lang.String getVer() {
        java.lang.Object ref = ver_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          ver_ = s;
          return s;
        }
      }
      /**
       * <code>string ver = 1;</code>
       */
      public com.google.protobuf.ByteString
          getVerBytes() {
        java.lang.Object ref = ver_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          ver_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getVerBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, ver_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getVerBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, ver_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getSolcVersion)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getSolcVersion other = (org.aion.api.server.pb.Message.rsp_getSolcVersion) obj;
  
        boolean result = true;
        result = result && getVer()
            .equals(other.getVer());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + VER_FIELD_NUMBER;
        hash = (53 * hash) + getVer().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getSolcVersion prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getSolcVersion}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getSolcVersion)
          org.aion.api.server.pb.Message.rsp_getSolcVersionOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getSolcVersion_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getSolcVersion_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getSolcVersion.class, org.aion.api.server.pb.Message.rsp_getSolcVersion.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getSolcVersion.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          ver_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getSolcVersion_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getSolcVersion getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getSolcVersion.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getSolcVersion build() {
          org.aion.api.server.pb.Message.rsp_getSolcVersion result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getSolcVersion buildPartial() {
          org.aion.api.server.pb.Message.rsp_getSolcVersion result = new org.aion.api.server.pb.Message.rsp_getSolcVersion(this);
          result.ver_ = ver_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getSolcVersion) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getSolcVersion)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getSolcVersion other) {
          if (other == org.aion.api.server.pb.Message.rsp_getSolcVersion.getDefaultInstance()) return this;
          if (!other.getVer().isEmpty()) {
            ver_ = other.ver_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getSolcVersion parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getSolcVersion) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object ver_ = "";
        /**
         * <code>string ver = 1;</code>
         */
        public java.lang.String getVer() {
          java.lang.Object ref = ver_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            ver_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string ver = 1;</code>
         */
        public com.google.protobuf.ByteString
            getVerBytes() {
          java.lang.Object ref = ver_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            ver_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string ver = 1;</code>
         */
        public Builder setVer(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          ver_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string ver = 1;</code>
         */
        public Builder clearVer() {
          
          ver_ = getDefaultInstance().getVer();
          onChanged();
          return this;
        }
        /**
         * <code>string ver = 1;</code>
         */
        public Builder setVerBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          ver_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getSolcVersion)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getSolcVersion)
      private static final org.aion.api.server.pb.Message.rsp_getSolcVersion DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getSolcVersion();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getSolcVersion getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getSolcVersion>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getSolcVersion>() {
        public rsp_getSolcVersion parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getSolcVersion(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getSolcVersion> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getSolcVersion> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getSolcVersion getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_isSyncingOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_isSyncing)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool syncing = 1;</code>
       */
      boolean getSyncing();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_isSyncing}
     */
    public  static final class rsp_isSyncing extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_isSyncing)
        rsp_isSyncingOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_isSyncing.newBuilder() to construct.
      private rsp_isSyncing(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_isSyncing() {
        syncing_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_isSyncing(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                syncing_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_isSyncing_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_isSyncing_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_isSyncing.class, org.aion.api.server.pb.Message.rsp_isSyncing.Builder.class);
      }
  
      public static final int SYNCING_FIELD_NUMBER = 1;
      private boolean syncing_;
      /**
       * <code>bool syncing = 1;</code>
       */
      public boolean getSyncing() {
        return syncing_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (syncing_ != false) {
          output.writeBool(1, syncing_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (syncing_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, syncing_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_isSyncing)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_isSyncing other = (org.aion.api.server.pb.Message.rsp_isSyncing) obj;
  
        boolean result = true;
        result = result && (getSyncing()
            == other.getSyncing());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + SYNCING_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getSyncing());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_isSyncing parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_isSyncing prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_isSyncing}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_isSyncing)
          org.aion.api.server.pb.Message.rsp_isSyncingOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_isSyncing_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_isSyncing_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_isSyncing.class, org.aion.api.server.pb.Message.rsp_isSyncing.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_isSyncing.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          syncing_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_isSyncing_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_isSyncing getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_isSyncing.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_isSyncing build() {
          org.aion.api.server.pb.Message.rsp_isSyncing result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_isSyncing buildPartial() {
          org.aion.api.server.pb.Message.rsp_isSyncing result = new org.aion.api.server.pb.Message.rsp_isSyncing(this);
          result.syncing_ = syncing_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_isSyncing) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_isSyncing)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_isSyncing other) {
          if (other == org.aion.api.server.pb.Message.rsp_isSyncing.getDefaultInstance()) return this;
          if (other.getSyncing() != false) {
            setSyncing(other.getSyncing());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_isSyncing parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_isSyncing) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean syncing_ ;
        /**
         * <code>bool syncing = 1;</code>
         */
        public boolean getSyncing() {
          return syncing_;
        }
        /**
         * <code>bool syncing = 1;</code>
         */
        public Builder setSyncing(boolean value) {
          
          syncing_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool syncing = 1;</code>
         */
        public Builder clearSyncing() {
          
          syncing_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_isSyncing)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_isSyncing)
      private static final org.aion.api.server.pb.Message.rsp_isSyncing DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_isSyncing();
      }
  
      public static org.aion.api.server.pb.Message.rsp_isSyncing getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_isSyncing>
          PARSER = new com.google.protobuf.AbstractParser<rsp_isSyncing>() {
        public rsp_isSyncing parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_isSyncing(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_isSyncing> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_isSyncing> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_isSyncing getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_syncInfoOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_syncInfo)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool syncing = 1;</code>
       */
      boolean getSyncing();
  
      /**
       * <code>uint64 networkBestBlock = 2;</code>
       */
      long getNetworkBestBlock();
  
      /**
       * <code>uint64 chainBestBlock = 3;</code>
       */
      long getChainBestBlock();
  
      /**
       * <code>uint32 maxImportBlocks = 4;</code>
       */
      int getMaxImportBlocks();
  
      /**
       * <code>uint64 startingBlock = 5;</code>
       */
      long getStartingBlock();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_syncInfo}
     */
    public  static final class rsp_syncInfo extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_syncInfo)
        rsp_syncInfoOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_syncInfo.newBuilder() to construct.
      private rsp_syncInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_syncInfo() {
        syncing_ = false;
        networkBestBlock_ = 0L;
        chainBestBlock_ = 0L;
        maxImportBlocks_ = 0;
        startingBlock_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_syncInfo(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                syncing_ = input.readBool();
                break;
              }
              case 16: {
  
                networkBestBlock_ = input.readUInt64();
                break;
              }
              case 24: {
  
                chainBestBlock_ = input.readUInt64();
                break;
              }
              case 32: {
  
                maxImportBlocks_ = input.readUInt32();
                break;
              }
              case 40: {
  
                startingBlock_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_syncInfo_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_syncInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_syncInfo.class, org.aion.api.server.pb.Message.rsp_syncInfo.Builder.class);
      }
  
      public static final int SYNCING_FIELD_NUMBER = 1;
      private boolean syncing_;
      /**
       * <code>bool syncing = 1;</code>
       */
      public boolean getSyncing() {
        return syncing_;
      }
  
      public static final int NETWORKBESTBLOCK_FIELD_NUMBER = 2;
      private long networkBestBlock_;
      /**
       * <code>uint64 networkBestBlock = 2;</code>
       */
      public long getNetworkBestBlock() {
        return networkBestBlock_;
      }
  
      public static final int CHAINBESTBLOCK_FIELD_NUMBER = 3;
      private long chainBestBlock_;
      /**
       * <code>uint64 chainBestBlock = 3;</code>
       */
      public long getChainBestBlock() {
        return chainBestBlock_;
      }
  
      public static final int MAXIMPORTBLOCKS_FIELD_NUMBER = 4;
      private int maxImportBlocks_;
      /**
       * <code>uint32 maxImportBlocks = 4;</code>
       */
      public int getMaxImportBlocks() {
        return maxImportBlocks_;
      }
  
      public static final int STARTINGBLOCK_FIELD_NUMBER = 5;
      private long startingBlock_;
      /**
       * <code>uint64 startingBlock = 5;</code>
       */
      public long getStartingBlock() {
        return startingBlock_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (syncing_ != false) {
          output.writeBool(1, syncing_);
        }
        if (networkBestBlock_ != 0L) {
          output.writeUInt64(2, networkBestBlock_);
        }
        if (chainBestBlock_ != 0L) {
          output.writeUInt64(3, chainBestBlock_);
        }
        if (maxImportBlocks_ != 0) {
          output.writeUInt32(4, maxImportBlocks_);
        }
        if (startingBlock_ != 0L) {
          output.writeUInt64(5, startingBlock_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (syncing_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, syncing_);
        }
        if (networkBestBlock_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, networkBestBlock_);
        }
        if (chainBestBlock_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, chainBestBlock_);
        }
        if (maxImportBlocks_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(4, maxImportBlocks_);
        }
        if (startingBlock_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(5, startingBlock_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_syncInfo)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_syncInfo other = (org.aion.api.server.pb.Message.rsp_syncInfo) obj;
  
        boolean result = true;
        result = result && (getSyncing()
            == other.getSyncing());
        result = result && (getNetworkBestBlock()
            == other.getNetworkBestBlock());
        result = result && (getChainBestBlock()
            == other.getChainBestBlock());
        result = result && (getMaxImportBlocks()
            == other.getMaxImportBlocks());
        result = result && (getStartingBlock()
            == other.getStartingBlock());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + SYNCING_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getSyncing());
        hash = (37 * hash) + NETWORKBESTBLOCK_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNetworkBestBlock());
        hash = (37 * hash) + CHAINBESTBLOCK_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getChainBestBlock());
        hash = (37 * hash) + MAXIMPORTBLOCKS_FIELD_NUMBER;
        hash = (53 * hash) + getMaxImportBlocks();
        hash = (37 * hash) + STARTINGBLOCK_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getStartingBlock());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_syncInfo parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_syncInfo prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_syncInfo}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_syncInfo)
          org.aion.api.server.pb.Message.rsp_syncInfoOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_syncInfo_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_syncInfo_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_syncInfo.class, org.aion.api.server.pb.Message.rsp_syncInfo.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_syncInfo.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          syncing_ = false;
  
          networkBestBlock_ = 0L;
  
          chainBestBlock_ = 0L;
  
          maxImportBlocks_ = 0;
  
          startingBlock_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_syncInfo_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_syncInfo getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_syncInfo.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_syncInfo build() {
          org.aion.api.server.pb.Message.rsp_syncInfo result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_syncInfo buildPartial() {
          org.aion.api.server.pb.Message.rsp_syncInfo result = new org.aion.api.server.pb.Message.rsp_syncInfo(this);
          result.syncing_ = syncing_;
          result.networkBestBlock_ = networkBestBlock_;
          result.chainBestBlock_ = chainBestBlock_;
          result.maxImportBlocks_ = maxImportBlocks_;
          result.startingBlock_ = startingBlock_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_syncInfo) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_syncInfo)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_syncInfo other) {
          if (other == org.aion.api.server.pb.Message.rsp_syncInfo.getDefaultInstance()) return this;
          if (other.getSyncing() != false) {
            setSyncing(other.getSyncing());
          }
          if (other.getNetworkBestBlock() != 0L) {
            setNetworkBestBlock(other.getNetworkBestBlock());
          }
          if (other.getChainBestBlock() != 0L) {
            setChainBestBlock(other.getChainBestBlock());
          }
          if (other.getMaxImportBlocks() != 0) {
            setMaxImportBlocks(other.getMaxImportBlocks());
          }
          if (other.getStartingBlock() != 0L) {
            setStartingBlock(other.getStartingBlock());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_syncInfo parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_syncInfo) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean syncing_ ;
        /**
         * <code>bool syncing = 1;</code>
         */
        public boolean getSyncing() {
          return syncing_;
        }
        /**
         * <code>bool syncing = 1;</code>
         */
        public Builder setSyncing(boolean value) {
          
          syncing_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool syncing = 1;</code>
         */
        public Builder clearSyncing() {
          
          syncing_ = false;
          onChanged();
          return this;
        }
  
        private long networkBestBlock_ ;
        /**
         * <code>uint64 networkBestBlock = 2;</code>
         */
        public long getNetworkBestBlock() {
          return networkBestBlock_;
        }
        /**
         * <code>uint64 networkBestBlock = 2;</code>
         */
        public Builder setNetworkBestBlock(long value) {
          
          networkBestBlock_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 networkBestBlock = 2;</code>
         */
        public Builder clearNetworkBestBlock() {
          
          networkBestBlock_ = 0L;
          onChanged();
          return this;
        }
  
        private long chainBestBlock_ ;
        /**
         * <code>uint64 chainBestBlock = 3;</code>
         */
        public long getChainBestBlock() {
          return chainBestBlock_;
        }
        /**
         * <code>uint64 chainBestBlock = 3;</code>
         */
        public Builder setChainBestBlock(long value) {
          
          chainBestBlock_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 chainBestBlock = 3;</code>
         */
        public Builder clearChainBestBlock() {
          
          chainBestBlock_ = 0L;
          onChanged();
          return this;
        }
  
        private int maxImportBlocks_ ;
        /**
         * <code>uint32 maxImportBlocks = 4;</code>
         */
        public int getMaxImportBlocks() {
          return maxImportBlocks_;
        }
        /**
         * <code>uint32 maxImportBlocks = 4;</code>
         */
        public Builder setMaxImportBlocks(int value) {
          
          maxImportBlocks_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 maxImportBlocks = 4;</code>
         */
        public Builder clearMaxImportBlocks() {
          
          maxImportBlocks_ = 0;
          onChanged();
          return this;
        }
  
        private long startingBlock_ ;
        /**
         * <code>uint64 startingBlock = 5;</code>
         */
        public long getStartingBlock() {
          return startingBlock_;
        }
        /**
         * <code>uint64 startingBlock = 5;</code>
         */
        public Builder setStartingBlock(long value) {
          
          startingBlock_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 startingBlock = 5;</code>
         */
        public Builder clearStartingBlock() {
          
          startingBlock_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_syncInfo)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_syncInfo)
      private static final org.aion.api.server.pb.Message.rsp_syncInfo DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_syncInfo();
      }
  
      public static org.aion.api.server.pb.Message.rsp_syncInfo getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_syncInfo>
          PARSER = new com.google.protobuf.AbstractParser<rsp_syncInfo>() {
        public rsp_syncInfo parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_syncInfo(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_syncInfo> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_syncInfo> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_syncInfo getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_systemInfoOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_systemInfo)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>float cpuUsage = 1;</code>
       */
      float getCpuUsage();
  
      /**
       * <code>uint64 memoryUsage = 2;</code>
       */
      long getMemoryUsage();
  
      /**
       * <code>uint64 DBSize = 3;</code>
       */
      long getDBSize();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_systemInfo}
     */
    public  static final class rsp_systemInfo extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_systemInfo)
        rsp_systemInfoOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_systemInfo.newBuilder() to construct.
      private rsp_systemInfo(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_systemInfo() {
        cpuUsage_ = 0F;
        memoryUsage_ = 0L;
        dBSize_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_systemInfo(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 13: {
  
                cpuUsage_ = input.readFloat();
                break;
              }
              case 16: {
  
                memoryUsage_ = input.readUInt64();
                break;
              }
              case 24: {
  
                dBSize_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_systemInfo_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_systemInfo_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_systemInfo.class, org.aion.api.server.pb.Message.rsp_systemInfo.Builder.class);
      }
  
      public static final int CPUUSAGE_FIELD_NUMBER = 1;
      private float cpuUsage_;
      /**
       * <code>float cpuUsage = 1;</code>
       */
      public float getCpuUsage() {
        return cpuUsage_;
      }
  
      public static final int MEMORYUSAGE_FIELD_NUMBER = 2;
      private long memoryUsage_;
      /**
       * <code>uint64 memoryUsage = 2;</code>
       */
      public long getMemoryUsage() {
        return memoryUsage_;
      }
  
      public static final int DBSIZE_FIELD_NUMBER = 3;
      private long dBSize_;
      /**
       * <code>uint64 DBSize = 3;</code>
       */
      public long getDBSize() {
        return dBSize_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (cpuUsage_ != 0F) {
          output.writeFloat(1, cpuUsage_);
        }
        if (memoryUsage_ != 0L) {
          output.writeUInt64(2, memoryUsage_);
        }
        if (dBSize_ != 0L) {
          output.writeUInt64(3, dBSize_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (cpuUsage_ != 0F) {
          size += com.google.protobuf.CodedOutputStream
            .computeFloatSize(1, cpuUsage_);
        }
        if (memoryUsage_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, memoryUsage_);
        }
        if (dBSize_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(3, dBSize_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_systemInfo)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_systemInfo other = (org.aion.api.server.pb.Message.rsp_systemInfo) obj;
  
        boolean result = true;
        result = result && (
            java.lang.Float.floatToIntBits(getCpuUsage())
            == java.lang.Float.floatToIntBits(
                other.getCpuUsage()));
        result = result && (getMemoryUsage()
            == other.getMemoryUsage());
        result = result && (getDBSize()
            == other.getDBSize());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + CPUUSAGE_FIELD_NUMBER;
        hash = (53 * hash) + java.lang.Float.floatToIntBits(
            getCpuUsage());
        hash = (37 * hash) + MEMORYUSAGE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getMemoryUsage());
        hash = (37 * hash) + DBSIZE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getDBSize());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_systemInfo parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_systemInfo prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_systemInfo}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_systemInfo)
          org.aion.api.server.pb.Message.rsp_systemInfoOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_systemInfo_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_systemInfo_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_systemInfo.class, org.aion.api.server.pb.Message.rsp_systemInfo.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_systemInfo.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          cpuUsage_ = 0F;
  
          memoryUsage_ = 0L;
  
          dBSize_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_systemInfo_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_systemInfo getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_systemInfo.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_systemInfo build() {
          org.aion.api.server.pb.Message.rsp_systemInfo result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_systemInfo buildPartial() {
          org.aion.api.server.pb.Message.rsp_systemInfo result = new org.aion.api.server.pb.Message.rsp_systemInfo(this);
          result.cpuUsage_ = cpuUsage_;
          result.memoryUsage_ = memoryUsage_;
          result.dBSize_ = dBSize_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_systemInfo) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_systemInfo)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_systemInfo other) {
          if (other == org.aion.api.server.pb.Message.rsp_systemInfo.getDefaultInstance()) return this;
          if (other.getCpuUsage() != 0F) {
            setCpuUsage(other.getCpuUsage());
          }
          if (other.getMemoryUsage() != 0L) {
            setMemoryUsage(other.getMemoryUsage());
          }
          if (other.getDBSize() != 0L) {
            setDBSize(other.getDBSize());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_systemInfo parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_systemInfo) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private float cpuUsage_ ;
        /**
         * <code>float cpuUsage = 1;</code>
         */
        public float getCpuUsage() {
          return cpuUsage_;
        }
        /**
         * <code>float cpuUsage = 1;</code>
         */
        public Builder setCpuUsage(float value) {
          
          cpuUsage_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>float cpuUsage = 1;</code>
         */
        public Builder clearCpuUsage() {
          
          cpuUsage_ = 0F;
          onChanged();
          return this;
        }
  
        private long memoryUsage_ ;
        /**
         * <code>uint64 memoryUsage = 2;</code>
         */
        public long getMemoryUsage() {
          return memoryUsage_;
        }
        /**
         * <code>uint64 memoryUsage = 2;</code>
         */
        public Builder setMemoryUsage(long value) {
          
          memoryUsage_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 memoryUsage = 2;</code>
         */
        public Builder clearMemoryUsage() {
          
          memoryUsage_ = 0L;
          onChanged();
          return this;
        }
  
        private long dBSize_ ;
        /**
         * <code>uint64 DBSize = 3;</code>
         */
        public long getDBSize() {
          return dBSize_;
        }
        /**
         * <code>uint64 DBSize = 3;</code>
         */
        public Builder setDBSize(long value) {
          
          dBSize_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 DBSize = 3;</code>
         */
        public Builder clearDBSize() {
          
          dBSize_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_systemInfo)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_systemInfo)
      private static final org.aion.api.server.pb.Message.rsp_systemInfo DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_systemInfo();
      }
  
      public static org.aion.api.server.pb.Message.rsp_systemInfo getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_systemInfo>
          PARSER = new com.google.protobuf.AbstractParser<rsp_systemInfo>() {
        public rsp_systemInfo parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_systemInfo(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_systemInfo> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_systemInfo> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_systemInfo getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_eventRegisterOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_eventRegister)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string events = 1;</code>
       */
      java.util.List<java.lang.String>
          getEventsList();
      /**
       * <code>repeated string events = 1;</code>
       */
      int getEventsCount();
      /**
       * <code>repeated string events = 1;</code>
       */
      java.lang.String getEvents(int index);
      /**
       * <code>repeated string events = 1;</code>
       */
      com.google.protobuf.ByteString
          getEventsBytes(int index);
  
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
       */
      boolean hasFilter();
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
       */
      org.aion.api.server.pb.Message.t_FilterCt getFilter();
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
       */
      org.aion.api.server.pb.Message.t_FilterCtOrBuilder getFilterOrBuilder();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_eventRegister}
     */
    public  static final class req_eventRegister extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_eventRegister)
        req_eventRegisterOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_eventRegister.newBuilder() to construct.
      private req_eventRegister(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_eventRegister() {
        events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_eventRegister(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  events_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                events_.add(s);
                break;
              }
              case 18: {
                org.aion.api.server.pb.Message.t_FilterCt.Builder subBuilder = null;
                if (filter_ != null) {
                  subBuilder = filter_.toBuilder();
                }
                filter_ = input.readMessage(org.aion.api.server.pb.Message.t_FilterCt.parser(), extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(filter_);
                  filter_ = subBuilder.buildPartial();
                }
  
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            events_ = events_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventRegister_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventRegister_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_eventRegister.class, org.aion.api.server.pb.Message.req_eventRegister.Builder.class);
      }
  
      private int bitField0_;
      public static final int EVENTS_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList events_;
      /**
       * <code>repeated string events = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getEventsList() {
        return events_;
      }
      /**
       * <code>repeated string events = 1;</code>
       */
      public int getEventsCount() {
        return events_.size();
      }
      /**
       * <code>repeated string events = 1;</code>
       */
      public java.lang.String getEvents(int index) {
        return events_.get(index);
      }
      /**
       * <code>repeated string events = 1;</code>
       */
      public com.google.protobuf.ByteString
          getEventsBytes(int index) {
        return events_.getByteString(index);
      }
  
      public static final int FILTER_FIELD_NUMBER = 2;
      private org.aion.api.server.pb.Message.t_FilterCt filter_;
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
       */
      public boolean hasFilter() {
        return filter_ != null;
      }
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
       */
      public org.aion.api.server.pb.Message.t_FilterCt getFilter() {
        return filter_ == null ? org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance() : filter_;
      }
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
       */
      public org.aion.api.server.pb.Message.t_FilterCtOrBuilder getFilterOrBuilder() {
        return getFilter();
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < events_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, events_.getRaw(i));
        }
        if (filter_ != null) {
          output.writeMessage(2, getFilter());
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < events_.size(); i++) {
            dataSize += computeStringSizeNoTag(events_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getEventsList().size();
        }
        if (filter_ != null) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(2, getFilter());
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_eventRegister)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_eventRegister other = (org.aion.api.server.pb.Message.req_eventRegister) obj;
  
        boolean result = true;
        result = result && getEventsList()
            .equals(other.getEventsList());
        result = result && (hasFilter() == other.hasFilter());
        if (hasFilter()) {
          result = result && getFilter()
              .equals(other.getFilter());
        }
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getEventsCount() > 0) {
          hash = (37 * hash) + EVENTS_FIELD_NUMBER;
          hash = (53 * hash) + getEventsList().hashCode();
        }
        if (hasFilter()) {
          hash = (37 * hash) + FILTER_FIELD_NUMBER;
          hash = (53 * hash) + getFilter().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_eventRegister parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_eventRegister prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_eventRegister}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_eventRegister)
          org.aion.api.server.pb.Message.req_eventRegisterOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventRegister_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventRegister_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_eventRegister.class, org.aion.api.server.pb.Message.req_eventRegister.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_eventRegister.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          if (filterBuilder_ == null) {
            filter_ = null;
          } else {
            filter_ = null;
            filterBuilder_ = null;
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventRegister_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_eventRegister getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_eventRegister.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_eventRegister build() {
          org.aion.api.server.pb.Message.req_eventRegister result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_eventRegister buildPartial() {
          org.aion.api.server.pb.Message.req_eventRegister result = new org.aion.api.server.pb.Message.req_eventRegister(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            events_ = events_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.events_ = events_;
          if (filterBuilder_ == null) {
            result.filter_ = filter_;
          } else {
            result.filter_ = filterBuilder_.build();
          }
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_eventRegister) {
            return mergeFrom((org.aion.api.server.pb.Message.req_eventRegister)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_eventRegister other) {
          if (other == org.aion.api.server.pb.Message.req_eventRegister.getDefaultInstance()) return this;
          if (!other.events_.isEmpty()) {
            if (events_.isEmpty()) {
              events_ = other.events_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureEventsIsMutable();
              events_.addAll(other.events_);
            }
            onChanged();
          }
          if (other.hasFilter()) {
            mergeFilter(other.getFilter());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_eventRegister parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_eventRegister) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureEventsIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            events_ = new com.google.protobuf.LazyStringArrayList(events_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getEventsList() {
          return events_.getUnmodifiableView();
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public int getEventsCount() {
          return events_.size();
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public java.lang.String getEvents(int index) {
          return events_.get(index);
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public com.google.protobuf.ByteString
            getEventsBytes(int index) {
          return events_.getByteString(index);
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder setEvents(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureEventsIsMutable();
          events_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder addEvents(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureEventsIsMutable();
          events_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder addAllEvents(
            java.lang.Iterable<java.lang.String> values) {
          ensureEventsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, events_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder clearEvents() {
          events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder addEventsBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureEventsIsMutable();
          events_.add(value);
          onChanged();
          return this;
        }
  
        private org.aion.api.server.pb.Message.t_FilterCt filter_ = null;
        private com.google.protobuf.SingleFieldBuilderV3<
            org.aion.api.server.pb.Message.t_FilterCt, org.aion.api.server.pb.Message.t_FilterCt.Builder, org.aion.api.server.pb.Message.t_FilterCtOrBuilder> filterBuilder_;
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public boolean hasFilter() {
          return filterBuilder_ != null || filter_ != null;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public org.aion.api.server.pb.Message.t_FilterCt getFilter() {
          if (filterBuilder_ == null) {
            return filter_ == null ? org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance() : filter_;
          } else {
            return filterBuilder_.getMessage();
          }
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public Builder setFilter(org.aion.api.server.pb.Message.t_FilterCt value) {
          if (filterBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            filter_ = value;
            onChanged();
          } else {
            filterBuilder_.setMessage(value);
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public Builder setFilter(
            org.aion.api.server.pb.Message.t_FilterCt.Builder builderForValue) {
          if (filterBuilder_ == null) {
            filter_ = builderForValue.build();
            onChanged();
          } else {
            filterBuilder_.setMessage(builderForValue.build());
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public Builder mergeFilter(org.aion.api.server.pb.Message.t_FilterCt value) {
          if (filterBuilder_ == null) {
            if (filter_ != null) {
              filter_ =
                org.aion.api.server.pb.Message.t_FilterCt.newBuilder(filter_).mergeFrom(value).buildPartial();
            } else {
              filter_ = value;
            }
            onChanged();
          } else {
            filterBuilder_.mergeFrom(value);
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public Builder clearFilter() {
          if (filterBuilder_ == null) {
            filter_ = null;
            onChanged();
          } else {
            filter_ = null;
            filterBuilder_ = null;
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public org.aion.api.server.pb.Message.t_FilterCt.Builder getFilterBuilder() {
          
          onChanged();
          return getFilterFieldBuilder().getBuilder();
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        public org.aion.api.server.pb.Message.t_FilterCtOrBuilder getFilterOrBuilder() {
          if (filterBuilder_ != null) {
            return filterBuilder_.getMessageOrBuilder();
          } else {
            return filter_ == null ?
                org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance() : filter_;
          }
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 2;</code>
         */
        private com.google.protobuf.SingleFieldBuilderV3<
            org.aion.api.server.pb.Message.t_FilterCt, org.aion.api.server.pb.Message.t_FilterCt.Builder, org.aion.api.server.pb.Message.t_FilterCtOrBuilder> 
            getFilterFieldBuilder() {
          if (filterBuilder_ == null) {
            filterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                org.aion.api.server.pb.Message.t_FilterCt, org.aion.api.server.pb.Message.t_FilterCt.Builder, org.aion.api.server.pb.Message.t_FilterCtOrBuilder>(
                    getFilter(),
                    getParentForChildren(),
                    isClean());
            filter_ = null;
          }
          return filterBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_eventRegister)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_eventRegister)
      private static final org.aion.api.server.pb.Message.req_eventRegister DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_eventRegister();
      }
  
      public static org.aion.api.server.pb.Message.req_eventRegister getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_eventRegister>
          PARSER = new com.google.protobuf.AbstractParser<req_eventRegister>() {
        public req_eventRegister parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_eventRegister(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_eventRegister> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_eventRegister> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_eventRegister getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_eventRegisterOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_eventRegister)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool result = 1;</code>
       */
      boolean getResult();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_eventRegister}
     */
    public  static final class rsp_eventRegister extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_eventRegister)
        rsp_eventRegisterOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_eventRegister.newBuilder() to construct.
      private rsp_eventRegister(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_eventRegister() {
        result_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_eventRegister(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                result_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventRegister_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventRegister_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_eventRegister.class, org.aion.api.server.pb.Message.rsp_eventRegister.Builder.class);
      }
  
      public static final int RESULT_FIELD_NUMBER = 1;
      private boolean result_;
      /**
       * <code>bool result = 1;</code>
       */
      public boolean getResult() {
        return result_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (result_ != false) {
          output.writeBool(1, result_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (result_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, result_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_eventRegister)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_eventRegister other = (org.aion.api.server.pb.Message.rsp_eventRegister) obj;
  
        boolean result = true;
        result = result && (getResult()
            == other.getResult());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + RESULT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getResult());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_eventRegister parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_eventRegister prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_eventRegister}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_eventRegister)
          org.aion.api.server.pb.Message.rsp_eventRegisterOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventRegister_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventRegister_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_eventRegister.class, org.aion.api.server.pb.Message.rsp_eventRegister.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_eventRegister.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          result_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventRegister_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_eventRegister getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_eventRegister.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_eventRegister build() {
          org.aion.api.server.pb.Message.rsp_eventRegister result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_eventRegister buildPartial() {
          org.aion.api.server.pb.Message.rsp_eventRegister result = new org.aion.api.server.pb.Message.rsp_eventRegister(this);
          result.result_ = result_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_eventRegister) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_eventRegister)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_eventRegister other) {
          if (other == org.aion.api.server.pb.Message.rsp_eventRegister.getDefaultInstance()) return this;
          if (other.getResult() != false) {
            setResult(other.getResult());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_eventRegister parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_eventRegister) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean result_ ;
        /**
         * <code>bool result = 1;</code>
         */
        public boolean getResult() {
          return result_;
        }
        /**
         * <code>bool result = 1;</code>
         */
        public Builder setResult(boolean value) {
          
          result_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool result = 1;</code>
         */
        public Builder clearResult() {
          
          result_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_eventRegister)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_eventRegister)
      private static final org.aion.api.server.pb.Message.rsp_eventRegister DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_eventRegister();
      }
  
      public static org.aion.api.server.pb.Message.rsp_eventRegister getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_eventRegister>
          PARSER = new com.google.protobuf.AbstractParser<rsp_eventRegister>() {
        public rsp_eventRegister parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_eventRegister(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_eventRegister> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_eventRegister> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_eventRegister getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_eventDeregisterOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_eventDeregister)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string events = 1;</code>
       */
      java.util.List<java.lang.String>
          getEventsList();
      /**
       * <code>repeated string events = 1;</code>
       */
      int getEventsCount();
      /**
       * <code>repeated string events = 1;</code>
       */
      java.lang.String getEvents(int index);
      /**
       * <code>repeated string events = 1;</code>
       */
      com.google.protobuf.ByteString
          getEventsBytes(int index);
  
      /**
       * <code>bytes contractAddr = 2;</code>
       */
      com.google.protobuf.ByteString getContractAddr();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_eventDeregister}
     */
    public  static final class req_eventDeregister extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_eventDeregister)
        req_eventDeregisterOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_eventDeregister.newBuilder() to construct.
      private req_eventDeregister(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_eventDeregister() {
        events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        contractAddr_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_eventDeregister(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  events_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                events_.add(s);
                break;
              }
              case 18: {
  
                contractAddr_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            events_ = events_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventDeregister_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventDeregister_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_eventDeregister.class, org.aion.api.server.pb.Message.req_eventDeregister.Builder.class);
      }
  
      private int bitField0_;
      public static final int EVENTS_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList events_;
      /**
       * <code>repeated string events = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getEventsList() {
        return events_;
      }
      /**
       * <code>repeated string events = 1;</code>
       */
      public int getEventsCount() {
        return events_.size();
      }
      /**
       * <code>repeated string events = 1;</code>
       */
      public java.lang.String getEvents(int index) {
        return events_.get(index);
      }
      /**
       * <code>repeated string events = 1;</code>
       */
      public com.google.protobuf.ByteString
          getEventsBytes(int index) {
        return events_.getByteString(index);
      }
  
      public static final int CONTRACTADDR_FIELD_NUMBER = 2;
      private com.google.protobuf.ByteString contractAddr_;
      /**
       * <code>bytes contractAddr = 2;</code>
       */
      public com.google.protobuf.ByteString getContractAddr() {
        return contractAddr_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < events_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, events_.getRaw(i));
        }
        if (!contractAddr_.isEmpty()) {
          output.writeBytes(2, contractAddr_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < events_.size(); i++) {
            dataSize += computeStringSizeNoTag(events_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getEventsList().size();
        }
        if (!contractAddr_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(2, contractAddr_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_eventDeregister)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_eventDeregister other = (org.aion.api.server.pb.Message.req_eventDeregister) obj;
  
        boolean result = true;
        result = result && getEventsList()
            .equals(other.getEventsList());
        result = result && getContractAddr()
            .equals(other.getContractAddr());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getEventsCount() > 0) {
          hash = (37 * hash) + EVENTS_FIELD_NUMBER;
          hash = (53 * hash) + getEventsList().hashCode();
        }
        hash = (37 * hash) + CONTRACTADDR_FIELD_NUMBER;
        hash = (53 * hash) + getContractAddr().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_eventDeregister parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_eventDeregister prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_eventDeregister}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_eventDeregister)
          org.aion.api.server.pb.Message.req_eventDeregisterOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventDeregister_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventDeregister_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_eventDeregister.class, org.aion.api.server.pb.Message.req_eventDeregister.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_eventDeregister.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          contractAddr_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_eventDeregister_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_eventDeregister getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_eventDeregister.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_eventDeregister build() {
          org.aion.api.server.pb.Message.req_eventDeregister result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_eventDeregister buildPartial() {
          org.aion.api.server.pb.Message.req_eventDeregister result = new org.aion.api.server.pb.Message.req_eventDeregister(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            events_ = events_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.events_ = events_;
          result.contractAddr_ = contractAddr_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_eventDeregister) {
            return mergeFrom((org.aion.api.server.pb.Message.req_eventDeregister)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_eventDeregister other) {
          if (other == org.aion.api.server.pb.Message.req_eventDeregister.getDefaultInstance()) return this;
          if (!other.events_.isEmpty()) {
            if (events_.isEmpty()) {
              events_ = other.events_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureEventsIsMutable();
              events_.addAll(other.events_);
            }
            onChanged();
          }
          if (other.getContractAddr() != com.google.protobuf.ByteString.EMPTY) {
            setContractAddr(other.getContractAddr());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_eventDeregister parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_eventDeregister) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureEventsIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            events_ = new com.google.protobuf.LazyStringArrayList(events_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getEventsList() {
          return events_.getUnmodifiableView();
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public int getEventsCount() {
          return events_.size();
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public java.lang.String getEvents(int index) {
          return events_.get(index);
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public com.google.protobuf.ByteString
            getEventsBytes(int index) {
          return events_.getByteString(index);
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder setEvents(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureEventsIsMutable();
          events_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder addEvents(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureEventsIsMutable();
          events_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder addAllEvents(
            java.lang.Iterable<java.lang.String> values) {
          ensureEventsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, events_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder clearEvents() {
          events_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string events = 1;</code>
         */
        public Builder addEventsBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureEventsIsMutable();
          events_.add(value);
          onChanged();
          return this;
        }
  
        private com.google.protobuf.ByteString contractAddr_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes contractAddr = 2;</code>
         */
        public com.google.protobuf.ByteString getContractAddr() {
          return contractAddr_;
        }
        /**
         * <code>bytes contractAddr = 2;</code>
         */
        public Builder setContractAddr(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          contractAddr_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes contractAddr = 2;</code>
         */
        public Builder clearContractAddr() {
          
          contractAddr_ = getDefaultInstance().getContractAddr();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_eventDeregister)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_eventDeregister)
      private static final org.aion.api.server.pb.Message.req_eventDeregister DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_eventDeregister();
      }
  
      public static org.aion.api.server.pb.Message.req_eventDeregister getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_eventDeregister>
          PARSER = new com.google.protobuf.AbstractParser<req_eventDeregister>() {
        public req_eventDeregister parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_eventDeregister(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_eventDeregister> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_eventDeregister> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_eventDeregister getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_eventDeregisterOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_eventDeregister)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool result = 1;</code>
       */
      boolean getResult();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_eventDeregister}
     */
    public  static final class rsp_eventDeregister extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_eventDeregister)
        rsp_eventDeregisterOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_eventDeregister.newBuilder() to construct.
      private rsp_eventDeregister(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_eventDeregister() {
        result_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_eventDeregister(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                result_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventDeregister_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventDeregister_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_eventDeregister.class, org.aion.api.server.pb.Message.rsp_eventDeregister.Builder.class);
      }
  
      public static final int RESULT_FIELD_NUMBER = 1;
      private boolean result_;
      /**
       * <code>bool result = 1;</code>
       */
      public boolean getResult() {
        return result_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (result_ != false) {
          output.writeBool(1, result_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (result_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, result_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_eventDeregister)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_eventDeregister other = (org.aion.api.server.pb.Message.rsp_eventDeregister) obj;
  
        boolean result = true;
        result = result && (getResult()
            == other.getResult());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + RESULT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getResult());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_eventDeregister parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_eventDeregister prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_eventDeregister}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_eventDeregister)
          org.aion.api.server.pb.Message.rsp_eventDeregisterOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventDeregister_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventDeregister_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_eventDeregister.class, org.aion.api.server.pb.Message.rsp_eventDeregister.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_eventDeregister.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          result_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_eventDeregister_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_eventDeregister getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_eventDeregister.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_eventDeregister build() {
          org.aion.api.server.pb.Message.rsp_eventDeregister result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_eventDeregister buildPartial() {
          org.aion.api.server.pb.Message.rsp_eventDeregister result = new org.aion.api.server.pb.Message.rsp_eventDeregister(this);
          result.result_ = result_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_eventDeregister) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_eventDeregister)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_eventDeregister other) {
          if (other == org.aion.api.server.pb.Message.rsp_eventDeregister.getDefaultInstance()) return this;
          if (other.getResult() != false) {
            setResult(other.getResult());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_eventDeregister parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_eventDeregister) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean result_ ;
        /**
         * <code>bool result = 1;</code>
         */
        public boolean getResult() {
          return result_;
        }
        /**
         * <code>bool result = 1;</code>
         */
        public Builder setResult(boolean value) {
          
          result_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool result = 1;</code>
         */
        public Builder clearResult() {
          
          result_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_eventDeregister)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_eventDeregister)
      private static final org.aion.api.server.pb.Message.rsp_eventDeregister DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_eventDeregister();
      }
  
      public static org.aion.api.server.pb.Message.rsp_eventDeregister getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_eventDeregister>
          PARSER = new com.google.protobuf.AbstractParser<rsp_eventDeregister>() {
        public rsp_eventDeregister parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_eventDeregister(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_eventDeregister> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_eventDeregister> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_eventDeregister getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_EventCtCallbackOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_EventCtCallback)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_EventCt> 
          getEcList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      org.aion.api.server.pb.Message.t_EventCt getEc(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      int getEcCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
          getEcOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      org.aion.api.server.pb.Message.t_EventCtOrBuilder getEcOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_EventCtCallback}
     */
    public  static final class rsp_EventCtCallback extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_EventCtCallback)
        rsp_EventCtCallbackOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_EventCtCallback.newBuilder() to construct.
      private rsp_EventCtCallback(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_EventCtCallback() {
        ec_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_EventCtCallback(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  ec_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_EventCt>();
                  mutable_bitField0_ |= 0x00000001;
                }
                ec_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_EventCt.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            ec_ = java.util.Collections.unmodifiableList(ec_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_EventCtCallback_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_EventCtCallback_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_EventCtCallback.class, org.aion.api.server.pb.Message.rsp_EventCtCallback.Builder.class);
      }
  
      public static final int EC_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_EventCt> ec_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_EventCt> getEcList() {
        return ec_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
          getEcOrBuilderList() {
        return ec_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public int getEcCount() {
        return ec_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_EventCt getEc(int index) {
        return ec_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_EventCtOrBuilder getEcOrBuilder(
          int index) {
        return ec_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < ec_.size(); i++) {
          output.writeMessage(1, ec_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < ec_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, ec_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_EventCtCallback)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_EventCtCallback other = (org.aion.api.server.pb.Message.rsp_EventCtCallback) obj;
  
        boolean result = true;
        result = result && getEcList()
            .equals(other.getEcList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getEcCount() > 0) {
          hash = (37 * hash) + EC_FIELD_NUMBER;
          hash = (53 * hash) + getEcList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_EventCtCallback prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_EventCtCallback}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_EventCtCallback)
          org.aion.api.server.pb.Message.rsp_EventCtCallbackOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_EventCtCallback_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_EventCtCallback_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_EventCtCallback.class, org.aion.api.server.pb.Message.rsp_EventCtCallback.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_EventCtCallback.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getEcFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (ecBuilder_ == null) {
            ec_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ecBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_EventCtCallback_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_EventCtCallback getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_EventCtCallback.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_EventCtCallback build() {
          org.aion.api.server.pb.Message.rsp_EventCtCallback result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_EventCtCallback buildPartial() {
          org.aion.api.server.pb.Message.rsp_EventCtCallback result = new org.aion.api.server.pb.Message.rsp_EventCtCallback(this);
          int from_bitField0_ = bitField0_;
          if (ecBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              ec_ = java.util.Collections.unmodifiableList(ec_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.ec_ = ec_;
          } else {
            result.ec_ = ecBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_EventCtCallback) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_EventCtCallback)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_EventCtCallback other) {
          if (other == org.aion.api.server.pb.Message.rsp_EventCtCallback.getDefaultInstance()) return this;
          if (ecBuilder_ == null) {
            if (!other.ec_.isEmpty()) {
              if (ec_.isEmpty()) {
                ec_ = other.ec_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureEcIsMutable();
                ec_.addAll(other.ec_);
              }
              onChanged();
            }
          } else {
            if (!other.ec_.isEmpty()) {
              if (ecBuilder_.isEmpty()) {
                ecBuilder_.dispose();
                ecBuilder_ = null;
                ec_ = other.ec_;
                bitField0_ = (bitField0_ & ~0x00000001);
                ecBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getEcFieldBuilder() : null;
              } else {
                ecBuilder_.addAllMessages(other.ec_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_EventCtCallback parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_EventCtCallback) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_EventCt> ec_ =
          java.util.Collections.emptyList();
        private void ensureEcIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            ec_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_EventCt>(ec_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_EventCt, org.aion.api.server.pb.Message.t_EventCt.Builder, org.aion.api.server.pb.Message.t_EventCtOrBuilder> ecBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_EventCt> getEcList() {
          if (ecBuilder_ == null) {
            return java.util.Collections.unmodifiableList(ec_);
          } else {
            return ecBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public int getEcCount() {
          if (ecBuilder_ == null) {
            return ec_.size();
          } else {
            return ecBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt getEc(int index) {
          if (ecBuilder_ == null) {
            return ec_.get(index);
          } else {
            return ecBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder setEc(
            int index, org.aion.api.server.pb.Message.t_EventCt value) {
          if (ecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureEcIsMutable();
            ec_.set(index, value);
            onChanged();
          } else {
            ecBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder setEc(
            int index, org.aion.api.server.pb.Message.t_EventCt.Builder builderForValue) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.set(index, builderForValue.build());
            onChanged();
          } else {
            ecBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(org.aion.api.server.pb.Message.t_EventCt value) {
          if (ecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureEcIsMutable();
            ec_.add(value);
            onChanged();
          } else {
            ecBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(
            int index, org.aion.api.server.pb.Message.t_EventCt value) {
          if (ecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureEcIsMutable();
            ec_.add(index, value);
            onChanged();
          } else {
            ecBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(
            org.aion.api.server.pb.Message.t_EventCt.Builder builderForValue) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.add(builderForValue.build());
            onChanged();
          } else {
            ecBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(
            int index, org.aion.api.server.pb.Message.t_EventCt.Builder builderForValue) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.add(index, builderForValue.build());
            onChanged();
          } else {
            ecBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addAllEc(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_EventCt> values) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, ec_);
            onChanged();
          } else {
            ecBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder clearEc() {
          if (ecBuilder_ == null) {
            ec_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            ecBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder removeEc(int index) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.remove(index);
            onChanged();
          } else {
            ecBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt.Builder getEcBuilder(
            int index) {
          return getEcFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCtOrBuilder getEcOrBuilder(
            int index) {
          if (ecBuilder_ == null) {
            return ec_.get(index);  } else {
            return ecBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
             getEcOrBuilderList() {
          if (ecBuilder_ != null) {
            return ecBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(ec_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt.Builder addEcBuilder() {
          return getEcFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_EventCt.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt.Builder addEcBuilder(
            int index) {
          return getEcFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_EventCt.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_EventCt.Builder> 
             getEcBuilderList() {
          return getEcFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_EventCt, org.aion.api.server.pb.Message.t_EventCt.Builder, org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
            getEcFieldBuilder() {
          if (ecBuilder_ == null) {
            ecBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_EventCt, org.aion.api.server.pb.Message.t_EventCt.Builder, org.aion.api.server.pb.Message.t_EventCtOrBuilder>(
                    ec_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            ec_ = null;
          }
          return ecBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_EventCtCallback)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_EventCtCallback)
      private static final org.aion.api.server.pb.Message.rsp_EventCtCallback DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_EventCtCallback();
      }
  
      public static org.aion.api.server.pb.Message.rsp_EventCtCallback getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_EventCtCallback>
          PARSER = new com.google.protobuf.AbstractParser<rsp_EventCtCallback>() {
        public rsp_EventCtCallback parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_EventCtCallback(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_EventCtCallback> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_EventCtCallback> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_EventCtCallback getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_accountCreateOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_accountCreate)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string password = 1;</code>
       */
      java.util.List<java.lang.String>
          getPasswordList();
      /**
       * <code>repeated string password = 1;</code>
       */
      int getPasswordCount();
      /**
       * <code>repeated string password = 1;</code>
       */
      java.lang.String getPassword(int index);
      /**
       * <code>repeated string password = 1;</code>
       */
      com.google.protobuf.ByteString
          getPasswordBytes(int index);
  
      /**
       * <code>bool privateKey = 2;</code>
       */
      boolean getPrivateKey();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_accountCreate}
     */
    public  static final class req_accountCreate extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_accountCreate)
        req_accountCreateOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_accountCreate.newBuilder() to construct.
      private req_accountCreate(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_accountCreate() {
        password_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        privateKey_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_accountCreate(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  password_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                password_.add(s);
                break;
              }
              case 16: {
  
                privateKey_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            password_ = password_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountCreate_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountCreate_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_accountCreate.class, org.aion.api.server.pb.Message.req_accountCreate.Builder.class);
      }
  
      private int bitField0_;
      public static final int PASSWORD_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList password_;
      /**
       * <code>repeated string password = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getPasswordList() {
        return password_;
      }
      /**
       * <code>repeated string password = 1;</code>
       */
      public int getPasswordCount() {
        return password_.size();
      }
      /**
       * <code>repeated string password = 1;</code>
       */
      public java.lang.String getPassword(int index) {
        return password_.get(index);
      }
      /**
       * <code>repeated string password = 1;</code>
       */
      public com.google.protobuf.ByteString
          getPasswordBytes(int index) {
        return password_.getByteString(index);
      }
  
      public static final int PRIVATEKEY_FIELD_NUMBER = 2;
      private boolean privateKey_;
      /**
       * <code>bool privateKey = 2;</code>
       */
      public boolean getPrivateKey() {
        return privateKey_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < password_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, password_.getRaw(i));
        }
        if (privateKey_ != false) {
          output.writeBool(2, privateKey_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < password_.size(); i++) {
            dataSize += computeStringSizeNoTag(password_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getPasswordList().size();
        }
        if (privateKey_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(2, privateKey_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_accountCreate)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_accountCreate other = (org.aion.api.server.pb.Message.req_accountCreate) obj;
  
        boolean result = true;
        result = result && getPasswordList()
            .equals(other.getPasswordList());
        result = result && (getPrivateKey()
            == other.getPrivateKey());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getPasswordCount() > 0) {
          hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
          hash = (53 * hash) + getPasswordList().hashCode();
        }
        hash = (37 * hash) + PRIVATEKEY_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getPrivateKey());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_accountCreate parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_accountCreate prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_accountCreate}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_accountCreate)
          org.aion.api.server.pb.Message.req_accountCreateOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountCreate_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountCreate_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_accountCreate.class, org.aion.api.server.pb.Message.req_accountCreate.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_accountCreate.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          password_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          privateKey_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountCreate_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_accountCreate getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_accountCreate.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_accountCreate build() {
          org.aion.api.server.pb.Message.req_accountCreate result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_accountCreate buildPartial() {
          org.aion.api.server.pb.Message.req_accountCreate result = new org.aion.api.server.pb.Message.req_accountCreate(this);
          int from_bitField0_ = bitField0_;
          int to_bitField0_ = 0;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            password_ = password_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.password_ = password_;
          result.privateKey_ = privateKey_;
          result.bitField0_ = to_bitField0_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_accountCreate) {
            return mergeFrom((org.aion.api.server.pb.Message.req_accountCreate)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_accountCreate other) {
          if (other == org.aion.api.server.pb.Message.req_accountCreate.getDefaultInstance()) return this;
          if (!other.password_.isEmpty()) {
            if (password_.isEmpty()) {
              password_ = other.password_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensurePasswordIsMutable();
              password_.addAll(other.password_);
            }
            onChanged();
          }
          if (other.getPrivateKey() != false) {
            setPrivateKey(other.getPrivateKey());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_accountCreate parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_accountCreate) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList password_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensurePasswordIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            password_ = new com.google.protobuf.LazyStringArrayList(password_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getPasswordList() {
          return password_.getUnmodifiableView();
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public int getPasswordCount() {
          return password_.size();
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public java.lang.String getPassword(int index) {
          return password_.get(index);
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public com.google.protobuf.ByteString
            getPasswordBytes(int index) {
          return password_.getByteString(index);
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public Builder setPassword(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensurePasswordIsMutable();
          password_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public Builder addPassword(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensurePasswordIsMutable();
          password_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public Builder addAllPassword(
            java.lang.Iterable<java.lang.String> values) {
          ensurePasswordIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, password_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public Builder clearPassword() {
          password_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string password = 1;</code>
         */
        public Builder addPasswordBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensurePasswordIsMutable();
          password_.add(value);
          onChanged();
          return this;
        }
  
        private boolean privateKey_ ;
        /**
         * <code>bool privateKey = 2;</code>
         */
        public boolean getPrivateKey() {
          return privateKey_;
        }
        /**
         * <code>bool privateKey = 2;</code>
         */
        public Builder setPrivateKey(boolean value) {
          
          privateKey_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool privateKey = 2;</code>
         */
        public Builder clearPrivateKey() {
          
          privateKey_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_accountCreate)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_accountCreate)
      private static final org.aion.api.server.pb.Message.req_accountCreate DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_accountCreate();
      }
  
      public static org.aion.api.server.pb.Message.req_accountCreate getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_accountCreate>
          PARSER = new com.google.protobuf.AbstractParser<req_accountCreate>() {
        public req_accountCreate parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_accountCreate(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_accountCreate> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_accountCreate> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_accountCreate getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_accountCreateOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_accountCreate)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated bytes address = 1;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getAddressList();
      /**
       * <code>repeated bytes address = 1;</code>
       */
      int getAddressCount();
      /**
       * <code>repeated bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress(int index);
  
      /**
       * <code>repeated bytes privateKey = 2;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getPrivateKeyList();
      /**
       * <code>repeated bytes privateKey = 2;</code>
       */
      int getPrivateKeyCount();
      /**
       * <code>repeated bytes privateKey = 2;</code>
       */
      com.google.protobuf.ByteString getPrivateKey(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_accountCreate}
     */
    public  static final class rsp_accountCreate extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_accountCreate)
        rsp_accountCreateOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_accountCreate.newBuilder() to construct.
      private rsp_accountCreate(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_accountCreate() {
        address_ = java.util.Collections.emptyList();
        privateKey_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_accountCreate(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  address_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000001;
                }
                address_.add(input.readBytes());
                break;
              }
              case 18: {
                if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                  privateKey_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000002;
                }
                privateKey_.add(input.readBytes());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            address_ = java.util.Collections.unmodifiableList(address_);
          }
          if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
            privateKey_ = java.util.Collections.unmodifiableList(privateKey_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountCreate_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountCreate_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_accountCreate.class, org.aion.api.server.pb.Message.rsp_accountCreate.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private java.util.List<com.google.protobuf.ByteString> address_;
      /**
       * <code>repeated bytes address = 1;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getAddressList() {
        return address_;
      }
      /**
       * <code>repeated bytes address = 1;</code>
       */
      public int getAddressCount() {
        return address_.size();
      }
      /**
       * <code>repeated bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress(int index) {
        return address_.get(index);
      }
  
      public static final int PRIVATEKEY_FIELD_NUMBER = 2;
      private java.util.List<com.google.protobuf.ByteString> privateKey_;
      /**
       * <code>repeated bytes privateKey = 2;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getPrivateKeyList() {
        return privateKey_;
      }
      /**
       * <code>repeated bytes privateKey = 2;</code>
       */
      public int getPrivateKeyCount() {
        return privateKey_.size();
      }
      /**
       * <code>repeated bytes privateKey = 2;</code>
       */
      public com.google.protobuf.ByteString getPrivateKey(int index) {
        return privateKey_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < address_.size(); i++) {
          output.writeBytes(1, address_.get(i));
        }
        for (int i = 0; i < privateKey_.size(); i++) {
          output.writeBytes(2, privateKey_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < address_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(address_.get(i));
          }
          size += dataSize;
          size += 1 * getAddressList().size();
        }
        {
          int dataSize = 0;
          for (int i = 0; i < privateKey_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(privateKey_.get(i));
          }
          size += dataSize;
          size += 1 * getPrivateKeyList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_accountCreate)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_accountCreate other = (org.aion.api.server.pb.Message.rsp_accountCreate) obj;
  
        boolean result = true;
        result = result && getAddressList()
            .equals(other.getAddressList());
        result = result && getPrivateKeyList()
            .equals(other.getPrivateKeyList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getAddressCount() > 0) {
          hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
          hash = (53 * hash) + getAddressList().hashCode();
        }
        if (getPrivateKeyCount() > 0) {
          hash = (37 * hash) + PRIVATEKEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrivateKeyList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accountCreate parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_accountCreate prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_accountCreate}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_accountCreate)
          org.aion.api.server.pb.Message.rsp_accountCreateOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountCreate_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountCreate_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_accountCreate.class, org.aion.api.server.pb.Message.rsp_accountCreate.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_accountCreate.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          privateKey_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountCreate_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_accountCreate getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_accountCreate.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_accountCreate build() {
          org.aion.api.server.pb.Message.rsp_accountCreate result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_accountCreate buildPartial() {
          org.aion.api.server.pb.Message.rsp_accountCreate result = new org.aion.api.server.pb.Message.rsp_accountCreate(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            address_ = java.util.Collections.unmodifiableList(address_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.address_ = address_;
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            privateKey_ = java.util.Collections.unmodifiableList(privateKey_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.privateKey_ = privateKey_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_accountCreate) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_accountCreate)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_accountCreate other) {
          if (other == org.aion.api.server.pb.Message.rsp_accountCreate.getDefaultInstance()) return this;
          if (!other.address_.isEmpty()) {
            if (address_.isEmpty()) {
              address_ = other.address_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureAddressIsMutable();
              address_.addAll(other.address_);
            }
            onChanged();
          }
          if (!other.privateKey_.isEmpty()) {
            if (privateKey_.isEmpty()) {
              privateKey_ = other.privateKey_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensurePrivateKeyIsMutable();
              privateKey_.addAll(other.privateKey_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_accountCreate parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_accountCreate) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.google.protobuf.ByteString> address_ = java.util.Collections.emptyList();
        private void ensureAddressIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            address_ = new java.util.ArrayList<com.google.protobuf.ByteString>(address_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getAddressList() {
          return java.util.Collections.unmodifiableList(address_);
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public int getAddressCount() {
          return address_.size();
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress(int index) {
          return address_.get(index);
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public Builder setAddress(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAddressIsMutable();
          address_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public Builder addAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAddressIsMutable();
          address_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public Builder addAllAddress(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureAddressIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, address_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes address = 1;</code>
         */
        public Builder clearAddress() {
          address_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
  
        private java.util.List<com.google.protobuf.ByteString> privateKey_ = java.util.Collections.emptyList();
        private void ensurePrivateKeyIsMutable() {
          if (!((bitField0_ & 0x00000002) == 0x00000002)) {
            privateKey_ = new java.util.ArrayList<com.google.protobuf.ByteString>(privateKey_);
            bitField0_ |= 0x00000002;
           }
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getPrivateKeyList() {
          return java.util.Collections.unmodifiableList(privateKey_);
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public int getPrivateKeyCount() {
          return privateKey_.size();
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public com.google.protobuf.ByteString getPrivateKey(int index) {
          return privateKey_.get(index);
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public Builder setPrivateKey(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensurePrivateKeyIsMutable();
          privateKey_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public Builder addPrivateKey(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensurePrivateKeyIsMutable();
          privateKey_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public Builder addAllPrivateKey(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensurePrivateKeyIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, privateKey_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes privateKey = 2;</code>
         */
        public Builder clearPrivateKey() {
          privateKey_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_accountCreate)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_accountCreate)
      private static final org.aion.api.server.pb.Message.rsp_accountCreate DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_accountCreate();
      }
  
      public static org.aion.api.server.pb.Message.rsp_accountCreate getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_accountCreate>
          PARSER = new com.google.protobuf.AbstractParser<rsp_accountCreate>() {
        public rsp_accountCreate parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_accountCreate(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_accountCreate> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_accountCreate> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_accountCreate getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_accountlockOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_accountlock)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes account = 1;</code>
       */
      com.google.protobuf.ByteString getAccount();
  
      /**
       * <code>string password = 2;</code>
       */
      java.lang.String getPassword();
      /**
       * <code>string password = 2;</code>
       */
      com.google.protobuf.ByteString
          getPasswordBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_accountlock}
     */
    public  static final class req_accountlock extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_accountlock)
        req_accountlockOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_accountlock.newBuilder() to construct.
      private req_accountlock(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_accountlock() {
        account_ = com.google.protobuf.ByteString.EMPTY;
        password_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_accountlock(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                account_ = input.readBytes();
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                password_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountlock_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountlock_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_accountlock.class, org.aion.api.server.pb.Message.req_accountlock.Builder.class);
      }
  
      public static final int ACCOUNT_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString account_;
      /**
       * <code>bytes account = 1;</code>
       */
      public com.google.protobuf.ByteString getAccount() {
        return account_;
      }
  
      public static final int PASSWORD_FIELD_NUMBER = 2;
      private volatile java.lang.Object password_;
      /**
       * <code>string password = 2;</code>
       */
      public java.lang.String getPassword() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          password_ = s;
          return s;
        }
      }
      /**
       * <code>string password = 2;</code>
       */
      public com.google.protobuf.ByteString
          getPasswordBytes() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          password_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!account_.isEmpty()) {
          output.writeBytes(1, account_);
        }
        if (!getPasswordBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, password_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!account_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, account_);
        }
        if (!getPasswordBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, password_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_accountlock)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_accountlock other = (org.aion.api.server.pb.Message.req_accountlock) obj;
  
        boolean result = true;
        result = result && getAccount()
            .equals(other.getAccount());
        result = result && getPassword()
            .equals(other.getPassword());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ACCOUNT_FIELD_NUMBER;
        hash = (53 * hash) + getAccount().hashCode();
        hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
        hash = (53 * hash) + getPassword().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_accountlock parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_accountlock prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_accountlock}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_accountlock)
          org.aion.api.server.pb.Message.req_accountlockOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountlock_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountlock_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_accountlock.class, org.aion.api.server.pb.Message.req_accountlock.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_accountlock.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          account_ = com.google.protobuf.ByteString.EMPTY;
  
          password_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_accountlock_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_accountlock getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_accountlock.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_accountlock build() {
          org.aion.api.server.pb.Message.req_accountlock result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_accountlock buildPartial() {
          org.aion.api.server.pb.Message.req_accountlock result = new org.aion.api.server.pb.Message.req_accountlock(this);
          result.account_ = account_;
          result.password_ = password_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_accountlock) {
            return mergeFrom((org.aion.api.server.pb.Message.req_accountlock)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_accountlock other) {
          if (other == org.aion.api.server.pb.Message.req_accountlock.getDefaultInstance()) return this;
          if (other.getAccount() != com.google.protobuf.ByteString.EMPTY) {
            setAccount(other.getAccount());
          }
          if (!other.getPassword().isEmpty()) {
            password_ = other.password_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_accountlock parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_accountlock) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString account_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes account = 1;</code>
         */
        public com.google.protobuf.ByteString getAccount() {
          return account_;
        }
        /**
         * <code>bytes account = 1;</code>
         */
        public Builder setAccount(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          account_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes account = 1;</code>
         */
        public Builder clearAccount() {
          
          account_ = getDefaultInstance().getAccount();
          onChanged();
          return this;
        }
  
        private java.lang.Object password_ = "";
        /**
         * <code>string password = 2;</code>
         */
        public java.lang.String getPassword() {
          java.lang.Object ref = password_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            password_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public com.google.protobuf.ByteString
            getPasswordBytes() {
          java.lang.Object ref = password_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            password_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPassword(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          password_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder clearPassword() {
          
          password_ = getDefaultInstance().getPassword();
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPasswordBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          password_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_accountlock)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_accountlock)
      private static final org.aion.api.server.pb.Message.req_accountlock DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_accountlock();
      }
  
      public static org.aion.api.server.pb.Message.req_accountlock getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_accountlock>
          PARSER = new com.google.protobuf.AbstractParser<req_accountlock>() {
        public req_accountlock parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_accountlock(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_accountlock> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_accountlock> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_accountlock getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_accountlockOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_accountlock)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool locked = 1;</code>
       */
      boolean getLocked();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_accountlock}
     */
    public  static final class rsp_accountlock extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_accountlock)
        rsp_accountlockOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_accountlock.newBuilder() to construct.
      private rsp_accountlock(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_accountlock() {
        locked_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_accountlock(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                locked_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountlock_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountlock_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_accountlock.class, org.aion.api.server.pb.Message.rsp_accountlock.Builder.class);
      }
  
      public static final int LOCKED_FIELD_NUMBER = 1;
      private boolean locked_;
      /**
       * <code>bool locked = 1;</code>
       */
      public boolean getLocked() {
        return locked_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (locked_ != false) {
          output.writeBool(1, locked_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (locked_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, locked_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_accountlock)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_accountlock other = (org.aion.api.server.pb.Message.rsp_accountlock) obj;
  
        boolean result = true;
        result = result && (getLocked()
            == other.getLocked());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + LOCKED_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getLocked());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_accountlock parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_accountlock prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_accountlock}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_accountlock)
          org.aion.api.server.pb.Message.rsp_accountlockOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountlock_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountlock_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_accountlock.class, org.aion.api.server.pb.Message.rsp_accountlock.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_accountlock.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          locked_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_accountlock_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_accountlock getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_accountlock.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_accountlock build() {
          org.aion.api.server.pb.Message.rsp_accountlock result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_accountlock buildPartial() {
          org.aion.api.server.pb.Message.rsp_accountlock result = new org.aion.api.server.pb.Message.rsp_accountlock(this);
          result.locked_ = locked_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_accountlock) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_accountlock)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_accountlock other) {
          if (other == org.aion.api.server.pb.Message.rsp_accountlock.getDefaultInstance()) return this;
          if (other.getLocked() != false) {
            setLocked(other.getLocked());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_accountlock parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_accountlock) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean locked_ ;
        /**
         * <code>bool locked = 1;</code>
         */
        public boolean getLocked() {
          return locked_;
        }
        /**
         * <code>bool locked = 1;</code>
         */
        public Builder setLocked(boolean value) {
          
          locked_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool locked = 1;</code>
         */
        public Builder clearLocked() {
          
          locked_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_accountlock)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_accountlock)
      private static final org.aion.api.server.pb.Message.rsp_accountlock DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_accountlock();
      }
  
      public static org.aion.api.server.pb.Message.rsp_accountlock getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_accountlock>
          PARSER = new com.google.protobuf.AbstractParser<rsp_accountlock>() {
        public rsp_accountlock parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_accountlock(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_accountlock> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_accountlock> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_accountlock getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_userPrivilegeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_userPrivilege)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string username = 1;</code>
       */
      java.lang.String getUsername();
      /**
       * <code>string username = 1;</code>
       */
      com.google.protobuf.ByteString
          getUsernameBytes();
  
      /**
       * <code>string password = 2;</code>
       */
      java.lang.String getPassword();
      /**
       * <code>string password = 2;</code>
       */
      com.google.protobuf.ByteString
          getPasswordBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_userPrivilege}
     */
    public  static final class req_userPrivilege extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_userPrivilege)
        req_userPrivilegeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_userPrivilege.newBuilder() to construct.
      private req_userPrivilege(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_userPrivilege() {
        username_ = "";
        password_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_userPrivilege(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                username_ = s;
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                password_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_userPrivilege_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_userPrivilege_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_userPrivilege.class, org.aion.api.server.pb.Message.req_userPrivilege.Builder.class);
      }
  
      public static final int USERNAME_FIELD_NUMBER = 1;
      private volatile java.lang.Object username_;
      /**
       * <code>string username = 1;</code>
       */
      public java.lang.String getUsername() {
        java.lang.Object ref = username_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          username_ = s;
          return s;
        }
      }
      /**
       * <code>string username = 1;</code>
       */
      public com.google.protobuf.ByteString
          getUsernameBytes() {
        java.lang.Object ref = username_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          username_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PASSWORD_FIELD_NUMBER = 2;
      private volatile java.lang.Object password_;
      /**
       * <code>string password = 2;</code>
       */
      public java.lang.String getPassword() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          password_ = s;
          return s;
        }
      }
      /**
       * <code>string password = 2;</code>
       */
      public com.google.protobuf.ByteString
          getPasswordBytes() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          password_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getUsernameBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, username_);
        }
        if (!getPasswordBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, password_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getUsernameBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, username_);
        }
        if (!getPasswordBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, password_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_userPrivilege)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_userPrivilege other = (org.aion.api.server.pb.Message.req_userPrivilege) obj;
  
        boolean result = true;
        result = result && getUsername()
            .equals(other.getUsername());
        result = result && getPassword()
            .equals(other.getPassword());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + USERNAME_FIELD_NUMBER;
        hash = (53 * hash) + getUsername().hashCode();
        hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
        hash = (53 * hash) + getPassword().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_userPrivilege parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_userPrivilege prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_userPrivilege}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_userPrivilege)
          org.aion.api.server.pb.Message.req_userPrivilegeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_userPrivilege_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_userPrivilege_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_userPrivilege.class, org.aion.api.server.pb.Message.req_userPrivilege.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_userPrivilege.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          username_ = "";
  
          password_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_userPrivilege_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_userPrivilege getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_userPrivilege.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_userPrivilege build() {
          org.aion.api.server.pb.Message.req_userPrivilege result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_userPrivilege buildPartial() {
          org.aion.api.server.pb.Message.req_userPrivilege result = new org.aion.api.server.pb.Message.req_userPrivilege(this);
          result.username_ = username_;
          result.password_ = password_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_userPrivilege) {
            return mergeFrom((org.aion.api.server.pb.Message.req_userPrivilege)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_userPrivilege other) {
          if (other == org.aion.api.server.pb.Message.req_userPrivilege.getDefaultInstance()) return this;
          if (!other.getUsername().isEmpty()) {
            username_ = other.username_;
            onChanged();
          }
          if (!other.getPassword().isEmpty()) {
            password_ = other.password_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_userPrivilege parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_userPrivilege) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object username_ = "";
        /**
         * <code>string username = 1;</code>
         */
        public java.lang.String getUsername() {
          java.lang.Object ref = username_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            username_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string username = 1;</code>
         */
        public com.google.protobuf.ByteString
            getUsernameBytes() {
          java.lang.Object ref = username_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            username_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string username = 1;</code>
         */
        public Builder setUsername(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          username_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string username = 1;</code>
         */
        public Builder clearUsername() {
          
          username_ = getDefaultInstance().getUsername();
          onChanged();
          return this;
        }
        /**
         * <code>string username = 1;</code>
         */
        public Builder setUsernameBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          username_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object password_ = "";
        /**
         * <code>string password = 2;</code>
         */
        public java.lang.String getPassword() {
          java.lang.Object ref = password_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            password_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public com.google.protobuf.ByteString
            getPasswordBytes() {
          java.lang.Object ref = password_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            password_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPassword(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          password_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder clearPassword() {
          
          password_ = getDefaultInstance().getPassword();
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPasswordBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          password_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_userPrivilege)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_userPrivilege)
      private static final org.aion.api.server.pb.Message.req_userPrivilege DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_userPrivilege();
      }
  
      public static org.aion.api.server.pb.Message.req_userPrivilege getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_userPrivilege>
          PARSER = new com.google.protobuf.AbstractParser<req_userPrivilege>() {
        public req_userPrivilege parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_userPrivilege(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_userPrivilege> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_userPrivilege> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_userPrivilege getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_userPrivilegeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_userPrivilege)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string privilege = 1;</code>
       */
      java.util.List<java.lang.String>
          getPrivilegeList();
      /**
       * <code>repeated string privilege = 1;</code>
       */
      int getPrivilegeCount();
      /**
       * <code>repeated string privilege = 1;</code>
       */
      java.lang.String getPrivilege(int index);
      /**
       * <code>repeated string privilege = 1;</code>
       */
      com.google.protobuf.ByteString
          getPrivilegeBytes(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_userPrivilege}
     */
    public  static final class rsp_userPrivilege extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_userPrivilege)
        rsp_userPrivilegeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_userPrivilege.newBuilder() to construct.
      private rsp_userPrivilege(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_userPrivilege() {
        privilege_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_userPrivilege(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  privilege_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                privilege_.add(s);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            privilege_ = privilege_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_userPrivilege_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_userPrivilege_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_userPrivilege.class, org.aion.api.server.pb.Message.rsp_userPrivilege.Builder.class);
      }
  
      public static final int PRIVILEGE_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList privilege_;
      /**
       * <code>repeated string privilege = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getPrivilegeList() {
        return privilege_;
      }
      /**
       * <code>repeated string privilege = 1;</code>
       */
      public int getPrivilegeCount() {
        return privilege_.size();
      }
      /**
       * <code>repeated string privilege = 1;</code>
       */
      public java.lang.String getPrivilege(int index) {
        return privilege_.get(index);
      }
      /**
       * <code>repeated string privilege = 1;</code>
       */
      public com.google.protobuf.ByteString
          getPrivilegeBytes(int index) {
        return privilege_.getByteString(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < privilege_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, privilege_.getRaw(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < privilege_.size(); i++) {
            dataSize += computeStringSizeNoTag(privilege_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getPrivilegeList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_userPrivilege)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_userPrivilege other = (org.aion.api.server.pb.Message.rsp_userPrivilege) obj;
  
        boolean result = true;
        result = result && getPrivilegeList()
            .equals(other.getPrivilegeList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getPrivilegeCount() > 0) {
          hash = (37 * hash) + PRIVILEGE_FIELD_NUMBER;
          hash = (53 * hash) + getPrivilegeList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_userPrivilege parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_userPrivilege prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_userPrivilege}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_userPrivilege)
          org.aion.api.server.pb.Message.rsp_userPrivilegeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_userPrivilege_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_userPrivilege_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_userPrivilege.class, org.aion.api.server.pb.Message.rsp_userPrivilege.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_userPrivilege.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          privilege_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_userPrivilege_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_userPrivilege getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_userPrivilege.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_userPrivilege build() {
          org.aion.api.server.pb.Message.rsp_userPrivilege result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_userPrivilege buildPartial() {
          org.aion.api.server.pb.Message.rsp_userPrivilege result = new org.aion.api.server.pb.Message.rsp_userPrivilege(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            privilege_ = privilege_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.privilege_ = privilege_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_userPrivilege) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_userPrivilege)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_userPrivilege other) {
          if (other == org.aion.api.server.pb.Message.rsp_userPrivilege.getDefaultInstance()) return this;
          if (!other.privilege_.isEmpty()) {
            if (privilege_.isEmpty()) {
              privilege_ = other.privilege_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensurePrivilegeIsMutable();
              privilege_.addAll(other.privilege_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_userPrivilege parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_userPrivilege) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList privilege_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensurePrivilegeIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            privilege_ = new com.google.protobuf.LazyStringArrayList(privilege_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getPrivilegeList() {
          return privilege_.getUnmodifiableView();
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public int getPrivilegeCount() {
          return privilege_.size();
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public java.lang.String getPrivilege(int index) {
          return privilege_.get(index);
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public com.google.protobuf.ByteString
            getPrivilegeBytes(int index) {
          return privilege_.getByteString(index);
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public Builder setPrivilege(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensurePrivilegeIsMutable();
          privilege_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public Builder addPrivilege(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensurePrivilegeIsMutable();
          privilege_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public Builder addAllPrivilege(
            java.lang.Iterable<java.lang.String> values) {
          ensurePrivilegeIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, privilege_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public Builder clearPrivilege() {
          privilege_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string privilege = 1;</code>
         */
        public Builder addPrivilegeBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensurePrivilegeIsMutable();
          privilege_.add(value);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_userPrivilege)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_userPrivilege)
      private static final org.aion.api.server.pb.Message.rsp_userPrivilege DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_userPrivilege();
      }
  
      public static org.aion.api.server.pb.Message.rsp_userPrivilege getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_userPrivilege>
          PARSER = new com.google.protobuf.AbstractParser<rsp_userPrivilege>() {
        public rsp_userPrivilege parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_userPrivilege(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_userPrivilege> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_userPrivilege> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_userPrivilege getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_queryCtEventsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_queryCtEvents)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
       */
      boolean hasFilter();
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
       */
      org.aion.api.server.pb.Message.t_FilterCt getFilter();
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
       */
      org.aion.api.server.pb.Message.t_FilterCtOrBuilder getFilterOrBuilder();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_queryCtEvents}
     */
    public  static final class req_queryCtEvents extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_queryCtEvents)
        req_queryCtEventsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_queryCtEvents.newBuilder() to construct.
      private req_queryCtEvents(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_queryCtEvents() {
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_queryCtEvents(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                org.aion.api.server.pb.Message.t_FilterCt.Builder subBuilder = null;
                if (filter_ != null) {
                  subBuilder = filter_.toBuilder();
                }
                filter_ = input.readMessage(org.aion.api.server.pb.Message.t_FilterCt.parser(), extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(filter_);
                  filter_ = subBuilder.buildPartial();
                }
  
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_queryCtEvents_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_queryCtEvents_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_queryCtEvents.class, org.aion.api.server.pb.Message.req_queryCtEvents.Builder.class);
      }
  
      public static final int FILTER_FIELD_NUMBER = 1;
      private org.aion.api.server.pb.Message.t_FilterCt filter_;
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
       */
      public boolean hasFilter() {
        return filter_ != null;
      }
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_FilterCt getFilter() {
        return filter_ == null ? org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance() : filter_;
      }
      /**
       * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_FilterCtOrBuilder getFilterOrBuilder() {
        return getFilter();
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (filter_ != null) {
          output.writeMessage(1, getFilter());
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (filter_ != null) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getFilter());
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_queryCtEvents)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_queryCtEvents other = (org.aion.api.server.pb.Message.req_queryCtEvents) obj;
  
        boolean result = true;
        result = result && (hasFilter() == other.hasFilter());
        if (hasFilter()) {
          result = result && getFilter()
              .equals(other.getFilter());
        }
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasFilter()) {
          hash = (37 * hash) + FILTER_FIELD_NUMBER;
          hash = (53 * hash) + getFilter().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_queryCtEvents parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_queryCtEvents prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_queryCtEvents}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_queryCtEvents)
          org.aion.api.server.pb.Message.req_queryCtEventsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_queryCtEvents_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_queryCtEvents_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_queryCtEvents.class, org.aion.api.server.pb.Message.req_queryCtEvents.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_queryCtEvents.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          if (filterBuilder_ == null) {
            filter_ = null;
          } else {
            filter_ = null;
            filterBuilder_ = null;
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_queryCtEvents_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_queryCtEvents getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_queryCtEvents.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_queryCtEvents build() {
          org.aion.api.server.pb.Message.req_queryCtEvents result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_queryCtEvents buildPartial() {
          org.aion.api.server.pb.Message.req_queryCtEvents result = new org.aion.api.server.pb.Message.req_queryCtEvents(this);
          if (filterBuilder_ == null) {
            result.filter_ = filter_;
          } else {
            result.filter_ = filterBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_queryCtEvents) {
            return mergeFrom((org.aion.api.server.pb.Message.req_queryCtEvents)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_queryCtEvents other) {
          if (other == org.aion.api.server.pb.Message.req_queryCtEvents.getDefaultInstance()) return this;
          if (other.hasFilter()) {
            mergeFilter(other.getFilter());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_queryCtEvents parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_queryCtEvents) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private org.aion.api.server.pb.Message.t_FilterCt filter_ = null;
        private com.google.protobuf.SingleFieldBuilderV3<
            org.aion.api.server.pb.Message.t_FilterCt, org.aion.api.server.pb.Message.t_FilterCt.Builder, org.aion.api.server.pb.Message.t_FilterCtOrBuilder> filterBuilder_;
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public boolean hasFilter() {
          return filterBuilder_ != null || filter_ != null;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_FilterCt getFilter() {
          if (filterBuilder_ == null) {
            return filter_ == null ? org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance() : filter_;
          } else {
            return filterBuilder_.getMessage();
          }
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public Builder setFilter(org.aion.api.server.pb.Message.t_FilterCt value) {
          if (filterBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            filter_ = value;
            onChanged();
          } else {
            filterBuilder_.setMessage(value);
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public Builder setFilter(
            org.aion.api.server.pb.Message.t_FilterCt.Builder builderForValue) {
          if (filterBuilder_ == null) {
            filter_ = builderForValue.build();
            onChanged();
          } else {
            filterBuilder_.setMessage(builderForValue.build());
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public Builder mergeFilter(org.aion.api.server.pb.Message.t_FilterCt value) {
          if (filterBuilder_ == null) {
            if (filter_ != null) {
              filter_ =
                org.aion.api.server.pb.Message.t_FilterCt.newBuilder(filter_).mergeFrom(value).buildPartial();
            } else {
              filter_ = value;
            }
            onChanged();
          } else {
            filterBuilder_.mergeFrom(value);
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public Builder clearFilter() {
          if (filterBuilder_ == null) {
            filter_ = null;
            onChanged();
          } else {
            filter_ = null;
            filterBuilder_ = null;
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_FilterCt.Builder getFilterBuilder() {
          
          onChanged();
          return getFilterFieldBuilder().getBuilder();
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_FilterCtOrBuilder getFilterOrBuilder() {
          if (filterBuilder_ != null) {
            return filterBuilder_.getMessageOrBuilder();
          } else {
            return filter_ == null ?
                org.aion.api.server.pb.Message.t_FilterCt.getDefaultInstance() : filter_;
          }
        }
        /**
         * <code>.org.aion.api.server.pb.t_FilterCt filter = 1;</code>
         */
        private com.google.protobuf.SingleFieldBuilderV3<
            org.aion.api.server.pb.Message.t_FilterCt, org.aion.api.server.pb.Message.t_FilterCt.Builder, org.aion.api.server.pb.Message.t_FilterCtOrBuilder> 
            getFilterFieldBuilder() {
          if (filterBuilder_ == null) {
            filterBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                org.aion.api.server.pb.Message.t_FilterCt, org.aion.api.server.pb.Message.t_FilterCt.Builder, org.aion.api.server.pb.Message.t_FilterCtOrBuilder>(
                    getFilter(),
                    getParentForChildren(),
                    isClean());
            filter_ = null;
          }
          return filterBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_queryCtEvents)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_queryCtEvents)
      private static final org.aion.api.server.pb.Message.req_queryCtEvents DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_queryCtEvents();
      }
  
      public static org.aion.api.server.pb.Message.req_queryCtEvents getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_queryCtEvents>
          PARSER = new com.google.protobuf.AbstractParser<req_queryCtEvents>() {
        public req_queryCtEvents parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_queryCtEvents(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_queryCtEvents> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_queryCtEvents> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_queryCtEvents getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_queryCtEventsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_queryCtEvents)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_EventCt> 
          getEcList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      org.aion.api.server.pb.Message.t_EventCt getEc(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      int getEcCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
          getEcOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      org.aion.api.server.pb.Message.t_EventCtOrBuilder getEcOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_queryCtEvents}
     */
    public  static final class rsp_queryCtEvents extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_queryCtEvents)
        rsp_queryCtEventsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_queryCtEvents.newBuilder() to construct.
      private rsp_queryCtEvents(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_queryCtEvents() {
        ec_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_queryCtEvents(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  ec_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_EventCt>();
                  mutable_bitField0_ |= 0x00000001;
                }
                ec_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_EventCt.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            ec_ = java.util.Collections.unmodifiableList(ec_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_queryCtEvents_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_queryCtEvents_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_queryCtEvents.class, org.aion.api.server.pb.Message.rsp_queryCtEvents.Builder.class);
      }
  
      public static final int EC_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_EventCt> ec_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_EventCt> getEcList() {
        return ec_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
          getEcOrBuilderList() {
        return ec_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public int getEcCount() {
        return ec_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_EventCt getEc(int index) {
        return ec_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_EventCtOrBuilder getEcOrBuilder(
          int index) {
        return ec_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < ec_.size(); i++) {
          output.writeMessage(1, ec_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < ec_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, ec_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_queryCtEvents)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_queryCtEvents other = (org.aion.api.server.pb.Message.rsp_queryCtEvents) obj;
  
        boolean result = true;
        result = result && getEcList()
            .equals(other.getEcList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getEcCount() > 0) {
          hash = (37 * hash) + EC_FIELD_NUMBER;
          hash = (53 * hash) + getEcList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_queryCtEvents prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_queryCtEvents}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_queryCtEvents)
          org.aion.api.server.pb.Message.rsp_queryCtEventsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_queryCtEvents_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_queryCtEvents_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_queryCtEvents.class, org.aion.api.server.pb.Message.rsp_queryCtEvents.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_queryCtEvents.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getEcFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (ecBuilder_ == null) {
            ec_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            ecBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_queryCtEvents_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_queryCtEvents getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_queryCtEvents.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_queryCtEvents build() {
          org.aion.api.server.pb.Message.rsp_queryCtEvents result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_queryCtEvents buildPartial() {
          org.aion.api.server.pb.Message.rsp_queryCtEvents result = new org.aion.api.server.pb.Message.rsp_queryCtEvents(this);
          int from_bitField0_ = bitField0_;
          if (ecBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              ec_ = java.util.Collections.unmodifiableList(ec_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.ec_ = ec_;
          } else {
            result.ec_ = ecBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_queryCtEvents) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_queryCtEvents)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_queryCtEvents other) {
          if (other == org.aion.api.server.pb.Message.rsp_queryCtEvents.getDefaultInstance()) return this;
          if (ecBuilder_ == null) {
            if (!other.ec_.isEmpty()) {
              if (ec_.isEmpty()) {
                ec_ = other.ec_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureEcIsMutable();
                ec_.addAll(other.ec_);
              }
              onChanged();
            }
          } else {
            if (!other.ec_.isEmpty()) {
              if (ecBuilder_.isEmpty()) {
                ecBuilder_.dispose();
                ecBuilder_ = null;
                ec_ = other.ec_;
                bitField0_ = (bitField0_ & ~0x00000001);
                ecBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getEcFieldBuilder() : null;
              } else {
                ecBuilder_.addAllMessages(other.ec_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_queryCtEvents parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_queryCtEvents) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_EventCt> ec_ =
          java.util.Collections.emptyList();
        private void ensureEcIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            ec_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_EventCt>(ec_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_EventCt, org.aion.api.server.pb.Message.t_EventCt.Builder, org.aion.api.server.pb.Message.t_EventCtOrBuilder> ecBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_EventCt> getEcList() {
          if (ecBuilder_ == null) {
            return java.util.Collections.unmodifiableList(ec_);
          } else {
            return ecBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public int getEcCount() {
          if (ecBuilder_ == null) {
            return ec_.size();
          } else {
            return ecBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt getEc(int index) {
          if (ecBuilder_ == null) {
            return ec_.get(index);
          } else {
            return ecBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder setEc(
            int index, org.aion.api.server.pb.Message.t_EventCt value) {
          if (ecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureEcIsMutable();
            ec_.set(index, value);
            onChanged();
          } else {
            ecBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder setEc(
            int index, org.aion.api.server.pb.Message.t_EventCt.Builder builderForValue) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.set(index, builderForValue.build());
            onChanged();
          } else {
            ecBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(org.aion.api.server.pb.Message.t_EventCt value) {
          if (ecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureEcIsMutable();
            ec_.add(value);
            onChanged();
          } else {
            ecBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(
            int index, org.aion.api.server.pb.Message.t_EventCt value) {
          if (ecBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureEcIsMutable();
            ec_.add(index, value);
            onChanged();
          } else {
            ecBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(
            org.aion.api.server.pb.Message.t_EventCt.Builder builderForValue) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.add(builderForValue.build());
            onChanged();
          } else {
            ecBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addEc(
            int index, org.aion.api.server.pb.Message.t_EventCt.Builder builderForValue) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.add(index, builderForValue.build());
            onChanged();
          } else {
            ecBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder addAllEc(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_EventCt> values) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, ec_);
            onChanged();
          } else {
            ecBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder clearEc() {
          if (ecBuilder_ == null) {
            ec_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            ecBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public Builder removeEc(int index) {
          if (ecBuilder_ == null) {
            ensureEcIsMutable();
            ec_.remove(index);
            onChanged();
          } else {
            ecBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt.Builder getEcBuilder(
            int index) {
          return getEcFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCtOrBuilder getEcOrBuilder(
            int index) {
          if (ecBuilder_ == null) {
            return ec_.get(index);  } else {
            return ecBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
             getEcOrBuilderList() {
          if (ecBuilder_ != null) {
            return ecBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(ec_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt.Builder addEcBuilder() {
          return getEcFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_EventCt.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_EventCt.Builder addEcBuilder(
            int index) {
          return getEcFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_EventCt.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_EventCt ec = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_EventCt.Builder> 
             getEcBuilderList() {
          return getEcFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_EventCt, org.aion.api.server.pb.Message.t_EventCt.Builder, org.aion.api.server.pb.Message.t_EventCtOrBuilder> 
            getEcFieldBuilder() {
          if (ecBuilder_ == null) {
            ecBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_EventCt, org.aion.api.server.pb.Message.t_EventCt.Builder, org.aion.api.server.pb.Message.t_EventCtOrBuilder>(
                    ec_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            ec_ = null;
          }
          return ecBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_queryCtEvents)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_queryCtEvents)
      private static final org.aion.api.server.pb.Message.rsp_queryCtEvents DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_queryCtEvents();
      }
  
      public static org.aion.api.server.pb.Message.rsp_queryCtEvents getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_queryCtEvents>
          PARSER = new com.google.protobuf.AbstractParser<rsp_queryCtEvents>() {
        public rsp_queryCtEvents parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_queryCtEvents(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_queryCtEvents> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_queryCtEvents> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_queryCtEvents getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_PrivateKeyOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_PrivateKey)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>string privateKey = 1;</code>
       */
      java.lang.String getPrivateKey();
      /**
       * <code>string privateKey = 1;</code>
       */
      com.google.protobuf.ByteString
          getPrivateKeyBytes();
  
      /**
       * <code>string password = 2;</code>
       */
      java.lang.String getPassword();
      /**
       * <code>string password = 2;</code>
       */
      com.google.protobuf.ByteString
          getPasswordBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_PrivateKey}
     */
    public  static final class t_PrivateKey extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_PrivateKey)
        t_PrivateKeyOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_PrivateKey.newBuilder() to construct.
      private t_PrivateKey(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_PrivateKey() {
        privateKey_ = "";
        password_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_PrivateKey(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
  
                privateKey_ = s;
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                password_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_PrivateKey_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_PrivateKey_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_PrivateKey.class, org.aion.api.server.pb.Message.t_PrivateKey.Builder.class);
      }
  
      public static final int PRIVATEKEY_FIELD_NUMBER = 1;
      private volatile java.lang.Object privateKey_;
      /**
       * <code>string privateKey = 1;</code>
       */
      public java.lang.String getPrivateKey() {
        java.lang.Object ref = privateKey_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          privateKey_ = s;
          return s;
        }
      }
      /**
       * <code>string privateKey = 1;</code>
       */
      public com.google.protobuf.ByteString
          getPrivateKeyBytes() {
        java.lang.Object ref = privateKey_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          privateKey_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      public static final int PASSWORD_FIELD_NUMBER = 2;
      private volatile java.lang.Object password_;
      /**
       * <code>string password = 2;</code>
       */
      public java.lang.String getPassword() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          password_ = s;
          return s;
        }
      }
      /**
       * <code>string password = 2;</code>
       */
      public com.google.protobuf.ByteString
          getPasswordBytes() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          password_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!getPrivateKeyBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, privateKey_);
        }
        if (!getPasswordBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, password_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!getPrivateKeyBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(1, privateKey_);
        }
        if (!getPasswordBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, password_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_PrivateKey)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_PrivateKey other = (org.aion.api.server.pb.Message.t_PrivateKey) obj;
  
        boolean result = true;
        result = result && getPrivateKey()
            .equals(other.getPrivateKey());
        result = result && getPassword()
            .equals(other.getPassword());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + PRIVATEKEY_FIELD_NUMBER;
        hash = (53 * hash) + getPrivateKey().hashCode();
        hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
        hash = (53 * hash) + getPassword().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_PrivateKey parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_PrivateKey prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_PrivateKey}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_PrivateKey)
          org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_PrivateKey_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_PrivateKey_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_PrivateKey.class, org.aion.api.server.pb.Message.t_PrivateKey.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_PrivateKey.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          privateKey_ = "";
  
          password_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_PrivateKey_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_PrivateKey getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_PrivateKey.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_PrivateKey build() {
          org.aion.api.server.pb.Message.t_PrivateKey result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_PrivateKey buildPartial() {
          org.aion.api.server.pb.Message.t_PrivateKey result = new org.aion.api.server.pb.Message.t_PrivateKey(this);
          result.privateKey_ = privateKey_;
          result.password_ = password_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_PrivateKey) {
            return mergeFrom((org.aion.api.server.pb.Message.t_PrivateKey)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_PrivateKey other) {
          if (other == org.aion.api.server.pb.Message.t_PrivateKey.getDefaultInstance()) return this;
          if (!other.getPrivateKey().isEmpty()) {
            privateKey_ = other.privateKey_;
            onChanged();
          }
          if (!other.getPassword().isEmpty()) {
            password_ = other.password_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_PrivateKey parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_PrivateKey) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private java.lang.Object privateKey_ = "";
        /**
         * <code>string privateKey = 1;</code>
         */
        public java.lang.String getPrivateKey() {
          java.lang.Object ref = privateKey_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            privateKey_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string privateKey = 1;</code>
         */
        public com.google.protobuf.ByteString
            getPrivateKeyBytes() {
          java.lang.Object ref = privateKey_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            privateKey_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string privateKey = 1;</code>
         */
        public Builder setPrivateKey(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          privateKey_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string privateKey = 1;</code>
         */
        public Builder clearPrivateKey() {
          
          privateKey_ = getDefaultInstance().getPrivateKey();
          onChanged();
          return this;
        }
        /**
         * <code>string privateKey = 1;</code>
         */
        public Builder setPrivateKeyBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          privateKey_ = value;
          onChanged();
          return this;
        }
  
        private java.lang.Object password_ = "";
        /**
         * <code>string password = 2;</code>
         */
        public java.lang.String getPassword() {
          java.lang.Object ref = password_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            password_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public com.google.protobuf.ByteString
            getPasswordBytes() {
          java.lang.Object ref = password_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            password_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPassword(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          password_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder clearPassword() {
          
          password_ = getDefaultInstance().getPassword();
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPasswordBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          password_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_PrivateKey)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_PrivateKey)
      private static final org.aion.api.server.pb.Message.t_PrivateKey DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_PrivateKey();
      }
  
      public static org.aion.api.server.pb.Message.t_PrivateKey getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_PrivateKey>
          PARSER = new com.google.protobuf.AbstractParser<t_PrivateKey>() {
        public t_PrivateKey parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_PrivateKey(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_PrivateKey> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_PrivateKey> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_PrivateKey getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_importAccountsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_importAccounts)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_PrivateKey> 
          getPrivateKeyList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      org.aion.api.server.pb.Message.t_PrivateKey getPrivateKey(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      int getPrivateKeyCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder> 
          getPrivateKeyOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder getPrivateKeyOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_importAccounts}
     */
    public  static final class req_importAccounts extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_importAccounts)
        req_importAccountsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_importAccounts.newBuilder() to construct.
      private req_importAccounts(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_importAccounts() {
        privateKey_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_importAccounts(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  privateKey_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_PrivateKey>();
                  mutable_bitField0_ |= 0x00000001;
                }
                privateKey_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_PrivateKey.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            privateKey_ = java.util.Collections.unmodifiableList(privateKey_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_importAccounts_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_importAccounts_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_importAccounts.class, org.aion.api.server.pb.Message.req_importAccounts.Builder.class);
      }
  
      public static final int PRIVATEKEY_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_PrivateKey> privateKey_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_PrivateKey> getPrivateKeyList() {
        return privateKey_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder> 
          getPrivateKeyOrBuilderList() {
        return privateKey_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      public int getPrivateKeyCount() {
        return privateKey_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_PrivateKey getPrivateKey(int index) {
        return privateKey_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder getPrivateKeyOrBuilder(
          int index) {
        return privateKey_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < privateKey_.size(); i++) {
          output.writeMessage(1, privateKey_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < privateKey_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, privateKey_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_importAccounts)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_importAccounts other = (org.aion.api.server.pb.Message.req_importAccounts) obj;
  
        boolean result = true;
        result = result && getPrivateKeyList()
            .equals(other.getPrivateKeyList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getPrivateKeyCount() > 0) {
          hash = (37 * hash) + PRIVATEKEY_FIELD_NUMBER;
          hash = (53 * hash) + getPrivateKeyList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_importAccounts parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_importAccounts prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_importAccounts}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_importAccounts)
          org.aion.api.server.pb.Message.req_importAccountsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_importAccounts_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_importAccounts_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_importAccounts.class, org.aion.api.server.pb.Message.req_importAccounts.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_importAccounts.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getPrivateKeyFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (privateKeyBuilder_ == null) {
            privateKey_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            privateKeyBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_importAccounts_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_importAccounts getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_importAccounts.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_importAccounts build() {
          org.aion.api.server.pb.Message.req_importAccounts result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_importAccounts buildPartial() {
          org.aion.api.server.pb.Message.req_importAccounts result = new org.aion.api.server.pb.Message.req_importAccounts(this);
          int from_bitField0_ = bitField0_;
          if (privateKeyBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              privateKey_ = java.util.Collections.unmodifiableList(privateKey_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.privateKey_ = privateKey_;
          } else {
            result.privateKey_ = privateKeyBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_importAccounts) {
            return mergeFrom((org.aion.api.server.pb.Message.req_importAccounts)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_importAccounts other) {
          if (other == org.aion.api.server.pb.Message.req_importAccounts.getDefaultInstance()) return this;
          if (privateKeyBuilder_ == null) {
            if (!other.privateKey_.isEmpty()) {
              if (privateKey_.isEmpty()) {
                privateKey_ = other.privateKey_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensurePrivateKeyIsMutable();
                privateKey_.addAll(other.privateKey_);
              }
              onChanged();
            }
          } else {
            if (!other.privateKey_.isEmpty()) {
              if (privateKeyBuilder_.isEmpty()) {
                privateKeyBuilder_.dispose();
                privateKeyBuilder_ = null;
                privateKey_ = other.privateKey_;
                bitField0_ = (bitField0_ & ~0x00000001);
                privateKeyBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getPrivateKeyFieldBuilder() : null;
              } else {
                privateKeyBuilder_.addAllMessages(other.privateKey_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_importAccounts parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_importAccounts) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_PrivateKey> privateKey_ =
          java.util.Collections.emptyList();
        private void ensurePrivateKeyIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            privateKey_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_PrivateKey>(privateKey_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_PrivateKey, org.aion.api.server.pb.Message.t_PrivateKey.Builder, org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder> privateKeyBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_PrivateKey> getPrivateKeyList() {
          if (privateKeyBuilder_ == null) {
            return java.util.Collections.unmodifiableList(privateKey_);
          } else {
            return privateKeyBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public int getPrivateKeyCount() {
          if (privateKeyBuilder_ == null) {
            return privateKey_.size();
          } else {
            return privateKeyBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_PrivateKey getPrivateKey(int index) {
          if (privateKeyBuilder_ == null) {
            return privateKey_.get(index);
          } else {
            return privateKeyBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder setPrivateKey(
            int index, org.aion.api.server.pb.Message.t_PrivateKey value) {
          if (privateKeyBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePrivateKeyIsMutable();
            privateKey_.set(index, value);
            onChanged();
          } else {
            privateKeyBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder setPrivateKey(
            int index, org.aion.api.server.pb.Message.t_PrivateKey.Builder builderForValue) {
          if (privateKeyBuilder_ == null) {
            ensurePrivateKeyIsMutable();
            privateKey_.set(index, builderForValue.build());
            onChanged();
          } else {
            privateKeyBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder addPrivateKey(org.aion.api.server.pb.Message.t_PrivateKey value) {
          if (privateKeyBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePrivateKeyIsMutable();
            privateKey_.add(value);
            onChanged();
          } else {
            privateKeyBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder addPrivateKey(
            int index, org.aion.api.server.pb.Message.t_PrivateKey value) {
          if (privateKeyBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensurePrivateKeyIsMutable();
            privateKey_.add(index, value);
            onChanged();
          } else {
            privateKeyBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder addPrivateKey(
            org.aion.api.server.pb.Message.t_PrivateKey.Builder builderForValue) {
          if (privateKeyBuilder_ == null) {
            ensurePrivateKeyIsMutable();
            privateKey_.add(builderForValue.build());
            onChanged();
          } else {
            privateKeyBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder addPrivateKey(
            int index, org.aion.api.server.pb.Message.t_PrivateKey.Builder builderForValue) {
          if (privateKeyBuilder_ == null) {
            ensurePrivateKeyIsMutable();
            privateKey_.add(index, builderForValue.build());
            onChanged();
          } else {
            privateKeyBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder addAllPrivateKey(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_PrivateKey> values) {
          if (privateKeyBuilder_ == null) {
            ensurePrivateKeyIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, privateKey_);
            onChanged();
          } else {
            privateKeyBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder clearPrivateKey() {
          if (privateKeyBuilder_ == null) {
            privateKey_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            privateKeyBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public Builder removePrivateKey(int index) {
          if (privateKeyBuilder_ == null) {
            ensurePrivateKeyIsMutable();
            privateKey_.remove(index);
            onChanged();
          } else {
            privateKeyBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_PrivateKey.Builder getPrivateKeyBuilder(
            int index) {
          return getPrivateKeyFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder getPrivateKeyOrBuilder(
            int index) {
          if (privateKeyBuilder_ == null) {
            return privateKey_.get(index);  } else {
            return privateKeyBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder> 
             getPrivateKeyOrBuilderList() {
          if (privateKeyBuilder_ != null) {
            return privateKeyBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(privateKey_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_PrivateKey.Builder addPrivateKeyBuilder() {
          return getPrivateKeyFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_PrivateKey.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_PrivateKey.Builder addPrivateKeyBuilder(
            int index) {
          return getPrivateKeyFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_PrivateKey.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_PrivateKey privateKey = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_PrivateKey.Builder> 
             getPrivateKeyBuilderList() {
          return getPrivateKeyFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_PrivateKey, org.aion.api.server.pb.Message.t_PrivateKey.Builder, org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder> 
            getPrivateKeyFieldBuilder() {
          if (privateKeyBuilder_ == null) {
            privateKeyBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_PrivateKey, org.aion.api.server.pb.Message.t_PrivateKey.Builder, org.aion.api.server.pb.Message.t_PrivateKeyOrBuilder>(
                    privateKey_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            privateKey_ = null;
          }
          return privateKeyBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_importAccounts)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_importAccounts)
      private static final org.aion.api.server.pb.Message.req_importAccounts DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_importAccounts();
      }
  
      public static org.aion.api.server.pb.Message.req_importAccounts getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_importAccounts>
          PARSER = new com.google.protobuf.AbstractParser<req_importAccounts>() {
        public req_importAccounts parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_importAccounts(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_importAccounts> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_importAccounts> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_importAccounts getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_importAccountsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_importAccounts)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      java.util.List<java.lang.String>
          getInvalidKeyList();
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      int getInvalidKeyCount();
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      java.lang.String getInvalidKey(int index);
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      com.google.protobuf.ByteString
          getInvalidKeyBytes(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_importAccounts}
     */
    public  static final class rsp_importAccounts extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_importAccounts)
        rsp_importAccountsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_importAccounts.newBuilder() to construct.
      private rsp_importAccounts(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_importAccounts() {
        invalidKey_ = com.google.protobuf.LazyStringArrayList.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_importAccounts(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                java.lang.String s = input.readStringRequireUtf8();
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  invalidKey_ = new com.google.protobuf.LazyStringArrayList();
                  mutable_bitField0_ |= 0x00000001;
                }
                invalidKey_.add(s);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            invalidKey_ = invalidKey_.getUnmodifiableView();
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_importAccounts_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_importAccounts_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_importAccounts.class, org.aion.api.server.pb.Message.rsp_importAccounts.Builder.class);
      }
  
      public static final int INVALIDKEY_FIELD_NUMBER = 1;
      private com.google.protobuf.LazyStringList invalidKey_;
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      public com.google.protobuf.ProtocolStringList
          getInvalidKeyList() {
        return invalidKey_;
      }
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      public int getInvalidKeyCount() {
        return invalidKey_.size();
      }
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      public java.lang.String getInvalidKey(int index) {
        return invalidKey_.get(index);
      }
      /**
       * <code>repeated string invalidKey = 1;</code>
       */
      public com.google.protobuf.ByteString
          getInvalidKeyBytes(int index) {
        return invalidKey_.getByteString(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < invalidKey_.size(); i++) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 1, invalidKey_.getRaw(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < invalidKey_.size(); i++) {
            dataSize += computeStringSizeNoTag(invalidKey_.getRaw(i));
          }
          size += dataSize;
          size += 1 * getInvalidKeyList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_importAccounts)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_importAccounts other = (org.aion.api.server.pb.Message.rsp_importAccounts) obj;
  
        boolean result = true;
        result = result && getInvalidKeyList()
            .equals(other.getInvalidKeyList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getInvalidKeyCount() > 0) {
          hash = (37 * hash) + INVALIDKEY_FIELD_NUMBER;
          hash = (53 * hash) + getInvalidKeyList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_importAccounts parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_importAccounts prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_importAccounts}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_importAccounts)
          org.aion.api.server.pb.Message.rsp_importAccountsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_importAccounts_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_importAccounts_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_importAccounts.class, org.aion.api.server.pb.Message.rsp_importAccounts.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_importAccounts.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          invalidKey_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_importAccounts_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_importAccounts getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_importAccounts.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_importAccounts build() {
          org.aion.api.server.pb.Message.rsp_importAccounts result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_importAccounts buildPartial() {
          org.aion.api.server.pb.Message.rsp_importAccounts result = new org.aion.api.server.pb.Message.rsp_importAccounts(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            invalidKey_ = invalidKey_.getUnmodifiableView();
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.invalidKey_ = invalidKey_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_importAccounts) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_importAccounts)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_importAccounts other) {
          if (other == org.aion.api.server.pb.Message.rsp_importAccounts.getDefaultInstance()) return this;
          if (!other.invalidKey_.isEmpty()) {
            if (invalidKey_.isEmpty()) {
              invalidKey_ = other.invalidKey_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureInvalidKeyIsMutable();
              invalidKey_.addAll(other.invalidKey_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_importAccounts parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_importAccounts) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private com.google.protobuf.LazyStringList invalidKey_ = com.google.protobuf.LazyStringArrayList.EMPTY;
        private void ensureInvalidKeyIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            invalidKey_ = new com.google.protobuf.LazyStringArrayList(invalidKey_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public com.google.protobuf.ProtocolStringList
            getInvalidKeyList() {
          return invalidKey_.getUnmodifiableView();
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public int getInvalidKeyCount() {
          return invalidKey_.size();
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public java.lang.String getInvalidKey(int index) {
          return invalidKey_.get(index);
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public com.google.protobuf.ByteString
            getInvalidKeyBytes(int index) {
          return invalidKey_.getByteString(index);
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public Builder setInvalidKey(
            int index, java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureInvalidKeyIsMutable();
          invalidKey_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public Builder addInvalidKey(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureInvalidKeyIsMutable();
          invalidKey_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public Builder addAllInvalidKey(
            java.lang.Iterable<java.lang.String> values) {
          ensureInvalidKeyIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, invalidKey_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public Builder clearInvalidKey() {
          invalidKey_ = com.google.protobuf.LazyStringArrayList.EMPTY;
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        /**
         * <code>repeated string invalidKey = 1;</code>
         */
        public Builder addInvalidKeyBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          ensureInvalidKeyIsMutable();
          invalidKey_.add(value);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_importAccounts)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_importAccounts)
      private static final org.aion.api.server.pb.Message.rsp_importAccounts DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_importAccounts();
      }
  
      public static org.aion.api.server.pb.Message.rsp_importAccounts getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_importAccounts>
          PARSER = new com.google.protobuf.AbstractParser<rsp_importAccounts>() {
        public rsp_importAccounts parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_importAccounts(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_importAccounts> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_importAccounts> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_importAccounts getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface t_KeyOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.t_Key)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
  
      /**
       * <code>string password = 2;</code>
       */
      java.lang.String getPassword();
      /**
       * <code>string password = 2;</code>
       */
      com.google.protobuf.ByteString
          getPasswordBytes();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.t_Key}
     */
    public  static final class t_Key extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.t_Key)
        t_KeyOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use t_Key.newBuilder() to construct.
      private t_Key(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private t_Key() {
        address_ = com.google.protobuf.ByteString.EMPTY;
        password_ = "";
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private t_Key(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
              case 18: {
                java.lang.String s = input.readStringRequireUtf8();
  
                password_ = s;
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Key_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Key_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.t_Key.class, org.aion.api.server.pb.Message.t_Key.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      public static final int PASSWORD_FIELD_NUMBER = 2;
      private volatile java.lang.Object password_;
      /**
       * <code>string password = 2;</code>
       */
      public java.lang.String getPassword() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          return (java.lang.String) ref;
        } else {
          com.google.protobuf.ByteString bs = 
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          password_ = s;
          return s;
        }
      }
      /**
       * <code>string password = 2;</code>
       */
      public com.google.protobuf.ByteString
          getPasswordBytes() {
        java.lang.Object ref = password_;
        if (ref instanceof java.lang.String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          password_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        if (!getPasswordBytes().isEmpty()) {
          com.google.protobuf.GeneratedMessageV3.writeString(output, 2, password_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        if (!getPasswordBytes().isEmpty()) {
          size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, password_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.t_Key)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.t_Key other = (org.aion.api.server.pb.Message.t_Key) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && getPassword()
            .equals(other.getPassword());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (37 * hash) + PASSWORD_FIELD_NUMBER;
        hash = (53 * hash) + getPassword().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Key parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Key parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.t_Key parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.t_Key prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.t_Key}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.t_Key)
          org.aion.api.server.pb.Message.t_KeyOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Key_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Key_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.t_Key.class, org.aion.api.server.pb.Message.t_Key.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.t_Key.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          password_ = "";
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_t_Key_descriptor;
        }
  
        public org.aion.api.server.pb.Message.t_Key getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.t_Key.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.t_Key build() {
          org.aion.api.server.pb.Message.t_Key result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.t_Key buildPartial() {
          org.aion.api.server.pb.Message.t_Key result = new org.aion.api.server.pb.Message.t_Key(this);
          result.address_ = address_;
          result.password_ = password_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.t_Key) {
            return mergeFrom((org.aion.api.server.pb.Message.t_Key)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.t_Key other) {
          if (other == org.aion.api.server.pb.Message.t_Key.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          if (!other.getPassword().isEmpty()) {
            password_ = other.password_;
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.t_Key parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.t_Key) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
  
        private java.lang.Object password_ = "";
        /**
         * <code>string password = 2;</code>
         */
        public java.lang.String getPassword() {
          java.lang.Object ref = password_;
          if (!(ref instanceof java.lang.String)) {
            com.google.protobuf.ByteString bs =
                (com.google.protobuf.ByteString) ref;
            java.lang.String s = bs.toStringUtf8();
            password_ = s;
            return s;
          } else {
            return (java.lang.String) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public com.google.protobuf.ByteString
            getPasswordBytes() {
          java.lang.Object ref = password_;
          if (ref instanceof String) {
            com.google.protobuf.ByteString b = 
                com.google.protobuf.ByteString.copyFromUtf8(
                    (java.lang.String) ref);
            password_ = b;
            return b;
          } else {
            return (com.google.protobuf.ByteString) ref;
          }
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPassword(
            java.lang.String value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          password_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder clearPassword() {
          
          password_ = getDefaultInstance().getPassword();
          onChanged();
          return this;
        }
        /**
         * <code>string password = 2;</code>
         */
        public Builder setPasswordBytes(
            com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    checkByteStringIsUtf8(value);
          
          password_ = value;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.t_Key)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.t_Key)
      private static final org.aion.api.server.pb.Message.t_Key DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.t_Key();
      }
  
      public static org.aion.api.server.pb.Message.t_Key getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<t_Key>
          PARSER = new com.google.protobuf.AbstractParser<t_Key>() {
        public t_Key parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new t_Key(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<t_Key> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<t_Key> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.t_Key getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_exportAccountsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_exportAccounts)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_Key> 
          getKeyFileList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      org.aion.api.server.pb.Message.t_Key getKeyFile(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      int getKeyFileCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_KeyOrBuilder> 
          getKeyFileOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      org.aion.api.server.pb.Message.t_KeyOrBuilder getKeyFileOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_exportAccounts}
     */
    public  static final class req_exportAccounts extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_exportAccounts)
        req_exportAccountsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_exportAccounts.newBuilder() to construct.
      private req_exportAccounts(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_exportAccounts() {
        keyFile_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_exportAccounts(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  keyFile_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Key>();
                  mutable_bitField0_ |= 0x00000001;
                }
                keyFile_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_Key.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            keyFile_ = java.util.Collections.unmodifiableList(keyFile_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_exportAccounts_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_exportAccounts_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_exportAccounts.class, org.aion.api.server.pb.Message.req_exportAccounts.Builder.class);
      }
  
      public static final int KEYFILE_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_Key> keyFile_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_Key> getKeyFileList() {
        return keyFile_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_KeyOrBuilder> 
          getKeyFileOrBuilderList() {
        return keyFile_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      public int getKeyFileCount() {
        return keyFile_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_Key getKeyFile(int index) {
        return keyFile_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_KeyOrBuilder getKeyFileOrBuilder(
          int index) {
        return keyFile_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < keyFile_.size(); i++) {
          output.writeMessage(1, keyFile_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < keyFile_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, keyFile_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_exportAccounts)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_exportAccounts other = (org.aion.api.server.pb.Message.req_exportAccounts) obj;
  
        boolean result = true;
        result = result && getKeyFileList()
            .equals(other.getKeyFileList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getKeyFileCount() > 0) {
          hash = (37 * hash) + KEYFILE_FIELD_NUMBER;
          hash = (53 * hash) + getKeyFileList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_exportAccounts parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_exportAccounts prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_exportAccounts}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_exportAccounts)
          org.aion.api.server.pb.Message.req_exportAccountsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_exportAccounts_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_exportAccounts_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_exportAccounts.class, org.aion.api.server.pb.Message.req_exportAccounts.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_exportAccounts.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getKeyFileFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (keyFileBuilder_ == null) {
            keyFile_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            keyFileBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_exportAccounts_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_exportAccounts getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_exportAccounts.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_exportAccounts build() {
          org.aion.api.server.pb.Message.req_exportAccounts result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_exportAccounts buildPartial() {
          org.aion.api.server.pb.Message.req_exportAccounts result = new org.aion.api.server.pb.Message.req_exportAccounts(this);
          int from_bitField0_ = bitField0_;
          if (keyFileBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              keyFile_ = java.util.Collections.unmodifiableList(keyFile_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.keyFile_ = keyFile_;
          } else {
            result.keyFile_ = keyFileBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_exportAccounts) {
            return mergeFrom((org.aion.api.server.pb.Message.req_exportAccounts)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_exportAccounts other) {
          if (other == org.aion.api.server.pb.Message.req_exportAccounts.getDefaultInstance()) return this;
          if (keyFileBuilder_ == null) {
            if (!other.keyFile_.isEmpty()) {
              if (keyFile_.isEmpty()) {
                keyFile_ = other.keyFile_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureKeyFileIsMutable();
                keyFile_.addAll(other.keyFile_);
              }
              onChanged();
            }
          } else {
            if (!other.keyFile_.isEmpty()) {
              if (keyFileBuilder_.isEmpty()) {
                keyFileBuilder_.dispose();
                keyFileBuilder_ = null;
                keyFile_ = other.keyFile_;
                bitField0_ = (bitField0_ & ~0x00000001);
                keyFileBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getKeyFileFieldBuilder() : null;
              } else {
                keyFileBuilder_.addAllMessages(other.keyFile_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_exportAccounts parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_exportAccounts) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_Key> keyFile_ =
          java.util.Collections.emptyList();
        private void ensureKeyFileIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            keyFile_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Key>(keyFile_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Key, org.aion.api.server.pb.Message.t_Key.Builder, org.aion.api.server.pb.Message.t_KeyOrBuilder> keyFileBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Key> getKeyFileList() {
          if (keyFileBuilder_ == null) {
            return java.util.Collections.unmodifiableList(keyFile_);
          } else {
            return keyFileBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public int getKeyFileCount() {
          if (keyFileBuilder_ == null) {
            return keyFile_.size();
          } else {
            return keyFileBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Key getKeyFile(int index) {
          if (keyFileBuilder_ == null) {
            return keyFile_.get(index);
          } else {
            return keyFileBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder setKeyFile(
            int index, org.aion.api.server.pb.Message.t_Key value) {
          if (keyFileBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureKeyFileIsMutable();
            keyFile_.set(index, value);
            onChanged();
          } else {
            keyFileBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder setKeyFile(
            int index, org.aion.api.server.pb.Message.t_Key.Builder builderForValue) {
          if (keyFileBuilder_ == null) {
            ensureKeyFileIsMutable();
            keyFile_.set(index, builderForValue.build());
            onChanged();
          } else {
            keyFileBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder addKeyFile(org.aion.api.server.pb.Message.t_Key value) {
          if (keyFileBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureKeyFileIsMutable();
            keyFile_.add(value);
            onChanged();
          } else {
            keyFileBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder addKeyFile(
            int index, org.aion.api.server.pb.Message.t_Key value) {
          if (keyFileBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureKeyFileIsMutable();
            keyFile_.add(index, value);
            onChanged();
          } else {
            keyFileBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder addKeyFile(
            org.aion.api.server.pb.Message.t_Key.Builder builderForValue) {
          if (keyFileBuilder_ == null) {
            ensureKeyFileIsMutable();
            keyFile_.add(builderForValue.build());
            onChanged();
          } else {
            keyFileBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder addKeyFile(
            int index, org.aion.api.server.pb.Message.t_Key.Builder builderForValue) {
          if (keyFileBuilder_ == null) {
            ensureKeyFileIsMutable();
            keyFile_.add(index, builderForValue.build());
            onChanged();
          } else {
            keyFileBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder addAllKeyFile(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_Key> values) {
          if (keyFileBuilder_ == null) {
            ensureKeyFileIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, keyFile_);
            onChanged();
          } else {
            keyFileBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder clearKeyFile() {
          if (keyFileBuilder_ == null) {
            keyFile_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            keyFileBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public Builder removeKeyFile(int index) {
          if (keyFileBuilder_ == null) {
            ensureKeyFileIsMutable();
            keyFile_.remove(index);
            onChanged();
          } else {
            keyFileBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Key.Builder getKeyFileBuilder(
            int index) {
          return getKeyFileFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_KeyOrBuilder getKeyFileOrBuilder(
            int index) {
          if (keyFileBuilder_ == null) {
            return keyFile_.get(index);  } else {
            return keyFileBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_KeyOrBuilder> 
             getKeyFileOrBuilderList() {
          if (keyFileBuilder_ != null) {
            return keyFileBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(keyFile_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Key.Builder addKeyFileBuilder() {
          return getKeyFileFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_Key.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Key.Builder addKeyFileBuilder(
            int index) {
          return getKeyFileFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_Key.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Key keyFile = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Key.Builder> 
             getKeyFileBuilderList() {
          return getKeyFileFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Key, org.aion.api.server.pb.Message.t_Key.Builder, org.aion.api.server.pb.Message.t_KeyOrBuilder> 
            getKeyFileFieldBuilder() {
          if (keyFileBuilder_ == null) {
            keyFileBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_Key, org.aion.api.server.pb.Message.t_Key.Builder, org.aion.api.server.pb.Message.t_KeyOrBuilder>(
                    keyFile_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            keyFile_ = null;
          }
          return keyFileBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_exportAccounts)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_exportAccounts)
      private static final org.aion.api.server.pb.Message.req_exportAccounts DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_exportAccounts();
      }
  
      public static org.aion.api.server.pb.Message.req_exportAccounts getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_exportAccounts>
          PARSER = new com.google.protobuf.AbstractParser<req_exportAccounts>() {
        public req_exportAccounts parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_exportAccounts(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_exportAccounts> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_exportAccounts> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_exportAccounts getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_exportAccountsOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_exportAccounts)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated bytes keyFile = 1;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getKeyFileList();
      /**
       * <code>repeated bytes keyFile = 1;</code>
       */
      int getKeyFileCount();
      /**
       * <code>repeated bytes keyFile = 1;</code>
       */
      com.google.protobuf.ByteString getKeyFile(int index);
  
      /**
       * <code>repeated bytes failedKey = 2;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getFailedKeyList();
      /**
       * <code>repeated bytes failedKey = 2;</code>
       */
      int getFailedKeyCount();
      /**
       * <code>repeated bytes failedKey = 2;</code>
       */
      com.google.protobuf.ByteString getFailedKey(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_exportAccounts}
     */
    public  static final class rsp_exportAccounts extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_exportAccounts)
        rsp_exportAccountsOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_exportAccounts.newBuilder() to construct.
      private rsp_exportAccounts(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_exportAccounts() {
        keyFile_ = java.util.Collections.emptyList();
        failedKey_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_exportAccounts(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  keyFile_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000001;
                }
                keyFile_.add(input.readBytes());
                break;
              }
              case 18: {
                if (!((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
                  failedKey_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000002;
                }
                failedKey_.add(input.readBytes());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            keyFile_ = java.util.Collections.unmodifiableList(keyFile_);
          }
          if (((mutable_bitField0_ & 0x00000002) == 0x00000002)) {
            failedKey_ = java.util.Collections.unmodifiableList(failedKey_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_exportAccounts_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_exportAccounts_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_exportAccounts.class, org.aion.api.server.pb.Message.rsp_exportAccounts.Builder.class);
      }
  
      public static final int KEYFILE_FIELD_NUMBER = 1;
      private java.util.List<com.google.protobuf.ByteString> keyFile_;
      /**
       * <code>repeated bytes keyFile = 1;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getKeyFileList() {
        return keyFile_;
      }
      /**
       * <code>repeated bytes keyFile = 1;</code>
       */
      public int getKeyFileCount() {
        return keyFile_.size();
      }
      /**
       * <code>repeated bytes keyFile = 1;</code>
       */
      public com.google.protobuf.ByteString getKeyFile(int index) {
        return keyFile_.get(index);
      }
  
      public static final int FAILEDKEY_FIELD_NUMBER = 2;
      private java.util.List<com.google.protobuf.ByteString> failedKey_;
      /**
       * <code>repeated bytes failedKey = 2;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getFailedKeyList() {
        return failedKey_;
      }
      /**
       * <code>repeated bytes failedKey = 2;</code>
       */
      public int getFailedKeyCount() {
        return failedKey_.size();
      }
      /**
       * <code>repeated bytes failedKey = 2;</code>
       */
      public com.google.protobuf.ByteString getFailedKey(int index) {
        return failedKey_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < keyFile_.size(); i++) {
          output.writeBytes(1, keyFile_.get(i));
        }
        for (int i = 0; i < failedKey_.size(); i++) {
          output.writeBytes(2, failedKey_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < keyFile_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(keyFile_.get(i));
          }
          size += dataSize;
          size += 1 * getKeyFileList().size();
        }
        {
          int dataSize = 0;
          for (int i = 0; i < failedKey_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(failedKey_.get(i));
          }
          size += dataSize;
          size += 1 * getFailedKeyList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_exportAccounts)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_exportAccounts other = (org.aion.api.server.pb.Message.rsp_exportAccounts) obj;
  
        boolean result = true;
        result = result && getKeyFileList()
            .equals(other.getKeyFileList());
        result = result && getFailedKeyList()
            .equals(other.getFailedKeyList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getKeyFileCount() > 0) {
          hash = (37 * hash) + KEYFILE_FIELD_NUMBER;
          hash = (53 * hash) + getKeyFileList().hashCode();
        }
        if (getFailedKeyCount() > 0) {
          hash = (37 * hash) + FAILEDKEY_FIELD_NUMBER;
          hash = (53 * hash) + getFailedKeyList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_exportAccounts parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_exportAccounts prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_exportAccounts}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_exportAccounts)
          org.aion.api.server.pb.Message.rsp_exportAccountsOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_exportAccounts_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_exportAccounts_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_exportAccounts.class, org.aion.api.server.pb.Message.rsp_exportAccounts.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_exportAccounts.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          keyFile_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          failedKey_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_exportAccounts_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_exportAccounts getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_exportAccounts.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_exportAccounts build() {
          org.aion.api.server.pb.Message.rsp_exportAccounts result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_exportAccounts buildPartial() {
          org.aion.api.server.pb.Message.rsp_exportAccounts result = new org.aion.api.server.pb.Message.rsp_exportAccounts(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            keyFile_ = java.util.Collections.unmodifiableList(keyFile_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.keyFile_ = keyFile_;
          if (((bitField0_ & 0x00000002) == 0x00000002)) {
            failedKey_ = java.util.Collections.unmodifiableList(failedKey_);
            bitField0_ = (bitField0_ & ~0x00000002);
          }
          result.failedKey_ = failedKey_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_exportAccounts) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_exportAccounts)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_exportAccounts other) {
          if (other == org.aion.api.server.pb.Message.rsp_exportAccounts.getDefaultInstance()) return this;
          if (!other.keyFile_.isEmpty()) {
            if (keyFile_.isEmpty()) {
              keyFile_ = other.keyFile_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureKeyFileIsMutable();
              keyFile_.addAll(other.keyFile_);
            }
            onChanged();
          }
          if (!other.failedKey_.isEmpty()) {
            if (failedKey_.isEmpty()) {
              failedKey_ = other.failedKey_;
              bitField0_ = (bitField0_ & ~0x00000002);
            } else {
              ensureFailedKeyIsMutable();
              failedKey_.addAll(other.failedKey_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_exportAccounts parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_exportAccounts) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.google.protobuf.ByteString> keyFile_ = java.util.Collections.emptyList();
        private void ensureKeyFileIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            keyFile_ = new java.util.ArrayList<com.google.protobuf.ByteString>(keyFile_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getKeyFileList() {
          return java.util.Collections.unmodifiableList(keyFile_);
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public int getKeyFileCount() {
          return keyFile_.size();
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public com.google.protobuf.ByteString getKeyFile(int index) {
          return keyFile_.get(index);
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public Builder setKeyFile(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureKeyFileIsMutable();
          keyFile_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public Builder addKeyFile(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureKeyFileIsMutable();
          keyFile_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public Builder addAllKeyFile(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureKeyFileIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, keyFile_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes keyFile = 1;</code>
         */
        public Builder clearKeyFile() {
          keyFile_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
  
        private java.util.List<com.google.protobuf.ByteString> failedKey_ = java.util.Collections.emptyList();
        private void ensureFailedKeyIsMutable() {
          if (!((bitField0_ & 0x00000002) == 0x00000002)) {
            failedKey_ = new java.util.ArrayList<com.google.protobuf.ByteString>(failedKey_);
            bitField0_ |= 0x00000002;
           }
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getFailedKeyList() {
          return java.util.Collections.unmodifiableList(failedKey_);
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public int getFailedKeyCount() {
          return failedKey_.size();
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public com.google.protobuf.ByteString getFailedKey(int index) {
          return failedKey_.get(index);
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public Builder setFailedKey(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureFailedKeyIsMutable();
          failedKey_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public Builder addFailedKey(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureFailedKeyIsMutable();
          failedKey_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public Builder addAllFailedKey(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureFailedKeyIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, failedKey_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes failedKey = 2;</code>
         */
        public Builder clearFailedKey() {
          failedKey_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000002);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_exportAccounts)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_exportAccounts)
      private static final org.aion.api.server.pb.Message.rsp_exportAccounts DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_exportAccounts();
      }
  
      public static org.aion.api.server.pb.Message.rsp_exportAccounts getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_exportAccounts>
          PARSER = new com.google.protobuf.AbstractParser<rsp_exportAccounts>() {
        public rsp_exportAccounts parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_exportAccounts(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_exportAccounts> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_exportAccounts> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_exportAccounts getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getCurrentTotalDifficultyOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getCurrentTotalDifficulty)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes totalDiff = 1;</code>
       */
      com.google.protobuf.ByteString getTotalDiff();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getCurrentTotalDifficulty}
     */
    public  static final class rsp_getCurrentTotalDifficulty extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getCurrentTotalDifficulty)
        rsp_getCurrentTotalDifficultyOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getCurrentTotalDifficulty.newBuilder() to construct.
      private rsp_getCurrentTotalDifficulty(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getCurrentTotalDifficulty() {
        totalDiff_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getCurrentTotalDifficulty(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                totalDiff_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.class, org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.Builder.class);
      }
  
      public static final int TOTALDIFF_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString totalDiff_;
      /**
       * <code>bytes totalDiff = 1;</code>
       */
      public com.google.protobuf.ByteString getTotalDiff() {
        return totalDiff_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!totalDiff_.isEmpty()) {
          output.writeBytes(1, totalDiff_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!totalDiff_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, totalDiff_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty other = (org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty) obj;
  
        boolean result = true;
        result = result && getTotalDiff()
            .equals(other.getTotalDiff());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + TOTALDIFF_FIELD_NUMBER;
        hash = (53 * hash) + getTotalDiff().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getCurrentTotalDifficulty}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getCurrentTotalDifficulty)
          org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficultyOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.class, org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          totalDiff_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty build() {
          org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty buildPartial() {
          org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty result = new org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty(this);
          result.totalDiff_ = totalDiff_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty other) {
          if (other == org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty.getDefaultInstance()) return this;
          if (other.getTotalDiff() != com.google.protobuf.ByteString.EMPTY) {
            setTotalDiff(other.getTotalDiff());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString totalDiff_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes totalDiff = 1;</code>
         */
        public com.google.protobuf.ByteString getTotalDiff() {
          return totalDiff_;
        }
        /**
         * <code>bytes totalDiff = 1;</code>
         */
        public Builder setTotalDiff(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          totalDiff_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes totalDiff = 1;</code>
         */
        public Builder clearTotalDiff() {
          
          totalDiff_ = getDefaultInstance().getTotalDiff();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getCurrentTotalDifficulty)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getCurrentTotalDifficulty)
      private static final org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getCurrentTotalDifficulty>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getCurrentTotalDifficulty>() {
        public rsp_getCurrentTotalDifficulty parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getCurrentTotalDifficulty(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getCurrentTotalDifficulty> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getCurrentTotalDifficulty> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getCurrentTotalDifficulty getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockDetailsByNumberOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockDetailsByNumber)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated uint64 blkNumbers = 1;</code>
       */
      java.util.List<java.lang.Long> getBlkNumbersList();
      /**
       * <code>repeated uint64 blkNumbers = 1;</code>
       */
      int getBlkNumbersCount();
      /**
       * <code>repeated uint64 blkNumbers = 1;</code>
       */
      long getBlkNumbers(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByNumber}
     */
    public  static final class req_getBlockDetailsByNumber extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockDetailsByNumber)
        req_getBlockDetailsByNumberOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockDetailsByNumber.newBuilder() to construct.
      private req_getBlockDetailsByNumber(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockDetailsByNumber() {
        blkNumbers_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockDetailsByNumber(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  blkNumbers_ = new java.util.ArrayList<java.lang.Long>();
                  mutable_bitField0_ |= 0x00000001;
                }
                blkNumbers_.add(input.readUInt64());
                break;
              }
              case 10: {
                int length = input.readRawVarint32();
                int limit = input.pushLimit(length);
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001) && input.getBytesUntilLimit() > 0) {
                  blkNumbers_ = new java.util.ArrayList<java.lang.Long>();
                  mutable_bitField0_ |= 0x00000001;
                }
                while (input.getBytesUntilLimit() > 0) {
                  blkNumbers_.add(input.readUInt64());
                }
                input.popLimit(limit);
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            blkNumbers_ = java.util.Collections.unmodifiableList(blkNumbers_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.class, org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.Builder.class);
      }
  
      public static final int BLKNUMBERS_FIELD_NUMBER = 1;
      private java.util.List<java.lang.Long> blkNumbers_;
      /**
       * <code>repeated uint64 blkNumbers = 1;</code>
       */
      public java.util.List<java.lang.Long>
          getBlkNumbersList() {
        return blkNumbers_;
      }
      /**
       * <code>repeated uint64 blkNumbers = 1;</code>
       */
      public int getBlkNumbersCount() {
        return blkNumbers_.size();
      }
      /**
       * <code>repeated uint64 blkNumbers = 1;</code>
       */
      public long getBlkNumbers(int index) {
        return blkNumbers_.get(index);
      }
      private int blkNumbersMemoizedSerializedSize = -1;
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        getSerializedSize();
        if (getBlkNumbersList().size() > 0) {
          output.writeUInt32NoTag(10);
          output.writeUInt32NoTag(blkNumbersMemoizedSerializedSize);
        }
        for (int i = 0; i < blkNumbers_.size(); i++) {
          output.writeUInt64NoTag(blkNumbers_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < blkNumbers_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeUInt64SizeNoTag(blkNumbers_.get(i));
          }
          size += dataSize;
          if (!getBlkNumbersList().isEmpty()) {
            size += 1;
            size += com.google.protobuf.CodedOutputStream
                .computeInt32SizeNoTag(dataSize);
          }
          blkNumbersMemoizedSerializedSize = dataSize;
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByNumber)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockDetailsByNumber other = (org.aion.api.server.pb.Message.req_getBlockDetailsByNumber) obj;
  
        boolean result = true;
        result = result && getBlkNumbersList()
            .equals(other.getBlkNumbersList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getBlkNumbersCount() > 0) {
          hash = (37 * hash) + BLKNUMBERS_FIELD_NUMBER;
          hash = (53 * hash) + getBlkNumbersList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockDetailsByNumber prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByNumber}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockDetailsByNumber)
          org.aion.api.server.pb.Message.req_getBlockDetailsByNumberOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.class, org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blkNumbers_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByNumber getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByNumber build() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByNumber result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByNumber buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByNumber result = new org.aion.api.server.pb.Message.req_getBlockDetailsByNumber(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            blkNumbers_ = java.util.Collections.unmodifiableList(blkNumbers_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.blkNumbers_ = blkNumbers_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByNumber) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockDetailsByNumber)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockDetailsByNumber other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockDetailsByNumber.getDefaultInstance()) return this;
          if (!other.blkNumbers_.isEmpty()) {
            if (blkNumbers_.isEmpty()) {
              blkNumbers_ = other.blkNumbers_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureBlkNumbersIsMutable();
              blkNumbers_.addAll(other.blkNumbers_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockDetailsByNumber parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockDetailsByNumber) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<java.lang.Long> blkNumbers_ = java.util.Collections.emptyList();
        private void ensureBlkNumbersIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            blkNumbers_ = new java.util.ArrayList<java.lang.Long>(blkNumbers_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public java.util.List<java.lang.Long>
            getBlkNumbersList() {
          return java.util.Collections.unmodifiableList(blkNumbers_);
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public int getBlkNumbersCount() {
          return blkNumbers_.size();
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public long getBlkNumbers(int index) {
          return blkNumbers_.get(index);
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public Builder setBlkNumbers(
            int index, long value) {
          ensureBlkNumbersIsMutable();
          blkNumbers_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public Builder addBlkNumbers(long value) {
          ensureBlkNumbersIsMutable();
          blkNumbers_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public Builder addAllBlkNumbers(
            java.lang.Iterable<? extends java.lang.Long> values) {
          ensureBlkNumbersIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, blkNumbers_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated uint64 blkNumbers = 1;</code>
         */
        public Builder clearBlkNumbers() {
          blkNumbers_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockDetailsByNumber)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockDetailsByNumber)
      private static final org.aion.api.server.pb.Message.req_getBlockDetailsByNumber DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockDetailsByNumber();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByNumber getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockDetailsByNumber>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockDetailsByNumber>() {
        public req_getBlockDetailsByNumber parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockDetailsByNumber(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockDetailsByNumber> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockDetailsByNumber> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockDetailsByNumber getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockDetailsByNumberOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockDetailsByNumber)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> 
          getBlkDetailsList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      int getBlkDetailsCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
          getBlkDetailsOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByNumber}
     */
    public  static final class rsp_getBlockDetailsByNumber extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockDetailsByNumber)
        rsp_getBlockDetailsByNumberOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockDetailsByNumber.newBuilder() to construct.
      private rsp_getBlockDetailsByNumber(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockDetailsByNumber() {
        blkDetails_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockDetailsByNumber(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  blkDetails_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockDetail>();
                  mutable_bitField0_ |= 0x00000001;
                }
                blkDetails_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_BlockDetail.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            blkDetails_ = java.util.Collections.unmodifiableList(blkDetails_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.Builder.class);
      }
  
      public static final int BLKDETAILS_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> blkDetails_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> getBlkDetailsList() {
        return blkDetails_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
          getBlkDetailsOrBuilderList() {
        return blkDetails_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public int getBlkDetailsCount() {
        return blkDetails_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index) {
        return blkDetails_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
          int index) {
        return blkDetails_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < blkDetails_.size(); i++) {
          output.writeMessage(1, blkDetails_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < blkDetails_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, blkDetails_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber other = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber) obj;
  
        boolean result = true;
        result = result && getBlkDetailsList()
            .equals(other.getBlkDetailsList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getBlkDetailsCount() > 0) {
          hash = (37 * hash) + BLKDETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getBlkDetailsList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByNumber}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockDetailsByNumber)
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumberOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getBlkDetailsFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            blkDetailsBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber build() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber result = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber(this);
          int from_bitField0_ = bitField0_;
          if (blkDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              blkDetails_ = java.util.Collections.unmodifiableList(blkDetails_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.blkDetails_ = blkDetails_;
          } else {
            result.blkDetails_ = blkDetailsBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber.getDefaultInstance()) return this;
          if (blkDetailsBuilder_ == null) {
            if (!other.blkDetails_.isEmpty()) {
              if (blkDetails_.isEmpty()) {
                blkDetails_ = other.blkDetails_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureBlkDetailsIsMutable();
                blkDetails_.addAll(other.blkDetails_);
              }
              onChanged();
            }
          } else {
            if (!other.blkDetails_.isEmpty()) {
              if (blkDetailsBuilder_.isEmpty()) {
                blkDetailsBuilder_.dispose();
                blkDetailsBuilder_ = null;
                blkDetails_ = other.blkDetails_;
                bitField0_ = (bitField0_ & ~0x00000001);
                blkDetailsBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getBlkDetailsFieldBuilder() : null;
              } else {
                blkDetailsBuilder_.addAllMessages(other.blkDetails_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> blkDetails_ =
          java.util.Collections.emptyList();
        private void ensureBlkDetailsIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            blkDetails_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockDetail>(blkDetails_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> blkDetailsBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> getBlkDetailsList() {
          if (blkDetailsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(blkDetails_);
          } else {
            return blkDetailsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public int getBlkDetailsCount() {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.size();
          } else {
            return blkDetailsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index) {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.get(index);
          } else {
            return blkDetailsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.set(index, value);
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.set(index, builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.add(value);
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.add(index, value);
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.add(builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.add(index, builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addAllBlkDetails(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_BlockDetail> values) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, blkDetails_);
            onChanged();
          } else {
            blkDetailsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder clearBlkDetails() {
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            blkDetailsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder removeBlkDetails(int index) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.remove(index);
            onChanged();
          } else {
            blkDetailsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder getBlkDetailsBuilder(
            int index) {
          return getBlkDetailsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
            int index) {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.get(index);  } else {
            return blkDetailsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
             getBlkDetailsOrBuilderList() {
          if (blkDetailsBuilder_ != null) {
            return blkDetailsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(blkDetails_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder addBlkDetailsBuilder() {
          return getBlkDetailsFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder addBlkDetailsBuilder(
            int index) {
          return getBlkDetailsFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail.Builder> 
             getBlkDetailsBuilderList() {
          return getBlkDetailsFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
            getBlkDetailsFieldBuilder() {
          if (blkDetailsBuilder_ == null) {
            blkDetailsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder>(
                    blkDetails_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            blkDetails_ = null;
          }
          return blkDetailsBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockDetailsByNumber)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockDetailsByNumber)
      private static final org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockDetailsByNumber>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockDetailsByNumber>() {
        public rsp_getBlockDetailsByNumber parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockDetailsByNumber(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockDetailsByNumber> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockDetailsByNumber> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockDetailsByNumber getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockDetailsByLatestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockDetailsByLatest)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 count = 1;</code>
       */
      long getCount();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByLatest}
     */
    public  static final class req_getBlockDetailsByLatest extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockDetailsByLatest)
        req_getBlockDetailsByLatestOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockDetailsByLatest.newBuilder() to construct.
      private req_getBlockDetailsByLatest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockDetailsByLatest() {
        count_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockDetailsByLatest(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                count_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.class, org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.Builder.class);
      }
  
      public static final int COUNT_FIELD_NUMBER = 1;
      private long count_;
      /**
       * <code>uint64 count = 1;</code>
       */
      public long getCount() {
        return count_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (count_ != 0L) {
          output.writeUInt64(1, count_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (count_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, count_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByLatest)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockDetailsByLatest other = (org.aion.api.server.pb.Message.req_getBlockDetailsByLatest) obj;
  
        boolean result = true;
        result = result && (getCount()
            == other.getCount());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + COUNT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCount());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockDetailsByLatest prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByLatest}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockDetailsByLatest)
          org.aion.api.server.pb.Message.req_getBlockDetailsByLatestOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.class, org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          count_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByLatest getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByLatest build() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByLatest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByLatest buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByLatest result = new org.aion.api.server.pb.Message.req_getBlockDetailsByLatest(this);
          result.count_ = count_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByLatest) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockDetailsByLatest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockDetailsByLatest other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockDetailsByLatest.getDefaultInstance()) return this;
          if (other.getCount() != 0L) {
            setCount(other.getCount());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockDetailsByLatest parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockDetailsByLatest) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long count_ ;
        /**
         * <code>uint64 count = 1;</code>
         */
        public long getCount() {
          return count_;
        }
        /**
         * <code>uint64 count = 1;</code>
         */
        public Builder setCount(long value) {
          
          count_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 count = 1;</code>
         */
        public Builder clearCount() {
          
          count_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockDetailsByLatest)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockDetailsByLatest)
      private static final org.aion.api.server.pb.Message.req_getBlockDetailsByLatest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockDetailsByLatest();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByLatest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockDetailsByLatest>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockDetailsByLatest>() {
        public req_getBlockDetailsByLatest parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockDetailsByLatest(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockDetailsByLatest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockDetailsByLatest> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockDetailsByLatest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockDetailsByLatestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockDetailsByLatest)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> 
          getBlkDetailsList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      int getBlkDetailsCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
          getBlkDetailsOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByLatest}
     */
    public  static final class rsp_getBlockDetailsByLatest extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockDetailsByLatest)
        rsp_getBlockDetailsByLatestOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockDetailsByLatest.newBuilder() to construct.
      private rsp_getBlockDetailsByLatest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockDetailsByLatest() {
        blkDetails_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockDetailsByLatest(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  blkDetails_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockDetail>();
                  mutable_bitField0_ |= 0x00000001;
                }
                blkDetails_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_BlockDetail.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            blkDetails_ = java.util.Collections.unmodifiableList(blkDetails_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.Builder.class);
      }
  
      public static final int BLKDETAILS_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> blkDetails_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> getBlkDetailsList() {
        return blkDetails_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
          getBlkDetailsOrBuilderList() {
        return blkDetails_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public int getBlkDetailsCount() {
        return blkDetails_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index) {
        return blkDetails_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
          int index) {
        return blkDetails_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < blkDetails_.size(); i++) {
          output.writeMessage(1, blkDetails_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < blkDetails_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, blkDetails_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest other = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest) obj;
  
        boolean result = true;
        result = result && getBlkDetailsList()
            .equals(other.getBlkDetailsList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getBlkDetailsCount() > 0) {
          hash = (37 * hash) + BLKDETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getBlkDetailsList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByLatest}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockDetailsByLatest)
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatestOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getBlkDetailsFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            blkDetailsBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest build() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest result = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest(this);
          int from_bitField0_ = bitField0_;
          if (blkDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              blkDetails_ = java.util.Collections.unmodifiableList(blkDetails_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.blkDetails_ = blkDetails_;
          } else {
            result.blkDetails_ = blkDetailsBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest.getDefaultInstance()) return this;
          if (blkDetailsBuilder_ == null) {
            if (!other.blkDetails_.isEmpty()) {
              if (blkDetails_.isEmpty()) {
                blkDetails_ = other.blkDetails_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureBlkDetailsIsMutable();
                blkDetails_.addAll(other.blkDetails_);
              }
              onChanged();
            }
          } else {
            if (!other.blkDetails_.isEmpty()) {
              if (blkDetailsBuilder_.isEmpty()) {
                blkDetailsBuilder_.dispose();
                blkDetailsBuilder_ = null;
                blkDetails_ = other.blkDetails_;
                bitField0_ = (bitField0_ & ~0x00000001);
                blkDetailsBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getBlkDetailsFieldBuilder() : null;
              } else {
                blkDetailsBuilder_.addAllMessages(other.blkDetails_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> blkDetails_ =
          java.util.Collections.emptyList();
        private void ensureBlkDetailsIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            blkDetails_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockDetail>(blkDetails_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> blkDetailsBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> getBlkDetailsList() {
          if (blkDetailsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(blkDetails_);
          } else {
            return blkDetailsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public int getBlkDetailsCount() {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.size();
          } else {
            return blkDetailsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index) {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.get(index);
          } else {
            return blkDetailsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.set(index, value);
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.set(index, builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.add(value);
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.add(index, value);
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.add(builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.add(index, builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addAllBlkDetails(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_BlockDetail> values) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, blkDetails_);
            onChanged();
          } else {
            blkDetailsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder clearBlkDetails() {
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            blkDetailsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder removeBlkDetails(int index) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.remove(index);
            onChanged();
          } else {
            blkDetailsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder getBlkDetailsBuilder(
            int index) {
          return getBlkDetailsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
            int index) {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.get(index);  } else {
            return blkDetailsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
             getBlkDetailsOrBuilderList() {
          if (blkDetailsBuilder_ != null) {
            return blkDetailsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(blkDetails_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder addBlkDetailsBuilder() {
          return getBlkDetailsFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder addBlkDetailsBuilder(
            int index) {
          return getBlkDetailsFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail.Builder> 
             getBlkDetailsBuilderList() {
          return getBlkDetailsFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
            getBlkDetailsFieldBuilder() {
          if (blkDetailsBuilder_ == null) {
            blkDetailsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder>(
                    blkDetails_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            blkDetails_ = null;
          }
          return blkDetailsBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockDetailsByLatest)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockDetailsByLatest)
      private static final org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockDetailsByLatest>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockDetailsByLatest>() {
        public rsp_getBlockDetailsByLatest parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockDetailsByLatest(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockDetailsByLatest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockDetailsByLatest> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockDetailsByLatest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlocksByLatestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlocksByLatest)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 count = 1;</code>
       */
      long getCount();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlocksByLatest}
     */
    public  static final class req_getBlocksByLatest extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlocksByLatest)
        req_getBlocksByLatestOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlocksByLatest.newBuilder() to construct.
      private req_getBlocksByLatest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlocksByLatest() {
        count_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlocksByLatest(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                count_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlocksByLatest_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlocksByLatest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlocksByLatest.class, org.aion.api.server.pb.Message.req_getBlocksByLatest.Builder.class);
      }
  
      public static final int COUNT_FIELD_NUMBER = 1;
      private long count_;
      /**
       * <code>uint64 count = 1;</code>
       */
      public long getCount() {
        return count_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (count_ != 0L) {
          output.writeUInt64(1, count_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (count_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, count_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlocksByLatest)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlocksByLatest other = (org.aion.api.server.pb.Message.req_getBlocksByLatest) obj;
  
        boolean result = true;
        result = result && (getCount()
            == other.getCount());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + COUNT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCount());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlocksByLatest prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlocksByLatest}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlocksByLatest)
          org.aion.api.server.pb.Message.req_getBlocksByLatestOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlocksByLatest_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlocksByLatest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlocksByLatest.class, org.aion.api.server.pb.Message.req_getBlocksByLatest.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlocksByLatest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          count_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlocksByLatest_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlocksByLatest getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlocksByLatest.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlocksByLatest build() {
          org.aion.api.server.pb.Message.req_getBlocksByLatest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlocksByLatest buildPartial() {
          org.aion.api.server.pb.Message.req_getBlocksByLatest result = new org.aion.api.server.pb.Message.req_getBlocksByLatest(this);
          result.count_ = count_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlocksByLatest) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlocksByLatest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlocksByLatest other) {
          if (other == org.aion.api.server.pb.Message.req_getBlocksByLatest.getDefaultInstance()) return this;
          if (other.getCount() != 0L) {
            setCount(other.getCount());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlocksByLatest parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlocksByLatest) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long count_ ;
        /**
         * <code>uint64 count = 1;</code>
         */
        public long getCount() {
          return count_;
        }
        /**
         * <code>uint64 count = 1;</code>
         */
        public Builder setCount(long value) {
          
          count_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 count = 1;</code>
         */
        public Builder clearCount() {
          
          count_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlocksByLatest)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlocksByLatest)
      private static final org.aion.api.server.pb.Message.req_getBlocksByLatest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlocksByLatest();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlocksByLatest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlocksByLatest>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlocksByLatest>() {
        public req_getBlocksByLatest parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlocksByLatest(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlocksByLatest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlocksByLatest> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlocksByLatest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlocksByLatestOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlocksByLatest)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_Block> 
          getBlksList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      org.aion.api.server.pb.Message.t_Block getBlks(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      int getBlksCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_BlockOrBuilder> 
          getBlksOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockOrBuilder getBlksOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlocksByLatest}
     */
    public  static final class rsp_getBlocksByLatest extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlocksByLatest)
        rsp_getBlocksByLatestOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlocksByLatest.newBuilder() to construct.
      private rsp_getBlocksByLatest(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlocksByLatest() {
        blks_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlocksByLatest(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  blks_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Block>();
                  mutable_bitField0_ |= 0x00000001;
                }
                blks_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_Block.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            blks_ = java.util.Collections.unmodifiableList(blks_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlocksByLatest.class, org.aion.api.server.pb.Message.rsp_getBlocksByLatest.Builder.class);
      }
  
      public static final int BLKS_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_Block> blks_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_Block> getBlksList() {
        return blks_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockOrBuilder> 
          getBlksOrBuilderList() {
        return blks_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      public int getBlksCount() {
        return blks_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_Block getBlks(int index) {
        return blks_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockOrBuilder getBlksOrBuilder(
          int index) {
        return blks_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < blks_.size(); i++) {
          output.writeMessage(1, blks_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < blks_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, blks_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlocksByLatest)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlocksByLatest other = (org.aion.api.server.pb.Message.rsp_getBlocksByLatest) obj;
  
        boolean result = true;
        result = result && getBlksList()
            .equals(other.getBlksList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getBlksCount() > 0) {
          hash = (37 * hash) + BLKS_FIELD_NUMBER;
          hash = (53 * hash) + getBlksList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlocksByLatest prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlocksByLatest}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlocksByLatest)
          org.aion.api.server.pb.Message.rsp_getBlocksByLatestOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlocksByLatest.class, org.aion.api.server.pb.Message.rsp_getBlocksByLatest.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlocksByLatest.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getBlksFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (blksBuilder_ == null) {
            blks_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            blksBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlocksByLatest getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlocksByLatest.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlocksByLatest build() {
          org.aion.api.server.pb.Message.rsp_getBlocksByLatest result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlocksByLatest buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlocksByLatest result = new org.aion.api.server.pb.Message.rsp_getBlocksByLatest(this);
          int from_bitField0_ = bitField0_;
          if (blksBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              blks_ = java.util.Collections.unmodifiableList(blks_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.blks_ = blks_;
          } else {
            result.blks_ = blksBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlocksByLatest) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlocksByLatest)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlocksByLatest other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlocksByLatest.getDefaultInstance()) return this;
          if (blksBuilder_ == null) {
            if (!other.blks_.isEmpty()) {
              if (blks_.isEmpty()) {
                blks_ = other.blks_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureBlksIsMutable();
                blks_.addAll(other.blks_);
              }
              onChanged();
            }
          } else {
            if (!other.blks_.isEmpty()) {
              if (blksBuilder_.isEmpty()) {
                blksBuilder_.dispose();
                blksBuilder_ = null;
                blks_ = other.blks_;
                bitField0_ = (bitField0_ & ~0x00000001);
                blksBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getBlksFieldBuilder() : null;
              } else {
                blksBuilder_.addAllMessages(other.blks_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlocksByLatest parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlocksByLatest) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_Block> blks_ =
          java.util.Collections.emptyList();
        private void ensureBlksIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            blks_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_Block>(blks_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Block, org.aion.api.server.pb.Message.t_Block.Builder, org.aion.api.server.pb.Message.t_BlockOrBuilder> blksBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Block> getBlksList() {
          if (blksBuilder_ == null) {
            return java.util.Collections.unmodifiableList(blks_);
          } else {
            return blksBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public int getBlksCount() {
          if (blksBuilder_ == null) {
            return blks_.size();
          } else {
            return blksBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Block getBlks(int index) {
          if (blksBuilder_ == null) {
            return blks_.get(index);
          } else {
            return blksBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder setBlks(
            int index, org.aion.api.server.pb.Message.t_Block value) {
          if (blksBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlksIsMutable();
            blks_.set(index, value);
            onChanged();
          } else {
            blksBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder setBlks(
            int index, org.aion.api.server.pb.Message.t_Block.Builder builderForValue) {
          if (blksBuilder_ == null) {
            ensureBlksIsMutable();
            blks_.set(index, builderForValue.build());
            onChanged();
          } else {
            blksBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder addBlks(org.aion.api.server.pb.Message.t_Block value) {
          if (blksBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlksIsMutable();
            blks_.add(value);
            onChanged();
          } else {
            blksBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder addBlks(
            int index, org.aion.api.server.pb.Message.t_Block value) {
          if (blksBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlksIsMutable();
            blks_.add(index, value);
            onChanged();
          } else {
            blksBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder addBlks(
            org.aion.api.server.pb.Message.t_Block.Builder builderForValue) {
          if (blksBuilder_ == null) {
            ensureBlksIsMutable();
            blks_.add(builderForValue.build());
            onChanged();
          } else {
            blksBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder addBlks(
            int index, org.aion.api.server.pb.Message.t_Block.Builder builderForValue) {
          if (blksBuilder_ == null) {
            ensureBlksIsMutable();
            blks_.add(index, builderForValue.build());
            onChanged();
          } else {
            blksBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder addAllBlks(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_Block> values) {
          if (blksBuilder_ == null) {
            ensureBlksIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, blks_);
            onChanged();
          } else {
            blksBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder clearBlks() {
          if (blksBuilder_ == null) {
            blks_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            blksBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public Builder removeBlks(int index) {
          if (blksBuilder_ == null) {
            ensureBlksIsMutable();
            blks_.remove(index);
            onChanged();
          } else {
            blksBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Block.Builder getBlksBuilder(
            int index) {
          return getBlksFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockOrBuilder getBlksOrBuilder(
            int index) {
          if (blksBuilder_ == null) {
            return blks_.get(index);  } else {
            return blksBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockOrBuilder> 
             getBlksOrBuilderList() {
          if (blksBuilder_ != null) {
            return blksBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(blks_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Block.Builder addBlksBuilder() {
          return getBlksFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_Block.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_Block.Builder addBlksBuilder(
            int index) {
          return getBlksFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_Block.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_Block blks = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_Block.Builder> 
             getBlksBuilderList() {
          return getBlksFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_Block, org.aion.api.server.pb.Message.t_Block.Builder, org.aion.api.server.pb.Message.t_BlockOrBuilder> 
            getBlksFieldBuilder() {
          if (blksBuilder_ == null) {
            blksBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_Block, org.aion.api.server.pb.Message.t_Block.Builder, org.aion.api.server.pb.Message.t_BlockOrBuilder>(
                    blks_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            blks_ = null;
          }
          return blksBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlocksByLatest)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlocksByLatest)
      private static final org.aion.api.server.pb.Message.rsp_getBlocksByLatest DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlocksByLatest();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlocksByLatest getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlocksByLatest>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlocksByLatest>() {
        public rsp_getBlocksByLatest parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlocksByLatest(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlocksByLatest> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlocksByLatest> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlocksByLatest getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getAccountDetailsByAddressListOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getAccountDetailsByAddressList)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated bytes addresses = 1;</code>
       */
      java.util.List<com.google.protobuf.ByteString> getAddressesList();
      /**
       * <code>repeated bytes addresses = 1;</code>
       */
      int getAddressesCount();
      /**
       * <code>repeated bytes addresses = 1;</code>
       */
      com.google.protobuf.ByteString getAddresses(int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getAccountDetailsByAddressList}
     */
    public  static final class req_getAccountDetailsByAddressList extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getAccountDetailsByAddressList)
        req_getAccountDetailsByAddressListOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getAccountDetailsByAddressList.newBuilder() to construct.
      private req_getAccountDetailsByAddressList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getAccountDetailsByAddressList() {
        addresses_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getAccountDetailsByAddressList(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  addresses_ = new java.util.ArrayList<com.google.protobuf.ByteString>();
                  mutable_bitField0_ |= 0x00000001;
                }
                addresses_.add(input.readBytes());
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            addresses_ = java.util.Collections.unmodifiableList(addresses_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.class, org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.Builder.class);
      }
  
      public static final int ADDRESSES_FIELD_NUMBER = 1;
      private java.util.List<com.google.protobuf.ByteString> addresses_;
      /**
       * <code>repeated bytes addresses = 1;</code>
       */
      public java.util.List<com.google.protobuf.ByteString>
          getAddressesList() {
        return addresses_;
      }
      /**
       * <code>repeated bytes addresses = 1;</code>
       */
      public int getAddressesCount() {
        return addresses_.size();
      }
      /**
       * <code>repeated bytes addresses = 1;</code>
       */
      public com.google.protobuf.ByteString getAddresses(int index) {
        return addresses_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < addresses_.size(); i++) {
          output.writeBytes(1, addresses_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        {
          int dataSize = 0;
          for (int i = 0; i < addresses_.size(); i++) {
            dataSize += com.google.protobuf.CodedOutputStream
              .computeBytesSizeNoTag(addresses_.get(i));
          }
          size += dataSize;
          size += 1 * getAddressesList().size();
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList other = (org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList) obj;
  
        boolean result = true;
        result = result && getAddressesList()
            .equals(other.getAddressesList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getAddressesCount() > 0) {
          hash = (37 * hash) + ADDRESSES_FIELD_NUMBER;
          hash = (53 * hash) + getAddressesList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getAccountDetailsByAddressList}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getAccountDetailsByAddressList)
          org.aion.api.server.pb.Message.req_getAccountDetailsByAddressListOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.class, org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          addresses_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList build() {
          org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList buildPartial() {
          org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList result = new org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList(this);
          int from_bitField0_ = bitField0_;
          if (((bitField0_ & 0x00000001) == 0x00000001)) {
            addresses_ = java.util.Collections.unmodifiableList(addresses_);
            bitField0_ = (bitField0_ & ~0x00000001);
          }
          result.addresses_ = addresses_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList other) {
          if (other == org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList.getDefaultInstance()) return this;
          if (!other.addresses_.isEmpty()) {
            if (addresses_.isEmpty()) {
              addresses_ = other.addresses_;
              bitField0_ = (bitField0_ & ~0x00000001);
            } else {
              ensureAddressesIsMutable();
              addresses_.addAll(other.addresses_);
            }
            onChanged();
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<com.google.protobuf.ByteString> addresses_ = java.util.Collections.emptyList();
        private void ensureAddressesIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            addresses_ = new java.util.ArrayList<com.google.protobuf.ByteString>(addresses_);
            bitField0_ |= 0x00000001;
           }
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public java.util.List<com.google.protobuf.ByteString>
            getAddressesList() {
          return java.util.Collections.unmodifiableList(addresses_);
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public int getAddressesCount() {
          return addresses_.size();
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public com.google.protobuf.ByteString getAddresses(int index) {
          return addresses_.get(index);
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public Builder setAddresses(
            int index, com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAddressesIsMutable();
          addresses_.set(index, value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public Builder addAddresses(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    ensureAddressesIsMutable();
          addresses_.add(value);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public Builder addAllAddresses(
            java.lang.Iterable<? extends com.google.protobuf.ByteString> values) {
          ensureAddressesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, addresses_);
          onChanged();
          return this;
        }
        /**
         * <code>repeated bytes addresses = 1;</code>
         */
        public Builder clearAddresses() {
          addresses_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000001);
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getAccountDetailsByAddressList)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getAccountDetailsByAddressList)
      private static final org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList();
      }
  
      public static org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getAccountDetailsByAddressList>
          PARSER = new com.google.protobuf.AbstractParser<req_getAccountDetailsByAddressList>() {
        public req_getAccountDetailsByAddressList parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getAccountDetailsByAddressList(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getAccountDetailsByAddressList> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getAccountDetailsByAddressList> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getAccountDetailsByAddressList getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getAccountDetailsByAddressListOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getAccountDetailsByAddressList)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_AccountDetail> 
          getAccountsList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      org.aion.api.server.pb.Message.t_AccountDetail getAccounts(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      int getAccountsCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_AccountDetailOrBuilder> 
          getAccountsOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      org.aion.api.server.pb.Message.t_AccountDetailOrBuilder getAccountsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getAccountDetailsByAddressList}
     */
    public  static final class rsp_getAccountDetailsByAddressList extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getAccountDetailsByAddressList)
        rsp_getAccountDetailsByAddressListOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getAccountDetailsByAddressList.newBuilder() to construct.
      private rsp_getAccountDetailsByAddressList(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getAccountDetailsByAddressList() {
        accounts_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getAccountDetailsByAddressList(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  accounts_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_AccountDetail>();
                  mutable_bitField0_ |= 0x00000001;
                }
                accounts_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_AccountDetail.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            accounts_ = java.util.Collections.unmodifiableList(accounts_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.class, org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.Builder.class);
      }
  
      public static final int ACCOUNTS_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_AccountDetail> accounts_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_AccountDetail> getAccountsList() {
        return accounts_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_AccountDetailOrBuilder> 
          getAccountsOrBuilderList() {
        return accounts_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      public int getAccountsCount() {
        return accounts_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_AccountDetail getAccounts(int index) {
        return accounts_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_AccountDetailOrBuilder getAccountsOrBuilder(
          int index) {
        return accounts_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < accounts_.size(); i++) {
          output.writeMessage(1, accounts_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < accounts_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, accounts_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList other = (org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList) obj;
  
        boolean result = true;
        result = result && getAccountsList()
            .equals(other.getAccountsList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getAccountsCount() > 0) {
          hash = (37 * hash) + ACCOUNTS_FIELD_NUMBER;
          hash = (53 * hash) + getAccountsList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getAccountDetailsByAddressList}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getAccountDetailsByAddressList)
          org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressListOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.class, org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getAccountsFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (accountsBuilder_ == null) {
            accounts_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            accountsBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList build() {
          org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList buildPartial() {
          org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList result = new org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList(this);
          int from_bitField0_ = bitField0_;
          if (accountsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              accounts_ = java.util.Collections.unmodifiableList(accounts_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.accounts_ = accounts_;
          } else {
            result.accounts_ = accountsBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList other) {
          if (other == org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList.getDefaultInstance()) return this;
          if (accountsBuilder_ == null) {
            if (!other.accounts_.isEmpty()) {
              if (accounts_.isEmpty()) {
                accounts_ = other.accounts_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureAccountsIsMutable();
                accounts_.addAll(other.accounts_);
              }
              onChanged();
            }
          } else {
            if (!other.accounts_.isEmpty()) {
              if (accountsBuilder_.isEmpty()) {
                accountsBuilder_.dispose();
                accountsBuilder_ = null;
                accounts_ = other.accounts_;
                bitField0_ = (bitField0_ & ~0x00000001);
                accountsBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getAccountsFieldBuilder() : null;
              } else {
                accountsBuilder_.addAllMessages(other.accounts_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_AccountDetail> accounts_ =
          java.util.Collections.emptyList();
        private void ensureAccountsIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            accounts_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_AccountDetail>(accounts_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_AccountDetail, org.aion.api.server.pb.Message.t_AccountDetail.Builder, org.aion.api.server.pb.Message.t_AccountDetailOrBuilder> accountsBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_AccountDetail> getAccountsList() {
          if (accountsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(accounts_);
          } else {
            return accountsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public int getAccountsCount() {
          if (accountsBuilder_ == null) {
            return accounts_.size();
          } else {
            return accountsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AccountDetail getAccounts(int index) {
          if (accountsBuilder_ == null) {
            return accounts_.get(index);
          } else {
            return accountsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder setAccounts(
            int index, org.aion.api.server.pb.Message.t_AccountDetail value) {
          if (accountsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureAccountsIsMutable();
            accounts_.set(index, value);
            onChanged();
          } else {
            accountsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder setAccounts(
            int index, org.aion.api.server.pb.Message.t_AccountDetail.Builder builderForValue) {
          if (accountsBuilder_ == null) {
            ensureAccountsIsMutable();
            accounts_.set(index, builderForValue.build());
            onChanged();
          } else {
            accountsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder addAccounts(org.aion.api.server.pb.Message.t_AccountDetail value) {
          if (accountsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureAccountsIsMutable();
            accounts_.add(value);
            onChanged();
          } else {
            accountsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder addAccounts(
            int index, org.aion.api.server.pb.Message.t_AccountDetail value) {
          if (accountsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureAccountsIsMutable();
            accounts_.add(index, value);
            onChanged();
          } else {
            accountsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder addAccounts(
            org.aion.api.server.pb.Message.t_AccountDetail.Builder builderForValue) {
          if (accountsBuilder_ == null) {
            ensureAccountsIsMutable();
            accounts_.add(builderForValue.build());
            onChanged();
          } else {
            accountsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder addAccounts(
            int index, org.aion.api.server.pb.Message.t_AccountDetail.Builder builderForValue) {
          if (accountsBuilder_ == null) {
            ensureAccountsIsMutable();
            accounts_.add(index, builderForValue.build());
            onChanged();
          } else {
            accountsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder addAllAccounts(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_AccountDetail> values) {
          if (accountsBuilder_ == null) {
            ensureAccountsIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, accounts_);
            onChanged();
          } else {
            accountsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder clearAccounts() {
          if (accountsBuilder_ == null) {
            accounts_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            accountsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public Builder removeAccounts(int index) {
          if (accountsBuilder_ == null) {
            ensureAccountsIsMutable();
            accounts_.remove(index);
            onChanged();
          } else {
            accountsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AccountDetail.Builder getAccountsBuilder(
            int index) {
          return getAccountsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AccountDetailOrBuilder getAccountsOrBuilder(
            int index) {
          if (accountsBuilder_ == null) {
            return accounts_.get(index);  } else {
            return accountsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_AccountDetailOrBuilder> 
             getAccountsOrBuilderList() {
          if (accountsBuilder_ != null) {
            return accountsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(accounts_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AccountDetail.Builder addAccountsBuilder() {
          return getAccountsFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_AccountDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_AccountDetail.Builder addAccountsBuilder(
            int index) {
          return getAccountsFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_AccountDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_AccountDetail accounts = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_AccountDetail.Builder> 
             getAccountsBuilderList() {
          return getAccountsFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_AccountDetail, org.aion.api.server.pb.Message.t_AccountDetail.Builder, org.aion.api.server.pb.Message.t_AccountDetailOrBuilder> 
            getAccountsFieldBuilder() {
          if (accountsBuilder_ == null) {
            accountsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_AccountDetail, org.aion.api.server.pb.Message.t_AccountDetail.Builder, org.aion.api.server.pb.Message.t_AccountDetailOrBuilder>(
                    accounts_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            accounts_ = null;
          }
          return accountsBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getAccountDetailsByAddressList)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getAccountDetailsByAddressList)
      private static final org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getAccountDetailsByAddressList>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getAccountDetailsByAddressList>() {
        public rsp_getAccountDetailsByAddressList parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getAccountDetailsByAddressList(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getAccountDetailsByAddressList> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getAccountDetailsByAddressList> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getAccountDetailsByAddressList getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockSqlByRangeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockSqlByRange)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blkNumberStart = 1;</code>
       */
      long getBlkNumberStart();
  
      /**
       * <code>uint64 blkNumberEnd = 2;</code>
       */
      long getBlkNumberEnd();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockSqlByRange}
     */
    public  static final class req_getBlockSqlByRange extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockSqlByRange)
        req_getBlockSqlByRangeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockSqlByRange.newBuilder() to construct.
      private req_getBlockSqlByRange(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockSqlByRange() {
        blkNumberStart_ = 0L;
        blkNumberEnd_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockSqlByRange(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blkNumberStart_ = input.readUInt64();
                break;
              }
              case 16: {
  
                blkNumberEnd_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockSqlByRange.class, org.aion.api.server.pb.Message.req_getBlockSqlByRange.Builder.class);
      }
  
      public static final int BLKNUMBERSTART_FIELD_NUMBER = 1;
      private long blkNumberStart_;
      /**
       * <code>uint64 blkNumberStart = 1;</code>
       */
      public long getBlkNumberStart() {
        return blkNumberStart_;
      }
  
      public static final int BLKNUMBEREND_FIELD_NUMBER = 2;
      private long blkNumberEnd_;
      /**
       * <code>uint64 blkNumberEnd = 2;</code>
       */
      public long getBlkNumberEnd() {
        return blkNumberEnd_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blkNumberStart_ != 0L) {
          output.writeUInt64(1, blkNumberStart_);
        }
        if (blkNumberEnd_ != 0L) {
          output.writeUInt64(2, blkNumberEnd_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blkNumberStart_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blkNumberStart_);
        }
        if (blkNumberEnd_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blkNumberEnd_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockSqlByRange)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockSqlByRange other = (org.aion.api.server.pb.Message.req_getBlockSqlByRange) obj;
  
        boolean result = true;
        result = result && (getBlkNumberStart()
            == other.getBlkNumberStart());
        result = result && (getBlkNumberEnd()
            == other.getBlkNumberEnd());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLKNUMBERSTART_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlkNumberStart());
        hash = (37 * hash) + BLKNUMBEREND_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlkNumberEnd());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockSqlByRange prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockSqlByRange}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockSqlByRange)
          org.aion.api.server.pb.Message.req_getBlockSqlByRangeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockSqlByRange.class, org.aion.api.server.pb.Message.req_getBlockSqlByRange.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockSqlByRange.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blkNumberStart_ = 0L;
  
          blkNumberEnd_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockSqlByRange getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockSqlByRange.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockSqlByRange build() {
          org.aion.api.server.pb.Message.req_getBlockSqlByRange result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockSqlByRange buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockSqlByRange result = new org.aion.api.server.pb.Message.req_getBlockSqlByRange(this);
          result.blkNumberStart_ = blkNumberStart_;
          result.blkNumberEnd_ = blkNumberEnd_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockSqlByRange) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockSqlByRange)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockSqlByRange other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockSqlByRange.getDefaultInstance()) return this;
          if (other.getBlkNumberStart() != 0L) {
            setBlkNumberStart(other.getBlkNumberStart());
          }
          if (other.getBlkNumberEnd() != 0L) {
            setBlkNumberEnd(other.getBlkNumberEnd());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockSqlByRange parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockSqlByRange) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blkNumberStart_ ;
        /**
         * <code>uint64 blkNumberStart = 1;</code>
         */
        public long getBlkNumberStart() {
          return blkNumberStart_;
        }
        /**
         * <code>uint64 blkNumberStart = 1;</code>
         */
        public Builder setBlkNumberStart(long value) {
          
          blkNumberStart_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blkNumberStart = 1;</code>
         */
        public Builder clearBlkNumberStart() {
          
          blkNumberStart_ = 0L;
          onChanged();
          return this;
        }
  
        private long blkNumberEnd_ ;
        /**
         * <code>uint64 blkNumberEnd = 2;</code>
         */
        public long getBlkNumberEnd() {
          return blkNumberEnd_;
        }
        /**
         * <code>uint64 blkNumberEnd = 2;</code>
         */
        public Builder setBlkNumberEnd(long value) {
          
          blkNumberEnd_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blkNumberEnd = 2;</code>
         */
        public Builder clearBlkNumberEnd() {
          
          blkNumberEnd_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockSqlByRange)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockSqlByRange)
      private static final org.aion.api.server.pb.Message.req_getBlockSqlByRange DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockSqlByRange();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockSqlByRange getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockSqlByRange>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockSqlByRange>() {
        public req_getBlockSqlByRange parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockSqlByRange(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockSqlByRange> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockSqlByRange> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockSqlByRange getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockSqlByRangeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockSqlByRange)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_BlockSql> 
          getBlkSqlList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockSql getBlkSql(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      int getBlkSqlCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_BlockSqlOrBuilder> 
          getBlkSqlOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockSqlOrBuilder getBlkSqlOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockSqlByRange}
     */
    public  static final class rsp_getBlockSqlByRange extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockSqlByRange)
        rsp_getBlockSqlByRangeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockSqlByRange.newBuilder() to construct.
      private rsp_getBlockSqlByRange(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockSqlByRange() {
        blkSql_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockSqlByRange(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  blkSql_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockSql>();
                  mutable_bitField0_ |= 0x00000001;
                }
                blkSql_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_BlockSql.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            blkSql_ = java.util.Collections.unmodifiableList(blkSql_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.class, org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.Builder.class);
      }
  
      public static final int BLKSQL_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_BlockSql> blkSql_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_BlockSql> getBlkSqlList() {
        return blkSql_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockSqlOrBuilder> 
          getBlkSqlOrBuilderList() {
        return blkSql_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      public int getBlkSqlCount() {
        return blkSql_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockSql getBlkSql(int index) {
        return blkSql_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockSqlOrBuilder getBlkSqlOrBuilder(
          int index) {
        return blkSql_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < blkSql_.size(); i++) {
          output.writeMessage(1, blkSql_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < blkSql_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, blkSql_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockSqlByRange)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockSqlByRange other = (org.aion.api.server.pb.Message.rsp_getBlockSqlByRange) obj;
  
        boolean result = true;
        result = result && getBlkSqlList()
            .equals(other.getBlkSqlList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getBlkSqlCount() > 0) {
          hash = (37 * hash) + BLKSQL_FIELD_NUMBER;
          hash = (53 * hash) + getBlkSqlList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockSqlByRange prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockSqlByRange}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockSqlByRange)
          org.aion.api.server.pb.Message.rsp_getBlockSqlByRangeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.class, org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getBlkSqlFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (blkSqlBuilder_ == null) {
            blkSql_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            blkSqlBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockSqlByRange getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockSqlByRange build() {
          org.aion.api.server.pb.Message.rsp_getBlockSqlByRange result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockSqlByRange buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockSqlByRange result = new org.aion.api.server.pb.Message.rsp_getBlockSqlByRange(this);
          int from_bitField0_ = bitField0_;
          if (blkSqlBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              blkSql_ = java.util.Collections.unmodifiableList(blkSql_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.blkSql_ = blkSql_;
          } else {
            result.blkSql_ = blkSqlBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockSqlByRange) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockSqlByRange)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockSqlByRange other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockSqlByRange.getDefaultInstance()) return this;
          if (blkSqlBuilder_ == null) {
            if (!other.blkSql_.isEmpty()) {
              if (blkSql_.isEmpty()) {
                blkSql_ = other.blkSql_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureBlkSqlIsMutable();
                blkSql_.addAll(other.blkSql_);
              }
              onChanged();
            }
          } else {
            if (!other.blkSql_.isEmpty()) {
              if (blkSqlBuilder_.isEmpty()) {
                blkSqlBuilder_.dispose();
                blkSqlBuilder_ = null;
                blkSql_ = other.blkSql_;
                bitField0_ = (bitField0_ & ~0x00000001);
                blkSqlBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getBlkSqlFieldBuilder() : null;
              } else {
                blkSqlBuilder_.addAllMessages(other.blkSql_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockSqlByRange parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockSqlByRange) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_BlockSql> blkSql_ =
          java.util.Collections.emptyList();
        private void ensureBlkSqlIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            blkSql_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockSql>(blkSql_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockSql, org.aion.api.server.pb.Message.t_BlockSql.Builder, org.aion.api.server.pb.Message.t_BlockSqlOrBuilder> blkSqlBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockSql> getBlkSqlList() {
          if (blkSqlBuilder_ == null) {
            return java.util.Collections.unmodifiableList(blkSql_);
          } else {
            return blkSqlBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public int getBlkSqlCount() {
          if (blkSqlBuilder_ == null) {
            return blkSql_.size();
          } else {
            return blkSqlBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockSql getBlkSql(int index) {
          if (blkSqlBuilder_ == null) {
            return blkSql_.get(index);
          } else {
            return blkSqlBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder setBlkSql(
            int index, org.aion.api.server.pb.Message.t_BlockSql value) {
          if (blkSqlBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkSqlIsMutable();
            blkSql_.set(index, value);
            onChanged();
          } else {
            blkSqlBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder setBlkSql(
            int index, org.aion.api.server.pb.Message.t_BlockSql.Builder builderForValue) {
          if (blkSqlBuilder_ == null) {
            ensureBlkSqlIsMutable();
            blkSql_.set(index, builderForValue.build());
            onChanged();
          } else {
            blkSqlBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder addBlkSql(org.aion.api.server.pb.Message.t_BlockSql value) {
          if (blkSqlBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkSqlIsMutable();
            blkSql_.add(value);
            onChanged();
          } else {
            blkSqlBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder addBlkSql(
            int index, org.aion.api.server.pb.Message.t_BlockSql value) {
          if (blkSqlBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkSqlIsMutable();
            blkSql_.add(index, value);
            onChanged();
          } else {
            blkSqlBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder addBlkSql(
            org.aion.api.server.pb.Message.t_BlockSql.Builder builderForValue) {
          if (blkSqlBuilder_ == null) {
            ensureBlkSqlIsMutable();
            blkSql_.add(builderForValue.build());
            onChanged();
          } else {
            blkSqlBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder addBlkSql(
            int index, org.aion.api.server.pb.Message.t_BlockSql.Builder builderForValue) {
          if (blkSqlBuilder_ == null) {
            ensureBlkSqlIsMutable();
            blkSql_.add(index, builderForValue.build());
            onChanged();
          } else {
            blkSqlBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder addAllBlkSql(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_BlockSql> values) {
          if (blkSqlBuilder_ == null) {
            ensureBlkSqlIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, blkSql_);
            onChanged();
          } else {
            blkSqlBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder clearBlkSql() {
          if (blkSqlBuilder_ == null) {
            blkSql_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            blkSqlBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public Builder removeBlkSql(int index) {
          if (blkSqlBuilder_ == null) {
            ensureBlkSqlIsMutable();
            blkSql_.remove(index);
            onChanged();
          } else {
            blkSqlBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockSql.Builder getBlkSqlBuilder(
            int index) {
          return getBlkSqlFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockSqlOrBuilder getBlkSqlOrBuilder(
            int index) {
          if (blkSqlBuilder_ == null) {
            return blkSql_.get(index);  } else {
            return blkSqlBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockSqlOrBuilder> 
             getBlkSqlOrBuilderList() {
          if (blkSqlBuilder_ != null) {
            return blkSqlBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(blkSql_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockSql.Builder addBlkSqlBuilder() {
          return getBlkSqlFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_BlockSql.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockSql.Builder addBlkSqlBuilder(
            int index) {
          return getBlkSqlFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_BlockSql.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockSql blkSql = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockSql.Builder> 
             getBlkSqlBuilderList() {
          return getBlkSqlFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockSql, org.aion.api.server.pb.Message.t_BlockSql.Builder, org.aion.api.server.pb.Message.t_BlockSqlOrBuilder> 
            getBlkSqlFieldBuilder() {
          if (blkSqlBuilder_ == null) {
            blkSqlBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_BlockSql, org.aion.api.server.pb.Message.t_BlockSql.Builder, org.aion.api.server.pb.Message.t_BlockSqlOrBuilder>(
                    blkSql_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            blkSql_ = null;
          }
          return blkSqlBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockSqlByRange)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockSqlByRange)
      private static final org.aion.api.server.pb.Message.rsp_getBlockSqlByRange DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockSqlByRange();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockSqlByRange getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockSqlByRange>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockSqlByRange>() {
        public rsp_getBlockSqlByRange parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockSqlByRange(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockSqlByRange> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockSqlByRange> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockSqlByRange getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockDetailsByRangeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockDetailsByRange)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blkNumberStart = 1;</code>
       */
      long getBlkNumberStart();
  
      /**
       * <code>uint64 blkNumberEnd = 2;</code>
       */
      long getBlkNumberEnd();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByRange}
     */
    public  static final class req_getBlockDetailsByRange extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockDetailsByRange)
        req_getBlockDetailsByRangeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockDetailsByRange.newBuilder() to construct.
      private req_getBlockDetailsByRange(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockDetailsByRange() {
        blkNumberStart_ = 0L;
        blkNumberEnd_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockDetailsByRange(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blkNumberStart_ = input.readUInt64();
                break;
              }
              case 16: {
  
                blkNumberEnd_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockDetailsByRange.class, org.aion.api.server.pb.Message.req_getBlockDetailsByRange.Builder.class);
      }
  
      public static final int BLKNUMBERSTART_FIELD_NUMBER = 1;
      private long blkNumberStart_;
      /**
       * <code>uint64 blkNumberStart = 1;</code>
       */
      public long getBlkNumberStart() {
        return blkNumberStart_;
      }
  
      public static final int BLKNUMBEREND_FIELD_NUMBER = 2;
      private long blkNumberEnd_;
      /**
       * <code>uint64 blkNumberEnd = 2;</code>
       */
      public long getBlkNumberEnd() {
        return blkNumberEnd_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blkNumberStart_ != 0L) {
          output.writeUInt64(1, blkNumberStart_);
        }
        if (blkNumberEnd_ != 0L) {
          output.writeUInt64(2, blkNumberEnd_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blkNumberStart_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blkNumberStart_);
        }
        if (blkNumberEnd_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(2, blkNumberEnd_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByRange)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockDetailsByRange other = (org.aion.api.server.pb.Message.req_getBlockDetailsByRange) obj;
  
        boolean result = true;
        result = result && (getBlkNumberStart()
            == other.getBlkNumberStart());
        result = result && (getBlkNumberEnd()
            == other.getBlkNumberEnd());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLKNUMBERSTART_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlkNumberStart());
        hash = (37 * hash) + BLKNUMBEREND_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlkNumberEnd());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockDetailsByRange prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByRange}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockDetailsByRange)
          org.aion.api.server.pb.Message.req_getBlockDetailsByRangeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockDetailsByRange.class, org.aion.api.server.pb.Message.req_getBlockDetailsByRange.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockDetailsByRange.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blkNumberStart_ = 0L;
  
          blkNumberEnd_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByRange getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockDetailsByRange.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByRange build() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByRange result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByRange buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByRange result = new org.aion.api.server.pb.Message.req_getBlockDetailsByRange(this);
          result.blkNumberStart_ = blkNumberStart_;
          result.blkNumberEnd_ = blkNumberEnd_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByRange) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockDetailsByRange)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockDetailsByRange other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockDetailsByRange.getDefaultInstance()) return this;
          if (other.getBlkNumberStart() != 0L) {
            setBlkNumberStart(other.getBlkNumberStart());
          }
          if (other.getBlkNumberEnd() != 0L) {
            setBlkNumberEnd(other.getBlkNumberEnd());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockDetailsByRange parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockDetailsByRange) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blkNumberStart_ ;
        /**
         * <code>uint64 blkNumberStart = 1;</code>
         */
        public long getBlkNumberStart() {
          return blkNumberStart_;
        }
        /**
         * <code>uint64 blkNumberStart = 1;</code>
         */
        public Builder setBlkNumberStart(long value) {
          
          blkNumberStart_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blkNumberStart = 1;</code>
         */
        public Builder clearBlkNumberStart() {
          
          blkNumberStart_ = 0L;
          onChanged();
          return this;
        }
  
        private long blkNumberEnd_ ;
        /**
         * <code>uint64 blkNumberEnd = 2;</code>
         */
        public long getBlkNumberEnd() {
          return blkNumberEnd_;
        }
        /**
         * <code>uint64 blkNumberEnd = 2;</code>
         */
        public Builder setBlkNumberEnd(long value) {
          
          blkNumberEnd_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blkNumberEnd = 2;</code>
         */
        public Builder clearBlkNumberEnd() {
          
          blkNumberEnd_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockDetailsByRange)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockDetailsByRange)
      private static final org.aion.api.server.pb.Message.req_getBlockDetailsByRange DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockDetailsByRange();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByRange getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockDetailsByRange>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockDetailsByRange>() {
        public req_getBlockDetailsByRange parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockDetailsByRange(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockDetailsByRange> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockDetailsByRange> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockDetailsByRange getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockDetailsByRangeOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockDetailsByRange)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> 
          getBlkDetailsList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index);
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      int getBlkDetailsCount();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
          getBlkDetailsOrBuilderList();
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
          int index);
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByRange}
     */
    public  static final class rsp_getBlockDetailsByRange extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockDetailsByRange)
        rsp_getBlockDetailsByRangeOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockDetailsByRange.newBuilder() to construct.
      private rsp_getBlockDetailsByRange(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockDetailsByRange() {
        blkDetails_ = java.util.Collections.emptyList();
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockDetailsByRange(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                if (!((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
                  blkDetails_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockDetail>();
                  mutable_bitField0_ |= 0x00000001;
                }
                blkDetails_.add(
                    input.readMessage(org.aion.api.server.pb.Message.t_BlockDetail.parser(), extensionRegistry));
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          if (((mutable_bitField0_ & 0x00000001) == 0x00000001)) {
            blkDetails_ = java.util.Collections.unmodifiableList(blkDetails_);
          }
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.Builder.class);
      }
  
      public static final int BLKDETAILS_FIELD_NUMBER = 1;
      private java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> blkDetails_;
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> getBlkDetailsList() {
        return blkDetails_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
          getBlkDetailsOrBuilderList() {
        return blkDetails_;
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public int getBlkDetailsCount() {
        return blkDetails_.size();
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index) {
        return blkDetails_.get(index);
      }
      /**
       * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
          int index) {
        return blkDetails_.get(index);
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        for (int i = 0; i < blkDetails_.size(); i++) {
          output.writeMessage(1, blkDetails_.get(i));
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        for (int i = 0; i < blkDetails_.size(); i++) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, blkDetails_.get(i));
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange other = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange) obj;
  
        boolean result = true;
        result = result && getBlkDetailsList()
            .equals(other.getBlkDetailsList());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (getBlkDetailsCount() > 0) {
          hash = (37 * hash) + BLKDETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getBlkDetailsList().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByRange}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockDetailsByRange)
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByRangeOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
            getBlkDetailsFieldBuilder();
          }
        }
        public Builder clear() {
          super.clear();
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
          } else {
            blkDetailsBuilder_.clear();
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange build() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange result = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange(this);
          int from_bitField0_ = bitField0_;
          if (blkDetailsBuilder_ == null) {
            if (((bitField0_ & 0x00000001) == 0x00000001)) {
              blkDetails_ = java.util.Collections.unmodifiableList(blkDetails_);
              bitField0_ = (bitField0_ & ~0x00000001);
            }
            result.blkDetails_ = blkDetails_;
          } else {
            result.blkDetails_ = blkDetailsBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange.getDefaultInstance()) return this;
          if (blkDetailsBuilder_ == null) {
            if (!other.blkDetails_.isEmpty()) {
              if (blkDetails_.isEmpty()) {
                blkDetails_ = other.blkDetails_;
                bitField0_ = (bitField0_ & ~0x00000001);
              } else {
                ensureBlkDetailsIsMutable();
                blkDetails_.addAll(other.blkDetails_);
              }
              onChanged();
            }
          } else {
            if (!other.blkDetails_.isEmpty()) {
              if (blkDetailsBuilder_.isEmpty()) {
                blkDetailsBuilder_.dispose();
                blkDetailsBuilder_ = null;
                blkDetails_ = other.blkDetails_;
                bitField0_ = (bitField0_ & ~0x00000001);
                blkDetailsBuilder_ = 
                  com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                     getBlkDetailsFieldBuilder() : null;
              } else {
                blkDetailsBuilder_.addAllMessages(other.blkDetails_);
              }
            }
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
        private int bitField0_;
  
        private java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> blkDetails_ =
          java.util.Collections.emptyList();
        private void ensureBlkDetailsIsMutable() {
          if (!((bitField0_ & 0x00000001) == 0x00000001)) {
            blkDetails_ = new java.util.ArrayList<org.aion.api.server.pb.Message.t_BlockDetail>(blkDetails_);
            bitField0_ |= 0x00000001;
           }
        }
  
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> blkDetailsBuilder_;
  
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail> getBlkDetailsList() {
          if (blkDetailsBuilder_ == null) {
            return java.util.Collections.unmodifiableList(blkDetails_);
          } else {
            return blkDetailsBuilder_.getMessageList();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public int getBlkDetailsCount() {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.size();
          } else {
            return blkDetailsBuilder_.getCount();
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails(int index) {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.get(index);
          } else {
            return blkDetailsBuilder_.getMessage(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.set(index, value);
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.set(index, builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.add(value);
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            ensureBlkDetailsIsMutable();
            blkDetails_.add(index, value);
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(index, value);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.add(builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addBlkDetails(
            int index, org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.add(index, builderForValue.build());
            onChanged();
          } else {
            blkDetailsBuilder_.addMessage(index, builderForValue.build());
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder addAllBlkDetails(
            java.lang.Iterable<? extends org.aion.api.server.pb.Message.t_BlockDetail> values) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            com.google.protobuf.AbstractMessageLite.Builder.addAll(
                values, blkDetails_);
            onChanged();
          } else {
            blkDetailsBuilder_.addAllMessages(values);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder clearBlkDetails() {
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = java.util.Collections.emptyList();
            bitField0_ = (bitField0_ & ~0x00000001);
            onChanged();
          } else {
            blkDetailsBuilder_.clear();
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder removeBlkDetails(int index) {
          if (blkDetailsBuilder_ == null) {
            ensureBlkDetailsIsMutable();
            blkDetails_.remove(index);
            onChanged();
          } else {
            blkDetailsBuilder_.remove(index);
          }
          return this;
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder getBlkDetailsBuilder(
            int index) {
          return getBlkDetailsFieldBuilder().getBuilder(index);
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder(
            int index) {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_.get(index);  } else {
            return blkDetailsBuilder_.getMessageOrBuilder(index);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<? extends org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
             getBlkDetailsOrBuilderList() {
          if (blkDetailsBuilder_ != null) {
            return blkDetailsBuilder_.getMessageOrBuilderList();
          } else {
            return java.util.Collections.unmodifiableList(blkDetails_);
          }
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder addBlkDetailsBuilder() {
          return getBlkDetailsFieldBuilder().addBuilder(
              org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder addBlkDetailsBuilder(
            int index) {
          return getBlkDetailsFieldBuilder().addBuilder(
              index, org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance());
        }
        /**
         * <code>repeated .org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public java.util.List<org.aion.api.server.pb.Message.t_BlockDetail.Builder> 
             getBlkDetailsBuilderList() {
          return getBlkDetailsFieldBuilder().getBuilderList();
        }
        private com.google.protobuf.RepeatedFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
            getBlkDetailsFieldBuilder() {
          if (blkDetailsBuilder_ == null) {
            blkDetailsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
                org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder>(
                    blkDetails_,
                    ((bitField0_ & 0x00000001) == 0x00000001),
                    getParentForChildren(),
                    isClean());
            blkDetails_ = null;
          }
          return blkDetailsBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockDetailsByRange)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockDetailsByRange)
      private static final org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockDetailsByRange>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockDetailsByRange>() {
        public rsp_getBlockDetailsByRange parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockDetailsByRange(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockDetailsByRange> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockDetailsByRange> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockDetailsByRange getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getNonceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getNonce)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes address = 1;</code>
       */
      com.google.protobuf.ByteString getAddress();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getNonce}
     */
    public  static final class req_getNonce extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getNonce)
        req_getNonceOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getNonce.newBuilder() to construct.
      private req_getNonce(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getNonce() {
        address_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getNonce(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                address_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getNonce_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getNonce_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getNonce.class, org.aion.api.server.pb.Message.req_getNonce.Builder.class);
      }
  
      public static final int ADDRESS_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString address_;
      /**
       * <code>bytes address = 1;</code>
       */
      public com.google.protobuf.ByteString getAddress() {
        return address_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!address_.isEmpty()) {
          output.writeBytes(1, address_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!address_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, address_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getNonce)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getNonce other = (org.aion.api.server.pb.Message.req_getNonce) obj;
  
        boolean result = true;
        result = result && getAddress()
            .equals(other.getAddress());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ADDRESS_FIELD_NUMBER;
        hash = (53 * hash) + getAddress().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getNonce parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getNonce prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getNonce}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getNonce)
          org.aion.api.server.pb.Message.req_getNonceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getNonce_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getNonce_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getNonce.class, org.aion.api.server.pb.Message.req_getNonce.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getNonce.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          address_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getNonce_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getNonce getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getNonce.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getNonce build() {
          org.aion.api.server.pb.Message.req_getNonce result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getNonce buildPartial() {
          org.aion.api.server.pb.Message.req_getNonce result = new org.aion.api.server.pb.Message.req_getNonce(this);
          result.address_ = address_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getNonce) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getNonce)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getNonce other) {
          if (other == org.aion.api.server.pb.Message.req_getNonce.getDefaultInstance()) return this;
          if (other.getAddress() != com.google.protobuf.ByteString.EMPTY) {
            setAddress(other.getAddress());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getNonce parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getNonce) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString address_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes address = 1;</code>
         */
        public com.google.protobuf.ByteString getAddress() {
          return address_;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder setAddress(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          address_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes address = 1;</code>
         */
        public Builder clearAddress() {
          
          address_ = getDefaultInstance().getAddress();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getNonce)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getNonce)
      private static final org.aion.api.server.pb.Message.req_getNonce DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getNonce();
      }
  
      public static org.aion.api.server.pb.Message.req_getNonce getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getNonce>
          PARSER = new com.google.protobuf.AbstractParser<req_getNonce>() {
        public req_getNonce parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getNonce(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getNonce> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getNonce> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getNonce getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getNonceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getNonce)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes nonce = 1;</code>
       */
      com.google.protobuf.ByteString getNonce();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getNonce}
     */
    public  static final class rsp_getNonce extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getNonce)
        rsp_getNonceOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getNonce.newBuilder() to construct.
      private rsp_getNonce(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getNonce() {
        nonce_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getNonce(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                nonce_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNonce_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNonce_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getNonce.class, org.aion.api.server.pb.Message.rsp_getNonce.Builder.class);
      }
  
      public static final int NONCE_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString nonce_;
      /**
       * <code>bytes nonce = 1;</code>
       */
      public com.google.protobuf.ByteString getNonce() {
        return nonce_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!nonce_.isEmpty()) {
          output.writeBytes(1, nonce_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!nonce_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, nonce_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getNonce)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getNonce other = (org.aion.api.server.pb.Message.rsp_getNonce) obj;
  
        boolean result = true;
        result = result && getNonce()
            .equals(other.getNonce());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + NONCE_FIELD_NUMBER;
        hash = (53 * hash) + getNonce().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getNonce parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getNonce prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getNonce}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getNonce)
          org.aion.api.server.pb.Message.rsp_getNonceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNonce_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNonce_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getNonce.class, org.aion.api.server.pb.Message.rsp_getNonce.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getNonce.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          nonce_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNonce_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getNonce getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getNonce.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getNonce build() {
          org.aion.api.server.pb.Message.rsp_getNonce result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getNonce buildPartial() {
          org.aion.api.server.pb.Message.rsp_getNonce result = new org.aion.api.server.pb.Message.rsp_getNonce(this);
          result.nonce_ = nonce_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getNonce) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getNonce)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getNonce other) {
          if (other == org.aion.api.server.pb.Message.rsp_getNonce.getDefaultInstance()) return this;
          if (other.getNonce() != com.google.protobuf.ByteString.EMPTY) {
            setNonce(other.getNonce());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getNonce parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getNonce) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString nonce_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes nonce = 1;</code>
         */
        public com.google.protobuf.ByteString getNonce() {
          return nonce_;
        }
        /**
         * <code>bytes nonce = 1;</code>
         */
        public Builder setNonce(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          nonce_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes nonce = 1;</code>
         */
        public Builder clearNonce() {
          
          nonce_ = getDefaultInstance().getNonce();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getNonce)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getNonce)
      private static final org.aion.api.server.pb.Message.rsp_getNonce DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getNonce();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getNonce getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getNonce>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getNonce>() {
        public rsp_getNonce parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getNonce(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getNonce> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getNonce> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getNonce getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getNrgPriceOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getNrgPrice)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 nrgPrice = 1;</code>
       */
      long getNrgPrice();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getNrgPrice}
     */
    public  static final class rsp_getNrgPrice extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getNrgPrice)
        rsp_getNrgPriceOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getNrgPrice.newBuilder() to construct.
      private rsp_getNrgPrice(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getNrgPrice() {
        nrgPrice_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getNrgPrice(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                nrgPrice_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNrgPrice_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNrgPrice_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getNrgPrice.class, org.aion.api.server.pb.Message.rsp_getNrgPrice.Builder.class);
      }
  
      public static final int NRGPRICE_FIELD_NUMBER = 1;
      private long nrgPrice_;
      /**
       * <code>uint64 nrgPrice = 1;</code>
       */
      public long getNrgPrice() {
        return nrgPrice_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (nrgPrice_ != 0L) {
          output.writeUInt64(1, nrgPrice_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (nrgPrice_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, nrgPrice_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getNrgPrice)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getNrgPrice other = (org.aion.api.server.pb.Message.rsp_getNrgPrice) obj;
  
        boolean result = true;
        result = result && (getNrgPrice()
            == other.getNrgPrice());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + NRGPRICE_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getNrgPrice());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getNrgPrice prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getNrgPrice}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getNrgPrice)
          org.aion.api.server.pb.Message.rsp_getNrgPriceOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNrgPrice_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNrgPrice_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getNrgPrice.class, org.aion.api.server.pb.Message.rsp_getNrgPrice.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getNrgPrice.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          nrgPrice_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getNrgPrice_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getNrgPrice getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getNrgPrice.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getNrgPrice build() {
          org.aion.api.server.pb.Message.rsp_getNrgPrice result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getNrgPrice buildPartial() {
          org.aion.api.server.pb.Message.rsp_getNrgPrice result = new org.aion.api.server.pb.Message.rsp_getNrgPrice(this);
          result.nrgPrice_ = nrgPrice_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getNrgPrice) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getNrgPrice)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getNrgPrice other) {
          if (other == org.aion.api.server.pb.Message.rsp_getNrgPrice.getDefaultInstance()) return this;
          if (other.getNrgPrice() != 0L) {
            setNrgPrice(other.getNrgPrice());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getNrgPrice parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getNrgPrice) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long nrgPrice_ ;
        /**
         * <code>uint64 nrgPrice = 1;</code>
         */
        public long getNrgPrice() {
          return nrgPrice_;
        }
        /**
         * <code>uint64 nrgPrice = 1;</code>
         */
        public Builder setNrgPrice(long value) {
          
          nrgPrice_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 nrgPrice = 1;</code>
         */
        public Builder clearNrgPrice() {
          
          nrgPrice_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getNrgPrice)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getNrgPrice)
      private static final org.aion.api.server.pb.Message.rsp_getNrgPrice DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getNrgPrice();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getNrgPrice getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getNrgPrice>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getNrgPrice>() {
        public rsp_getNrgPrice parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getNrgPrice(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getNrgPrice> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getNrgPrice> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getNrgPrice getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockDetailsByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockDetailsByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes blockHash = 1;</code>
       */
      com.google.protobuf.ByteString getBlockHash();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByHash}
     */
    public  static final class req_getBlockDetailsByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockDetailsByHash)
        req_getBlockDetailsByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockDetailsByHash.newBuilder() to construct.
      private req_getBlockDetailsByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockDetailsByHash() {
        blockHash_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockDetailsByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                blockHash_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockDetailsByHash.class, org.aion.api.server.pb.Message.req_getBlockDetailsByHash.Builder.class);
      }
  
      public static final int BLOCKHASH_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString blockHash_;
      /**
       * <code>bytes blockHash = 1;</code>
       */
      public com.google.protobuf.ByteString getBlockHash() {
        return blockHash_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!blockHash_.isEmpty()) {
          output.writeBytes(1, blockHash_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!blockHash_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, blockHash_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockDetailsByHash other = (org.aion.api.server.pb.Message.req_getBlockDetailsByHash) obj;
  
        boolean result = true;
        result = result && getBlockHash()
            .equals(other.getBlockHash());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKHASH_FIELD_NUMBER;
        hash = (53 * hash) + getBlockHash().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockDetailsByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockDetailsByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockDetailsByHash)
          org.aion.api.server.pb.Message.req_getBlockDetailsByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockDetailsByHash.class, org.aion.api.server.pb.Message.req_getBlockDetailsByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockDetailsByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockHash_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockDetailsByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByHash build() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockDetailsByHash buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockDetailsByHash result = new org.aion.api.server.pb.Message.req_getBlockDetailsByHash(this);
          result.blockHash_ = blockHash_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockDetailsByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockDetailsByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockDetailsByHash other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockDetailsByHash.getDefaultInstance()) return this;
          if (other.getBlockHash() != com.google.protobuf.ByteString.EMPTY) {
            setBlockHash(other.getBlockHash());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockDetailsByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockDetailsByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString blockHash_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public com.google.protobuf.ByteString getBlockHash() {
          return blockHash_;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder setBlockHash(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          blockHash_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes blockHash = 1;</code>
         */
        public Builder clearBlockHash() {
          
          blockHash_ = getDefaultInstance().getBlockHash();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockDetailsByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockDetailsByHash)
      private static final org.aion.api.server.pb.Message.req_getBlockDetailsByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockDetailsByHash();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockDetailsByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockDetailsByHash>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockDetailsByHash>() {
        public req_getBlockDetailsByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockDetailsByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockDetailsByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockDetailsByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockDetailsByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockDetailsByHashOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockDetailsByHash)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      boolean hasBlkDetails();
      /**
       * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails();
      /**
       * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByHash}
     */
    public  static final class rsp_getBlockDetailsByHash extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockDetailsByHash)
        rsp_getBlockDetailsByHashOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockDetailsByHash.newBuilder() to construct.
      private rsp_getBlockDetailsByHash(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockDetailsByHash() {
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockDetailsByHash(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
                org.aion.api.server.pb.Message.t_BlockDetail.Builder subBuilder = null;
                if (blkDetails_ != null) {
                  subBuilder = blkDetails_.toBuilder();
                }
                blkDetails_ = input.readMessage(org.aion.api.server.pb.Message.t_BlockDetail.parser(), extensionRegistry);
                if (subBuilder != null) {
                  subBuilder.mergeFrom(blkDetails_);
                  blkDetails_ = subBuilder.buildPartial();
                }
  
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.Builder.class);
      }
  
      public static final int BLKDETAILS_FIELD_NUMBER = 1;
      private org.aion.api.server.pb.Message.t_BlockDetail blkDetails_;
      /**
       * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public boolean hasBlkDetails() {
        return blkDetails_ != null;
      }
      /**
       * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails() {
        return blkDetails_ == null ? org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance() : blkDetails_;
      }
      /**
       * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
       */
      public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder() {
        return getBlkDetails();
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blkDetails_ != null) {
          output.writeMessage(1, getBlkDetails());
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blkDetails_ != null) {
          size += com.google.protobuf.CodedOutputStream
            .computeMessageSize(1, getBlkDetails());
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash other = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash) obj;
  
        boolean result = true;
        result = result && (hasBlkDetails() == other.hasBlkDetails());
        if (hasBlkDetails()) {
          result = result && getBlkDetails()
              .equals(other.getBlkDetails());
        }
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        if (hasBlkDetails()) {
          hash = (37 * hash) + BLKDETAILS_FIELD_NUMBER;
          hash = (53 * hash) + getBlkDetails().hashCode();
        }
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockDetailsByHash}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockDetailsByHash)
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByHashOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.class, org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = null;
          } else {
            blkDetails_ = null;
            blkDetailsBuilder_ = null;
          }
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash build() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash result = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash(this);
          if (blkDetailsBuilder_ == null) {
            result.blkDetails_ = blkDetails_;
          } else {
            result.blkDetails_ = blkDetailsBuilder_.build();
          }
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash.getDefaultInstance()) return this;
          if (other.hasBlkDetails()) {
            mergeBlkDetails(other.getBlkDetails());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private org.aion.api.server.pb.Message.t_BlockDetail blkDetails_ = null;
        private com.google.protobuf.SingleFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> blkDetailsBuilder_;
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public boolean hasBlkDetails() {
          return blkDetailsBuilder_ != null || blkDetails_ != null;
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail getBlkDetails() {
          if (blkDetailsBuilder_ == null) {
            return blkDetails_ == null ? org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance() : blkDetails_;
          } else {
            return blkDetailsBuilder_.getMessage();
          }
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (value == null) {
              throw new NullPointerException();
            }
            blkDetails_ = value;
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(value);
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder setBlkDetails(
            org.aion.api.server.pb.Message.t_BlockDetail.Builder builderForValue) {
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = builderForValue.build();
            onChanged();
          } else {
            blkDetailsBuilder_.setMessage(builderForValue.build());
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder mergeBlkDetails(org.aion.api.server.pb.Message.t_BlockDetail value) {
          if (blkDetailsBuilder_ == null) {
            if (blkDetails_ != null) {
              blkDetails_ =
                org.aion.api.server.pb.Message.t_BlockDetail.newBuilder(blkDetails_).mergeFrom(value).buildPartial();
            } else {
              blkDetails_ = value;
            }
            onChanged();
          } else {
            blkDetailsBuilder_.mergeFrom(value);
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public Builder clearBlkDetails() {
          if (blkDetailsBuilder_ == null) {
            blkDetails_ = null;
            onChanged();
          } else {
            blkDetails_ = null;
            blkDetailsBuilder_ = null;
          }
  
          return this;
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetail.Builder getBlkDetailsBuilder() {
          
          onChanged();
          return getBlkDetailsFieldBuilder().getBuilder();
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        public org.aion.api.server.pb.Message.t_BlockDetailOrBuilder getBlkDetailsOrBuilder() {
          if (blkDetailsBuilder_ != null) {
            return blkDetailsBuilder_.getMessageOrBuilder();
          } else {
            return blkDetails_ == null ?
                org.aion.api.server.pb.Message.t_BlockDetail.getDefaultInstance() : blkDetails_;
          }
        }
        /**
         * <code>.org.aion.api.server.pb.t_BlockDetail blkDetails = 1;</code>
         */
        private com.google.protobuf.SingleFieldBuilderV3<
            org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder> 
            getBlkDetailsFieldBuilder() {
          if (blkDetailsBuilder_ == null) {
            blkDetailsBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
                org.aion.api.server.pb.Message.t_BlockDetail, org.aion.api.server.pb.Message.t_BlockDetail.Builder, org.aion.api.server.pb.Message.t_BlockDetailOrBuilder>(
                    getBlkDetails(),
                    getParentForChildren(),
                    isClean());
            blkDetails_ = null;
          }
          return blkDetailsBuilder_;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockDetailsByHash)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockDetailsByHash)
      private static final org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockDetailsByHash>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockDetailsByHash>() {
        public rsp_getBlockDetailsByHash parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockDetailsByHash(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockDetailsByHash> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockDetailsByHash> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockDetailsByHash getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_listeningOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_listening)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bool isListening = 1;</code>
       */
      boolean getIsListening();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_listening}
     */
    public  static final class rsp_listening extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_listening)
        rsp_listeningOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_listening.newBuilder() to construct.
      private rsp_listening(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_listening() {
        isListening_ = false;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_listening(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                isListening_ = input.readBool();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_listening_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_listening_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_listening.class, org.aion.api.server.pb.Message.rsp_listening.Builder.class);
      }
  
      public static final int ISLISTENING_FIELD_NUMBER = 1;
      private boolean isListening_;
      /**
       * <code>bool isListening = 1;</code>
       */
      public boolean getIsListening() {
        return isListening_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (isListening_ != false) {
          output.writeBool(1, isListening_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (isListening_ != false) {
          size += com.google.protobuf.CodedOutputStream
            .computeBoolSize(1, isListening_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_listening)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_listening other = (org.aion.api.server.pb.Message.rsp_listening) obj;
  
        boolean result = true;
        result = result && (getIsListening()
            == other.getIsListening());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + ISLISTENING_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getIsListening());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_listening parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_listening prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_listening}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_listening)
          org.aion.api.server.pb.Message.rsp_listeningOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_listening_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_listening_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_listening.class, org.aion.api.server.pb.Message.rsp_listening.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_listening.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          isListening_ = false;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_listening_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_listening getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_listening.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_listening build() {
          org.aion.api.server.pb.Message.rsp_listening result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_listening buildPartial() {
          org.aion.api.server.pb.Message.rsp_listening result = new org.aion.api.server.pb.Message.rsp_listening(this);
          result.isListening_ = isListening_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_listening) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_listening)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_listening other) {
          if (other == org.aion.api.server.pb.Message.rsp_listening.getDefaultInstance()) return this;
          if (other.getIsListening() != false) {
            setIsListening(other.getIsListening());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_listening parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_listening) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private boolean isListening_ ;
        /**
         * <code>bool isListening = 1;</code>
         */
        public boolean getIsListening() {
          return isListening_;
        }
        /**
         * <code>bool isListening = 1;</code>
         */
        public Builder setIsListening(boolean value) {
          
          isListening_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bool isListening = 1;</code>
         */
        public Builder clearIsListening() {
          
          isListening_ = false;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_listening)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_listening)
      private static final org.aion.api.server.pb.Message.rsp_listening DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_listening();
      }
  
      public static org.aion.api.server.pb.Message.rsp_listening getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_listening>
          PARSER = new com.google.protobuf.AbstractParser<rsp_listening>() {
        public rsp_listening parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_listening(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_listening> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_listening> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_listening getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_peerCountOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_peerCount)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint32 peers = 1;</code>
       */
      int getPeers();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_peerCount}
     */
    public  static final class rsp_peerCount extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_peerCount)
        rsp_peerCountOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_peerCount.newBuilder() to construct.
      private rsp_peerCount(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_peerCount() {
        peers_ = 0;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_peerCount(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                peers_ = input.readUInt32();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_peerCount_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_peerCount_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_peerCount.class, org.aion.api.server.pb.Message.rsp_peerCount.Builder.class);
      }
  
      public static final int PEERS_FIELD_NUMBER = 1;
      private int peers_;
      /**
       * <code>uint32 peers = 1;</code>
       */
      public int getPeers() {
        return peers_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (peers_ != 0) {
          output.writeUInt32(1, peers_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (peers_ != 0) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt32Size(1, peers_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_peerCount)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_peerCount other = (org.aion.api.server.pb.Message.rsp_peerCount) obj;
  
        boolean result = true;
        result = result && (getPeers()
            == other.getPeers());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + PEERS_FIELD_NUMBER;
        hash = (53 * hash) + getPeers();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_peerCount parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_peerCount prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_peerCount}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_peerCount)
          org.aion.api.server.pb.Message.rsp_peerCountOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_peerCount_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_peerCount_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_peerCount.class, org.aion.api.server.pb.Message.rsp_peerCount.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_peerCount.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          peers_ = 0;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_peerCount_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_peerCount getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_peerCount.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_peerCount build() {
          org.aion.api.server.pb.Message.rsp_peerCount result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_peerCount buildPartial() {
          org.aion.api.server.pb.Message.rsp_peerCount result = new org.aion.api.server.pb.Message.rsp_peerCount(this);
          result.peers_ = peers_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_peerCount) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_peerCount)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_peerCount other) {
          if (other == org.aion.api.server.pb.Message.rsp_peerCount.getDefaultInstance()) return this;
          if (other.getPeers() != 0) {
            setPeers(other.getPeers());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_peerCount parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_peerCount) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private int peers_ ;
        /**
         * <code>uint32 peers = 1;</code>
         */
        public int getPeers() {
          return peers_;
        }
        /**
         * <code>uint32 peers = 1;</code>
         */
        public Builder setPeers(int value) {
          
          peers_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint32 peers = 1;</code>
         */
        public Builder clearPeers() {
          
          peers_ = 0;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_peerCount)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_peerCount)
      private static final org.aion.api.server.pb.Message.rsp_peerCount DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_peerCount();
      }
  
      public static org.aion.api.server.pb.Message.rsp_peerCount getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_peerCount>
          PARSER = new com.google.protobuf.AbstractParser<rsp_peerCount>() {
        public rsp_peerCount parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_peerCount(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_peerCount> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_peerCount> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_peerCount getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface req_getBlockRewardOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.req_getBlockReward)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      long getBlockNumber();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.req_getBlockReward}
     */
    public  static final class req_getBlockReward extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.req_getBlockReward)
        req_getBlockRewardOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use req_getBlockReward.newBuilder() to construct.
      private req_getBlockReward(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private req_getBlockReward() {
        blockNumber_ = 0L;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private req_getBlockReward(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 8: {
  
                blockNumber_ = input.readUInt64();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockReward_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockReward_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.req_getBlockReward.class, org.aion.api.server.pb.Message.req_getBlockReward.Builder.class);
      }
  
      public static final int BLOCKNUMBER_FIELD_NUMBER = 1;
      private long blockNumber_;
      /**
       * <code>uint64 blockNumber = 1;</code>
       */
      public long getBlockNumber() {
        return blockNumber_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (blockNumber_ != 0L) {
          output.writeUInt64(1, blockNumber_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (blockNumber_ != 0L) {
          size += com.google.protobuf.CodedOutputStream
            .computeUInt64Size(1, blockNumber_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.req_getBlockReward)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.req_getBlockReward other = (org.aion.api.server.pb.Message.req_getBlockReward) obj;
  
        boolean result = true;
        result = result && (getBlockNumber()
            == other.getBlockNumber());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + BLOCKNUMBER_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getBlockNumber());
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.req_getBlockReward parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.req_getBlockReward prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.req_getBlockReward}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.req_getBlockReward)
          org.aion.api.server.pb.Message.req_getBlockRewardOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockReward_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockReward_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.req_getBlockReward.class, org.aion.api.server.pb.Message.req_getBlockReward.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.req_getBlockReward.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          blockNumber_ = 0L;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_req_getBlockReward_descriptor;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockReward getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.req_getBlockReward.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.req_getBlockReward build() {
          org.aion.api.server.pb.Message.req_getBlockReward result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.req_getBlockReward buildPartial() {
          org.aion.api.server.pb.Message.req_getBlockReward result = new org.aion.api.server.pb.Message.req_getBlockReward(this);
          result.blockNumber_ = blockNumber_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.req_getBlockReward) {
            return mergeFrom((org.aion.api.server.pb.Message.req_getBlockReward)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.req_getBlockReward other) {
          if (other == org.aion.api.server.pb.Message.req_getBlockReward.getDefaultInstance()) return this;
          if (other.getBlockNumber() != 0L) {
            setBlockNumber(other.getBlockNumber());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.req_getBlockReward parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.req_getBlockReward) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private long blockNumber_ ;
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public long getBlockNumber() {
          return blockNumber_;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder setBlockNumber(long value) {
          
          blockNumber_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>uint64 blockNumber = 1;</code>
         */
        public Builder clearBlockNumber() {
          
          blockNumber_ = 0L;
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.req_getBlockReward)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.req_getBlockReward)
      private static final org.aion.api.server.pb.Message.req_getBlockReward DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.req_getBlockReward();
      }
  
      public static org.aion.api.server.pb.Message.req_getBlockReward getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<req_getBlockReward>
          PARSER = new com.google.protobuf.AbstractParser<req_getBlockReward>() {
        public req_getBlockReward parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new req_getBlockReward(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<req_getBlockReward> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<req_getBlockReward> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.req_getBlockReward getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    public interface rsp_getBlockRewardOrBuilder extends
        // @@protoc_insertion_point(interface_extends:org.aion.api.server.pb.rsp_getBlockReward)
        com.google.protobuf.MessageOrBuilder {
  
      /**
       * <code>bytes reward = 1;</code>
       */
      com.google.protobuf.ByteString getReward();
    }
    /**
     * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockReward}
     */
    public  static final class rsp_getBlockReward extends
        com.google.protobuf.GeneratedMessageV3 implements
        // @@protoc_insertion_point(message_implements:org.aion.api.server.pb.rsp_getBlockReward)
        rsp_getBlockRewardOrBuilder {
    private static final long serialVersionUID = 0L;
      // Use rsp_getBlockReward.newBuilder() to construct.
      private rsp_getBlockReward(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
        super(builder);
      }
      private rsp_getBlockReward() {
        reward_ = com.google.protobuf.ByteString.EMPTY;
      }
  
      @java.lang.Override
      public final com.google.protobuf.UnknownFieldSet
      getUnknownFields() {
        return this.unknownFields;
      }
      private rsp_getBlockReward(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        this();
        if (extensionRegistry == null) {
          throw new java.lang.NullPointerException();
        }
        int mutable_bitField0_ = 0;
        com.google.protobuf.UnknownFieldSet.Builder unknownFields =
            com.google.protobuf.UnknownFieldSet.newBuilder();
        try {
          boolean done = false;
          while (!done) {
            int tag = input.readTag();
            switch (tag) {
              case 0:
                done = true;
                break;
              default: {
                if (!parseUnknownFieldProto3(
                    input, unknownFields, extensionRegistry, tag)) {
                  done = true;
                }
                break;
              }
              case 10: {
  
                reward_ = input.readBytes();
                break;
              }
            }
          }
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          throw e.setUnfinishedMessage(this);
        } catch (java.io.IOException e) {
          throw new com.google.protobuf.InvalidProtocolBufferException(
              e).setUnfinishedMessage(this);
        } finally {
          this.unknownFields = unknownFields.build();
          makeExtensionsImmutable();
        }
      }
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockReward_descriptor;
      }
  
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockReward_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                org.aion.api.server.pb.Message.rsp_getBlockReward.class, org.aion.api.server.pb.Message.rsp_getBlockReward.Builder.class);
      }
  
      public static final int REWARD_FIELD_NUMBER = 1;
      private com.google.protobuf.ByteString reward_;
      /**
       * <code>bytes reward = 1;</code>
       */
      public com.google.protobuf.ByteString getReward() {
        return reward_;
      }
  
      private byte memoizedIsInitialized = -1;
      public final boolean isInitialized() {
        byte isInitialized = memoizedIsInitialized;
        if (isInitialized == 1) return true;
        if (isInitialized == 0) return false;
  
        memoizedIsInitialized = 1;
        return true;
      }
  
      public void writeTo(com.google.protobuf.CodedOutputStream output)
                          throws java.io.IOException {
        if (!reward_.isEmpty()) {
          output.writeBytes(1, reward_);
        }
        unknownFields.writeTo(output);
      }
  
      public int getSerializedSize() {
        int size = memoizedSize;
        if (size != -1) return size;
  
        size = 0;
        if (!reward_.isEmpty()) {
          size += com.google.protobuf.CodedOutputStream
            .computeBytesSize(1, reward_);
        }
        size += unknownFields.getSerializedSize();
        memoizedSize = size;
        return size;
      }
  
      @java.lang.Override
      public boolean equals(final java.lang.Object obj) {
        if (obj == this) {
         return true;
        }
        if (!(obj instanceof org.aion.api.server.pb.Message.rsp_getBlockReward)) {
          return super.equals(obj);
        }
        org.aion.api.server.pb.Message.rsp_getBlockReward other = (org.aion.api.server.pb.Message.rsp_getBlockReward) obj;
  
        boolean result = true;
        result = result && getReward()
            .equals(other.getReward());
        result = result && unknownFields.equals(other.unknownFields);
        return result;
      }
  
      @java.lang.Override
      public int hashCode() {
        if (memoizedHashCode != 0) {
          return memoizedHashCode;
        }
        int hash = 41;
        hash = (19 * hash) + getDescriptor().hashCode();
        hash = (37 * hash) + REWARD_FIELD_NUMBER;
        hash = (53 * hash) + getReward().hashCode();
        hash = (29 * hash) + unknownFields.hashCode();
        memoizedHashCode = hash;
        return hash;
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          java.nio.ByteBuffer data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          java.nio.ByteBuffer data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          com.google.protobuf.ByteString data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          com.google.protobuf.ByteString data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(byte[] data)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          byte[] data,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return PARSER.parseFrom(data, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseDelimitedFrom(java.io.InputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseDelimitedFrom(
          java.io.InputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          com.google.protobuf.CodedInputStream input)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input);
      }
      public static org.aion.api.server.pb.Message.rsp_getBlockReward parseFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        return com.google.protobuf.GeneratedMessageV3
            .parseWithIOException(PARSER, input, extensionRegistry);
      }
  
      public Builder newBuilderForType() { return newBuilder(); }
      public static Builder newBuilder() {
        return DEFAULT_INSTANCE.toBuilder();
      }
      public static Builder newBuilder(org.aion.api.server.pb.Message.rsp_getBlockReward prototype) {
        return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
      }
      public Builder toBuilder() {
        return this == DEFAULT_INSTANCE
            ? new Builder() : new Builder().mergeFrom(this);
      }
  
      @java.lang.Override
      protected Builder newBuilderForType(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        Builder builder = new Builder(parent);
        return builder;
      }
      /**
       * Protobuf type {@code org.aion.api.server.pb.rsp_getBlockReward}
       */
      public static final class Builder extends
          com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
          // @@protoc_insertion_point(builder_implements:org.aion.api.server.pb.rsp_getBlockReward)
          org.aion.api.server.pb.Message.rsp_getBlockRewardOrBuilder {
        public static final com.google.protobuf.Descriptors.Descriptor
            getDescriptor() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockReward_descriptor;
        }
  
        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
            internalGetFieldAccessorTable() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockReward_fieldAccessorTable
              .ensureFieldAccessorsInitialized(
                  org.aion.api.server.pb.Message.rsp_getBlockReward.class, org.aion.api.server.pb.Message.rsp_getBlockReward.Builder.class);
        }
  
        // Construct using org.aion.api.server.pb.Message.rsp_getBlockReward.newBuilder()
        private Builder() {
          maybeForceBuilderInitialization();
        }
  
        private Builder(
            com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
          super(parent);
          maybeForceBuilderInitialization();
        }
        private void maybeForceBuilderInitialization() {
          if (com.google.protobuf.GeneratedMessageV3
                  .alwaysUseFieldBuilders) {
          }
        }
        public Builder clear() {
          super.clear();
          reward_ = com.google.protobuf.ByteString.EMPTY;
  
          return this;
        }
  
        public com.google.protobuf.Descriptors.Descriptor
            getDescriptorForType() {
          return org.aion.api.server.pb.Message.internal_static_org_aion_api_server_pb_rsp_getBlockReward_descriptor;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockReward getDefaultInstanceForType() {
          return org.aion.api.server.pb.Message.rsp_getBlockReward.getDefaultInstance();
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockReward build() {
          org.aion.api.server.pb.Message.rsp_getBlockReward result = buildPartial();
          if (!result.isInitialized()) {
            throw newUninitializedMessageException(result);
          }
          return result;
        }
  
        public org.aion.api.server.pb.Message.rsp_getBlockReward buildPartial() {
          org.aion.api.server.pb.Message.rsp_getBlockReward result = new org.aion.api.server.pb.Message.rsp_getBlockReward(this);
          result.reward_ = reward_;
          onBuilt();
          return result;
        }
  
        public Builder clone() {
          return (Builder) super.clone();
        }
        public Builder setField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.setField(field, value);
        }
        public Builder clearField(
            com.google.protobuf.Descriptors.FieldDescriptor field) {
          return (Builder) super.clearField(field);
        }
        public Builder clearOneof(
            com.google.protobuf.Descriptors.OneofDescriptor oneof) {
          return (Builder) super.clearOneof(oneof);
        }
        public Builder setRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            int index, java.lang.Object value) {
          return (Builder) super.setRepeatedField(field, index, value);
        }
        public Builder addRepeatedField(
            com.google.protobuf.Descriptors.FieldDescriptor field,
            java.lang.Object value) {
          return (Builder) super.addRepeatedField(field, value);
        }
        public Builder mergeFrom(com.google.protobuf.Message other) {
          if (other instanceof org.aion.api.server.pb.Message.rsp_getBlockReward) {
            return mergeFrom((org.aion.api.server.pb.Message.rsp_getBlockReward)other);
          } else {
            super.mergeFrom(other);
            return this;
          }
        }
  
        public Builder mergeFrom(org.aion.api.server.pb.Message.rsp_getBlockReward other) {
          if (other == org.aion.api.server.pb.Message.rsp_getBlockReward.getDefaultInstance()) return this;
          if (other.getReward() != com.google.protobuf.ByteString.EMPTY) {
            setReward(other.getReward());
          }
          this.mergeUnknownFields(other.unknownFields);
          onChanged();
          return this;
        }
  
        public final boolean isInitialized() {
          return true;
        }
  
        public Builder mergeFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws java.io.IOException {
          org.aion.api.server.pb.Message.rsp_getBlockReward parsedMessage = null;
          try {
            parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
          } catch (com.google.protobuf.InvalidProtocolBufferException e) {
            parsedMessage = (org.aion.api.server.pb.Message.rsp_getBlockReward) e.getUnfinishedMessage();
            throw e.unwrapIOException();
          } finally {
            if (parsedMessage != null) {
              mergeFrom(parsedMessage);
            }
          }
          return this;
        }
  
        private com.google.protobuf.ByteString reward_ = com.google.protobuf.ByteString.EMPTY;
        /**
         * <code>bytes reward = 1;</code>
         */
        public com.google.protobuf.ByteString getReward() {
          return reward_;
        }
        /**
         * <code>bytes reward = 1;</code>
         */
        public Builder setReward(com.google.protobuf.ByteString value) {
          if (value == null) {
      throw new NullPointerException();
    }
    
          reward_ = value;
          onChanged();
          return this;
        }
        /**
         * <code>bytes reward = 1;</code>
         */
        public Builder clearReward() {
          
          reward_ = getDefaultInstance().getReward();
          onChanged();
          return this;
        }
        public final Builder setUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.setUnknownFieldsProto3(unknownFields);
        }
  
        public final Builder mergeUnknownFields(
            final com.google.protobuf.UnknownFieldSet unknownFields) {
          return super.mergeUnknownFields(unknownFields);
        }
  
  
        // @@protoc_insertion_point(builder_scope:org.aion.api.server.pb.rsp_getBlockReward)
      }
  
      // @@protoc_insertion_point(class_scope:org.aion.api.server.pb.rsp_getBlockReward)
      private static final org.aion.api.server.pb.Message.rsp_getBlockReward DEFAULT_INSTANCE;
      static {
        DEFAULT_INSTANCE = new org.aion.api.server.pb.Message.rsp_getBlockReward();
      }
  
      public static org.aion.api.server.pb.Message.rsp_getBlockReward getDefaultInstance() {
        return DEFAULT_INSTANCE;
      }
  
      private static final com.google.protobuf.Parser<rsp_getBlockReward>
          PARSER = new com.google.protobuf.AbstractParser<rsp_getBlockReward>() {
        public rsp_getBlockReward parsePartialFrom(
            com.google.protobuf.CodedInputStream input,
            com.google.protobuf.ExtensionRegistryLite extensionRegistry)
            throws com.google.protobuf.InvalidProtocolBufferException {
          return new rsp_getBlockReward(input, extensionRegistry);
        }
      };
  
      public static com.google.protobuf.Parser<rsp_getBlockReward> parser() {
        return PARSER;
      }
  
      @java.lang.Override
      public com.google.protobuf.Parser<rsp_getBlockReward> getParserForType() {
        return PARSER;
      }
  
      public org.aion.api.server.pb.Message.rsp_getBlockReward getDefaultInstanceForType() {
        return DEFAULT_INSTANCE;
      }
  
    }
  
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_Contract_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_Contract_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_AionTx_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_AionTx_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_Node_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_Node_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_LgEle_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_LgEle_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_FilterCt_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_FilterCt_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_EventCt_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_EventCt_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_BlockDetail_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_BlockDetail_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_TxDetail_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_TxDetail_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_AccountDetail_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_AccountDetail_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_Block_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_Block_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_BlockSql_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_BlockSql_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_errormsg_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_errormsg_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_protocolVersion_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_protocolVersion_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_minerAddress_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_minerAddress_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockByNumber_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockByNumber_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlock_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlock_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockHeader_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockHeader_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_sendTransaction_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_sendTransaction_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_sendTransaction_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_sendTransaction_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getTransactionByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getTransactionByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getTransaction_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getTransaction_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_unlockAccount_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_unlockAccount_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_accounts_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_accounts_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_compile_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_compile_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_compile_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_compile_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_compile_ConstractsEntry_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_compile_ConstractsEntry_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getCode_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getCode_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getCode_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getCode_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_contractDeploy_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_contractDeploy_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_contractDeploy_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_contractDeploy_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_call_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_call_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_call_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_call_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getTransactionCount_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getTransactionCount_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getTransactionCount_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getTransactionCount_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_blockNumber_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_blockNumber_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBalance_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBalance_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBalance_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBalance_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getStorageAt_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getStorageAt_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getStorageAt_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getStorageAt_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getTransactionReceipt_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getTransactionReceipt_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getCompilers_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getCompilers_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_compileSolidityZip_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_compileSolidityZip_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getWork_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getWork_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_submitWork_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_submitWork_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_submitWork_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_submitWork_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_rawTransaction_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_rawTransaction_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_estimateNrg_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_estimateNrg_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_estimateNrg_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_estimateNrg_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_mining_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_mining_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_hashrate_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_hashrate_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getActiveNodes_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getActiveNodes_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getStaticNodes_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getStaticNodes_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getSolcVersion_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getSolcVersion_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_isSyncing_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_isSyncing_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_syncInfo_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_syncInfo_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_systemInfo_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_systemInfo_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_eventRegister_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_eventRegister_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_eventRegister_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_eventRegister_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_eventDeregister_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_eventDeregister_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_eventDeregister_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_eventDeregister_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_EventCtCallback_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_EventCtCallback_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_accountCreate_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_accountCreate_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_accountCreate_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_accountCreate_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_accountlock_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_accountlock_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_accountlock_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_accountlock_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_userPrivilege_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_userPrivilege_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_userPrivilege_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_userPrivilege_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_queryCtEvents_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_queryCtEvents_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_queryCtEvents_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_queryCtEvents_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_PrivateKey_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_PrivateKey_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_importAccounts_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_importAccounts_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_importAccounts_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_importAccounts_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_t_Key_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_t_Key_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_exportAccounts_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_exportAccounts_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_exportAccounts_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_exportAccounts_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlocksByLatest_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlocksByLatest_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getNonce_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getNonce_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getNonce_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getNonce_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getNrgPrice_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getNrgPrice_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_listening_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_listening_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_peerCount_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_peerCount_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_req_getBlockReward_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_req_getBlockReward_fieldAccessorTable;
    private static final com.google.protobuf.Descriptors.Descriptor
      internal_static_org_aion_api_server_pb_rsp_getBlockReward_descriptor;
    private static final 
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internal_static_org_aion_api_server_pb_rsp_getBlockReward_fieldAccessorTable;
  
    public static com.google.protobuf.Descriptors.FileDescriptor
        getDescriptor() {
      return descriptor;
    }
    private static  com.google.protobuf.Descriptors.FileDescriptor
        descriptor;
    static {
      java.lang.String[] descriptorData = {
        "\n\rmessage.proto\022\026org.aion.api.server.pb\"" +
        "\234\001\n\nt_Contract\022\014\n\004code\030\001 \001(\t\022\r\n\005error\030\002 " +
        "\001(\t\022\016\n\006source\030\003 \001(\t\022\027\n\017compilerVersion\030\004" +
        " \001(\t\022\027\n\017compilerOptions\030\005 \001(\t\022\016\n\006abiDef\030" +
        "\006 \001(\014\022\017\n\007userDoc\030\007 \001(\014\022\016\n\006devDoc\030\010 \001(\014\"\227" +
        "\001\n\010t_AionTx\022\016\n\006txHash\030\001 \001(\014\022\014\n\004from\030\002 \001(" +
        "\014\022\n\n\002to\030\003 \001(\014\022\r\n\005value\030\004 \001(\014\022\014\n\004data\030\005 \001" +
        "(\014\022\r\n\005nonce\030\006 \001(\014\022\023\n\013nrgConsumed\030\007 \001(\004\022\020" +
        "\n\010nrgPrice\030\010 \001(\004\022\016\n\006txType\030\t \001(\014\"n\n\006t_No" +
        "de\022\023\n\013blockNumber\030\001 \001(\004\022\016\n\006nodeId\030\002 \001(\t\022" +
        "\025\n\rremote_p2p_ip\030\003 \001(\t\022\027\n\017remote_p2p_por" +
        "t\030\004 \001(\r\022\017\n\007latency\030\005 \001(\r\"8\n\007t_LgEle\022\017\n\007a" +
        "ddress\030\001 \001(\014\022\014\n\004data\030\002 \001(\014\022\016\n\006topics\030\003 \003" +
        "(\t\"s\n\nt_FilterCt\022\014\n\004from\030\001 \001(\t\022\n\n\002to\030\002 \001" +
        "(\t\022\024\n\014contractAddr\030\003 \001(\014\022\021\n\taddresses\030\004 " +
        "\003(\014\022\016\n\006topics\030\005 \003(\t\022\022\n\nexpireTime\030\006 \001(\004\"" +
        "\251\001\n\tt_EventCt\022\017\n\007address\030\001 \001(\014\022\014\n\004data\030\002" +
        " \001(\014\022\021\n\tblockHash\030\003 \001(\014\022\023\n\013blockNumber\030\004" +
        " \001(\004\022\020\n\010logIndex\030\005 \001(\r\022\021\n\teventName\030\006 \001(" +
        "\t\022\017\n\007removed\030\007 \001(\010\022\017\n\007txIndex\030\010 \001(\r\022\016\n\006t" +
        "xHash\030\t \001(\014\"\233\003\n\rt_BlockDetail\022\023\n\013blockNu" +
        "mber\030\001 \001(\004\022\021\n\ttimestamp\030\002 \001(\004\022\023\n\013nrgCons" +
        "umed\030\003 \001(\004\022\020\n\010nrgLimit\030\004 \001(\004\022\022\n\nparentHa" +
        "sh\030\005 \001(\014\022\024\n\014minerAddress\030\006 \001(\014\022\021\n\tstateR" +
        "oot\030\007 \001(\014\022\022\n\ntxTrieRoot\030\010 \001(\014\022\027\n\017receipt" +
        "TrieRoot\030\t \001(\014\022\021\n\tlogsBloom\030\n \001(\014\022\022\n\ndif" +
        "ficulty\030\013 \001(\014\022\027\n\017totalDifficulty\030\014 \001(\014\022\021" +
        "\n\textraData\030\r \001(\014\022\r\n\005nonce\030\016 \001(\014\022\020\n\010solu" +
        "tion\030\017 \001(\014\022\014\n\004hash\030\020 \001(\014\022\014\n\004size\030\021 \001(\r\022." +
        "\n\002tx\030\022 \003(\0132\".org.aion.api.server.pb.t_Tx" +
        "Detail\022\021\n\tblockTime\030\023 \001(\004\"\213\002\n\nt_TxDetail" +
        "\022\016\n\006txHash\030\001 \001(\014\022\014\n\004from\030\002 \001(\014\022\n\n\002to\030\003 \001" +
        "(\014\022\r\n\005value\030\004 \001(\014\022\014\n\004data\030\005 \001(\014\022\r\n\005nonce" +
        "\030\006 \001(\014\022\023\n\013nrgConsumed\030\007 \001(\004\022\020\n\010nrgPrice\030" +
        "\010 \001(\004\022\017\n\007txIndex\030\t \001(\r\022\020\n\010contract\030\n \001(\014" +
        "\022-\n\004logs\030\013 \003(\0132\037.org.aion.api.server.pb." +
        "t_LgEle\022\021\n\ttimestamp\030\014 \001(\004\022\r\n\005error\030\r \001(" +
        "\t\022\014\n\004type\030\016 \001(\014\"3\n\017t_AccountDetail\022\017\n\007ad" +
        "dress\030\001 \001(\014\022\017\n\007balance\030\002 \001(\014\"\342\002\n\007t_Block" +
        "\022\023\n\013blockNumber\030\001 \001(\004\022\021\n\ttimestamp\030\002 \001(\004" +
        "\022\023\n\013nrgConsumed\030\003 \001(\004\022\020\n\010nrgLimit\030\004 \001(\004\022" +
        "\022\n\nparentHash\030\005 \001(\014\022\024\n\014minerAddress\030\006 \001(" +
        "\014\022\021\n\tstateRoot\030\007 \001(\014\022\022\n\ntxTrieRoot\030\010 \001(\014" +
        "\022\027\n\017receiptTrieRoot\030\t \001(\014\022\021\n\tlogsBloom\030\n" +
        " \001(\014\022\022\n\ndifficulty\030\013 \001(\014\022\027\n\017totalDifficu" +
        "lty\030\014 \001(\014\022\021\n\textraData\030\r \001(\014\022\r\n\005nonce\030\016 " +
        "\001(\014\022\020\n\010solution\030\017 \001(\014\022\014\n\004hash\030\020 \001(\014\022\014\n\004s" +
        "ize\030\021 \001(\r\022\016\n\006txHash\030\022 \003(\014\"c\n\nt_BlockSql\022" +
        "\023\n\013blockNumber\030\001 \001(\004\022\021\n\tblockHash\030\002 \001(\t\022" +
        "\022\n\nparentHash\030\003 \001(\t\022\r\n\005block\030\004 \001(\t\022\n\n\002tx" +
        "\030\005 \003(\t\" \n\014rsp_errormsg\022\020\n\010errormsg\030\001 \001(\t" +
        "\"v\n\023rsp_protocolVersion\022\016\n\006kernel\030\001 \001(\t\022" +
        "\013\n\003net\030\002 \001(\t\022\013\n\003api\030\003 \001(\t\022\n\n\002vm\030\004 \001(\t\022\n\n" +
        "\002db\030\005 \001(\t\022\r\n\005miner\030\006 \001(\t\022\016\n\006txpool\030\007 \001(\t" +
        "\"%\n\020rsp_minerAddress\022\021\n\tminerAddr\030\001 \001(\014\"" +
        "+\n\024req_getBlockByNumber\022\023\n\013blockNumber\030\001" +
        " \001(\004\"\347\002\n\014rsp_getBlock\022\023\n\013blockNumber\030\001 \001" +
        "(\004\022\021\n\ttimestamp\030\002 \001(\004\022\023\n\013nrgConsumed\030\003 \001" +
        "(\004\022\020\n\010nrgLimit\030\004 \001(\004\022\022\n\nparentHash\030\005 \001(\014" +
        "\022\024\n\014minerAddress\030\006 \001(\014\022\021\n\tstateRoot\030\007 \001(" +
        "\014\022\022\n\ntxTrieRoot\030\010 \001(\014\022\027\n\017receiptTrieRoot" +
        "\030\t \001(\014\022\021\n\tlogsBloom\030\n \001(\014\022\022\n\ndifficulty\030" +
        "\013 \001(\014\022\027\n\017totalDifficulty\030\014 \001(\014\022\021\n\textraD" +
        "ata\030\r \001(\014\022\r\n\005nonce\030\016 \001(\014\022\020\n\010solution\030\017 \001" +
        "(\014\022\014\n\004hash\030\020 \001(\014\022\014\n\004size\030\021 \001(\r\022\016\n\006txHash" +
        "\030\022 \003(\014\"1\n\032req_getBlockHeaderByNumber\022\023\n\013" +
        "blockNumber\030\001 \001(\004\"\304\002\n\022rsp_getBlockHeader" +
        "\022\023\n\013blockNumber\030\001 \001(\004\022\021\n\ttimestamp\030\002 \001(\004" +
        "\022\023\n\013nrgConsumed\030\003 \001(\004\022\020\n\010nrgLimit\030\004 \001(\004\022" +
        "\022\n\nparentHash\030\005 \001(\014\022\024\n\014minerAddress\030\006 \001(" +
        "\014\022\021\n\tstateRoot\030\007 \001(\014\022\022\n\ntxTrieRoot\030\010 \001(\014" +
        "\022\027\n\017receiptTrieRoot\030\t \001(\014\022\021\n\tlogsBloom\030\n" +
        " \001(\014\022\022\n\ndifficulty\030\013 \001(\014\022\021\n\textraData\030\014 " +
        "\001(\014\022\r\n\005nonce\030\r \001(\014\022\020\n\010solution\030\016 \001(\014\022\014\n\004" +
        "hash\030\017 \001(\014\022\014\n\004size\030\020 \001(\r\"z\n\023req_sendTran" +
        "saction\022\014\n\004from\030\001 \001(\014\022\n\n\002to\030\002 \001(\014\022\r\n\005val" +
        "ue\030\003 \001(\014\022\014\n\004data\030\004 \001(\014\022\r\n\005nonce\030\005 \001(\014\022\013\n" +
        "\003nrg\030\006 \001(\004\022\020\n\010nrgPrice\030\007 \001(\004\"%\n\023rsp_send" +
        "Transaction\022\016\n\006txHash\030\001 \001(\014\"*\n\030req_getTr" +
        "ansactionByHash\022\016\n\006txHash\030\001 \001(\014\"\334\001\n\022rsp_" +
        "getTransaction\022\017\n\007txIndex\030\001 \001(\r\022\023\n\013block" +
        "number\030\002 \001(\004\022\021\n\ttimeStamp\030\003 \001(\004\022\022\n\nnrgCo" +
        "nsume\030\004 \001(\004\022\020\n\010nrgPrice\030\005 \001(\004\022\021\n\tblockha" +
        "sh\030\006 \001(\014\022\014\n\004from\030\007 \001(\014\022\016\n\006txHash\030\010 \001(\014\022\014" +
        "\n\004data\030\t \001(\014\022\r\n\005nonce\030\n \001(\014\022\n\n\002to\030\013 \001(\014\022" +
        "\r\n\005value\030\014 \001(\014\"H\n\021req_unlockAccount\022\017\n\007a" +
        "ccount\030\001 \001(\014\022\020\n\010password\030\002 \001(\t\022\020\n\010durati" +
        "on\030\003 \001(\r\"\036\n\014rsp_accounts\022\016\n\006accout\030\001 \003(\014" +
        "\"\033\n\013req_compile\022\014\n\004code\030\001 \001(\t\"\255\001\n\013rsp_co" +
        "mpile\022G\n\nconstracts\030\001 \003(\01323.org.aion.api" +
        ".server.pb.rsp_compile.ConstractsEntry\032U" +
        "\n\017ConstractsEntry\022\013\n\003key\030\001 \001(\t\0221\n\005value\030" +
        "\002 \001(\0132\".org.aion.api.server.pb.t_Contrac" +
        "t:\0028\001\"3\n\013req_getCode\022\017\n\007address\030\001 \001(\014\022\023\n" +
        "\013blocknumber\030\002 \001(\004\"\033\n\013rsp_getCode\022\014\n\004cod" +
        "e\030\001 \001(\014\"c\n\022req_contractDeploy\022\020\n\010nrgLimi" +
        "t\030\001 \001(\004\022\020\n\010nrgPrice\030\002 \001(\004\022\014\n\004from\030\003 \001(\014\022" +
        "\014\n\004data\030\004 \001(\014\022\r\n\005value\030\005 \001(\014\"=\n\022rsp_cont" +
        "ractDeploy\022\016\n\006txHash\030\001 \001(\014\022\027\n\017contractAd" +
        "dress\030\002 \001(\014\"`\n\010req_call\022\014\n\004from\030\001 \001(\014\022\n\n" +
        "\002to\030\002 \001(\014\022\014\n\004data\030\003 \001(\014\022\r\n\005value\030\004 \001(\014\022\013" +
        "\n\003nrg\030\005 \001(\004\022\020\n\010nrgPrice\030\006 \001(\004\"\032\n\010rsp_cal" +
        "l\022\016\n\006result\030\001 \001(\014\"\'\n\022req_getBlockByHash\022" +
        "\021\n\tblockHash\030\001 \001(\014\"-\n\030req_getBlockHeader" +
        "ByHash\022\021\n\tblockHash\030\001 \001(\014\"?\n\027req_getTran" +
        "sactionCount\022\017\n\007address\030\001 \001(\014\022\023\n\013blocknu" +
        "mber\030\002 \001(\004\"*\n\027rsp_getTransactionCount\022\017\n" +
        "\007txCount\030\001 \001(\004\"/\n\035req_getTransactionCoun" +
        "tByHash\022\016\n\006txHash\030\001 \001(\014\"&\n\017rsp_blockNumb" +
        "er\022\023\n\013blocknumber\030\001 \001(\004\"6\n\016req_getBalanc" +
        "e\022\017\n\007address\030\001 \001(\014\022\023\n\013blockNumber\030\002 \001(\004\"" +
        "!\n\016rsp_getBalance\022\017\n\007balance\030\001 \001(\014\"J\n\020re" +
        "q_getStorageAt\022\017\n\007address\030\001 \001(\014\022\020\n\010posit" +
        "ion\030\002 \001(\r\022\023\n\013blocknumber\030\003 \001(\004\"#\n\020rsp_ge" +
        "tStorageAt\022\017\n\007storage\030\001 \001(\t\"7\n\"req_getBl" +
        "ockTransactionCountByHash\022\021\n\tblockHash\030\001" +
        " \001(\014\"/\n\034rsp_getBlockTransactionCount\022\017\n\007" +
        "txCount\030\001 \001(\r\";\n$req_getBlockTransaction" +
        "CountByNumber\022\023\n\013blockNumber\030\001 \001(\004\"K\n%re" +
        "q_getTransactionByBlockHashAndIndex\022\021\n\tb" +
        "lockHash\030\001 \001(\014\022\017\n\007txIndex\030\002 \001(\r\"O\n\'req_g" +
        "etTransactionByBlockNumberAndIndex\022\023\n\013bl" +
        "ockNumber\030\001 \001(\004\022\017\n\007txIndex\030\002 \001(\r\"+\n\031req_" +
        "getTransactionReceipt\022\016\n\006txHash\030\001 \001(\014\"\366\001" +
        "\n\031rsp_getTransactionReceipt\022\017\n\007txIndex\030\001" +
        " \001(\r\022\023\n\013blockNumber\030\002 \001(\004\022\023\n\013nrgConsumed" +
        "\030\003 \001(\004\022\031\n\021cumulativeNrgUsed\030\004 \001(\004\022\021\n\tblo" +
        "ckHash\030\005 \001(\014\022\016\n\006txHash\030\006 \001(\014\022\014\n\004from\030\007 \001" +
        "(\014\022\n\n\002to\030\010 \001(\014\022\027\n\017contractAddress\030\t \001(\014\022" +
        "-\n\004logs\030\n \003(\0132\037.org.aion.api.server.pb.t" +
        "_LgEle\"C\n\037req_getUncleByBlockHashAndInde" +
        "x\022\021\n\tblockHash\030\001 \001(\014\022\r\n\005index\030\002 \001(\r\"$\n\020r" +
        "sp_getCompilers\022\020\n\010compiler\030\001 \003(\t\"=\n\026req" +
        "_compileSolidityZip\022\017\n\007zipfile\030\001 \001(\014\022\022\n\n" +
        "entryPoint\030\002 \001(\t\"\033\n\013rsp_getWork\022\014\n\004work\030" +
        "\001 \003(\t\"A\n\016req_submitWork\022\r\n\005nonce\030\001 \001(\014\022\020" +
        "\n\010solution\030\002 \001(\014\022\016\n\006digest\030\003 \001(\014\"&\n\016rsp_" +
        "submitWork\022\024\n\014workAccepted\030\001 \001(\010\"K\n\033rsp_" +
        "fetchQueuedTransactions\022,\n\002tx\030\001 \003(\0132 .or" +
        "g.aion.api.server.pb.t_AionTx\"\'\n\022req_raw" +
        "Transaction\022\021\n\tencodedTx\030\001 \001(\014\"g\n\017req_es" +
        "timateNrg\022\014\n\004from\030\001 \001(\014\022\n\n\002to\030\002 \001(\014\022\r\n\005v" +
        "alue\030\003 \001(\014\022\014\n\004data\030\004 \001(\014\022\013\n\003nrg\030\005 \001(\004\022\020\n" +
        "\010nrgPrice\030\006 \001(\004\"\036\n\017rsp_estimateNrg\022\013\n\003nr" +
        "g\030\001 \001(\004\"\034\n\nrsp_mining\022\016\n\006mining\030\001 \001(\010\" \n" +
        "\014rsp_hashrate\022\020\n\010hashrate\030\001 \001(\004\"B\n\022rsp_g" +
        "etActiveNodes\022,\n\004node\030\001 \003(\0132\036.org.aion.a" +
        "pi.server.pb.t_Node\"B\n\022rsp_getStaticNode" +
        "s\022,\n\004node\030\001 \003(\0132\036.org.aion.api.server.pb" +
        ".t_Node\"!\n\022rsp_getSolcVersion\022\013\n\003ver\030\001 \001" +
        "(\t\" \n\rrsp_isSyncing\022\017\n\007syncing\030\001 \001(\010\"\201\001\n" +
        "\014rsp_syncInfo\022\017\n\007syncing\030\001 \001(\010\022\030\n\020networ" +
        "kBestBlock\030\002 \001(\004\022\026\n\016chainBestBlock\030\003 \001(\004" +
        "\022\027\n\017maxImportBlocks\030\004 \001(\r\022\025\n\rstartingBlo" +
        "ck\030\005 \001(\004\"G\n\016rsp_systemInfo\022\020\n\010cpuUsage\030\001" +
        " \001(\002\022\023\n\013memoryUsage\030\002 \001(\004\022\016\n\006DBSize\030\003 \001(" +
        "\004\"W\n\021req_eventRegister\022\016\n\006events\030\001 \003(\t\0222" +
        "\n\006filter\030\002 \001(\0132\".org.aion.api.server.pb." +
        "t_FilterCt\"#\n\021rsp_eventRegister\022\016\n\006resul" +
        "t\030\001 \001(\010\";\n\023req_eventDeregister\022\016\n\006events" +
        "\030\001 \003(\t\022\024\n\014contractAddr\030\002 \001(\014\"%\n\023rsp_even" +
        "tDeregister\022\016\n\006result\030\001 \001(\010\"D\n\023rsp_Event" +
        "CtCallback\022-\n\002ec\030\001 \003(\0132!.org.aion.api.se" +
        "rver.pb.t_EventCt\"9\n\021req_accountCreate\022\020" +
        "\n\010password\030\001 \003(\t\022\022\n\nprivateKey\030\002 \001(\010\"8\n\021" +
        "rsp_accountCreate\022\017\n\007address\030\001 \003(\014\022\022\n\npr" +
        "ivateKey\030\002 \003(\014\"4\n\017req_accountlock\022\017\n\007acc" +
        "ount\030\001 \001(\014\022\020\n\010password\030\002 \001(\t\"!\n\017rsp_acco" +
        "untlock\022\016\n\006locked\030\001 \001(\010\"7\n\021req_userPrivi" +
        "lege\022\020\n\010username\030\001 \001(\t\022\020\n\010password\030\002 \001(\t" +
        "\"&\n\021rsp_userPrivilege\022\021\n\tprivilege\030\001 \003(\t" +
        "\"G\n\021req_queryCtEvents\0222\n\006filter\030\001 \001(\0132\"." +
        "org.aion.api.server.pb.t_FilterCt\"B\n\021rsp" +
        "_queryCtEvents\022-\n\002ec\030\001 \003(\0132!.org.aion.ap" +
        "i.server.pb.t_EventCt\"4\n\014t_PrivateKey\022\022\n" +
        "\nprivateKey\030\001 \001(\t\022\020\n\010password\030\002 \001(\t\"N\n\022r" +
        "eq_importAccounts\0228\n\nprivateKey\030\001 \003(\0132$." +
        "org.aion.api.server.pb.t_PrivateKey\"(\n\022r" +
        "sp_importAccounts\022\022\n\ninvalidKey\030\001 \003(\t\"*\n" +
        "\005t_Key\022\017\n\007address\030\001 \001(\014\022\020\n\010password\030\002 \001(" +
        "\t\"D\n\022req_exportAccounts\022.\n\007keyFile\030\001 \003(\013" +
        "2\035.org.aion.api.server.pb.t_Key\"8\n\022rsp_e" +
        "xportAccounts\022\017\n\007keyFile\030\001 \003(\014\022\021\n\tfailed" +
        "Key\030\002 \003(\014\"2\n\035rsp_getCurrentTotalDifficul" +
        "ty\022\021\n\ttotalDiff\030\001 \001(\014\"1\n\033req_getBlockDet" +
        "ailsByNumber\022\022\n\nblkNumbers\030\001 \003(\004\"X\n\033rsp_" +
        "getBlockDetailsByNumber\0229\n\nblkDetails\030\001 " +
        "\003(\0132%.org.aion.api.server.pb.t_BlockDeta" +
        "il\",\n\033req_getBlockDetailsByLatest\022\r\n\005cou" +
        "nt\030\001 \001(\004\"X\n\033rsp_getBlockDetailsByLatest\022" +
        "9\n\nblkDetails\030\001 \003(\0132%.org.aion.api.serve" +
        "r.pb.t_BlockDetail\"&\n\025req_getBlocksByLat" +
        "est\022\r\n\005count\030\001 \001(\004\"F\n\025rsp_getBlocksByLat" +
        "est\022-\n\004blks\030\001 \003(\0132\037.org.aion.api.server." +
        "pb.t_Block\"7\n\"req_getAccountDetailsByAdd" +
        "ressList\022\021\n\taddresses\030\001 \003(\014\"_\n\"rsp_getAc" +
        "countDetailsByAddressList\0229\n\010accounts\030\001 " +
        "\003(\0132\'.org.aion.api.server.pb.t_AccountDe" +
        "tail\"F\n\026req_getBlockSqlByRange\022\026\n\016blkNum" +
        "berStart\030\001 \001(\004\022\024\n\014blkNumberEnd\030\002 \001(\004\"L\n\026" +
        "rsp_getBlockSqlByRange\0222\n\006blkSql\030\001 \003(\0132\"" +
        ".org.aion.api.server.pb.t_BlockSql\"J\n\032re" +
        "q_getBlockDetailsByRange\022\026\n\016blkNumberSta" +
        "rt\030\001 \001(\004\022\024\n\014blkNumberEnd\030\002 \001(\004\"W\n\032rsp_ge" +
        "tBlockDetailsByRange\0229\n\nblkDetails\030\001 \003(\013" +
        "2%.org.aion.api.server.pb.t_BlockDetail\"" +
        "\037\n\014req_getNonce\022\017\n\007address\030\001 \001(\014\"\035\n\014rsp_" +
        "getNonce\022\r\n\005nonce\030\001 \001(\014\"#\n\017rsp_getNrgPri" +
        "ce\022\020\n\010nrgPrice\030\001 \001(\004\".\n\031req_getBlockDeta" +
        "ilsByHash\022\021\n\tblockHash\030\001 \001(\014\"V\n\031rsp_getB" +
        "lockDetailsByHash\0229\n\nblkDetails\030\001 \001(\0132%." +
        "org.aion.api.server.pb.t_BlockDetail\"$\n\r" +
        "rsp_listening\022\023\n\013isListening\030\001 \001(\010\"\036\n\rrs" +
        "p_peerCount\022\r\n\005peers\030\001 \001(\r\")\n\022req_getBlo" +
        "ckReward\022\023\n\013blockNumber\030\001 \001(\004\"$\n\022rsp_get" +
        "BlockReward\022\016\n\006reward\030\001 \001(\014*\204\001\n\005Servs\022\010\n" +
        "\004s_hb\020\000\022\013\n\007s_admin\020\001\022\013\n\007s_chain\020\002\022\r\n\ts_a" +
        "ccount\020\003\022\010\n\004s_tx\020\004\022\t\n\005s_net\020\005\022\n\n\006s_mine\020" +
        "\006\022\017\n\013s_privilege\020\007\022\014\n\010s_wallet\020\010\022\010\n\004s_NA" +
        "\020\t*\240\013\n\005Funcs\022\025\n\021f_protocolVersion\020\000\022\022\n\016f" +
        "_minerAddress\020\001\022\016\n\nf_accounts\020\002\022\021\n\rf_blo" +
        "ckNumber\020\003\022\020\n\014f_getBalance\020\004\022\022\n\016f_getSto" +
        "rageAt\020\005\022\023\n\017f_unlockAccount\020\006\022\025\n\021f_sendT" +
        "ransaction\020\007\022\032\n\026f_getTransactionByHash\020\010" +
        "\022\r\n\tf_compile\020\t\022\024\n\020f_contractDeploy\020\n\022\031\n" +
        "\025f_getTransactionCount\020\013\022$\n f_getBlockTr" +
        "ansactionCountByHash\020\014\022&\n\"f_getBlockTran" +
        "sactionCountByNumber\020\r\022\r\n\tf_getCode\020\016\022\n\n" +
        "\006f_call\020\017\022\024\n\020f_getBlockByHash\020\020\022\026\n\022f_get" +
        "BlockByNumber\020\021\022\'\n#f_getTransactionByBlo" +
        "ckHashAndIndex\020\022\022)\n%f_getTransactionByBl" +
        "ockNumberAndIndex\020\023\022\033\n\027f_getTransactionR" +
        "eceipt\020\024\022\022\n\016f_getCompilers\020\025\022\030\n\024f_compil" +
        "eSolidityZip\020\026\022\r\n\tf_getWork\020\027\022\020\n\014f_submi" +
        "tWork\020\030\022\035\n\031f_fetchQueuedTransactions\020\031\022\027" +
        "\n\023f_signedTransaction\020\032\022\024\n\020f_rawTransact" +
        "ion\020\033\022\021\n\rf_estimateNrg\020\034\022\014\n\010f_mining\020\035\022\016" +
        "\n\nf_hashrate\020\036\022\024\n\020f_getActiveNodes\020\037\022\024\n\020" +
        "f_getSolcVersion\020 \022\017\n\013f_isSyncing\020!\022\016\n\nf" +
        "_syncInfo\020\"\022\023\n\017f_getSystemInfo\020#\022\023\n\017f_ev" +
        "entRegister\020$\022\025\n\021f_eventDeregister\020%\022\023\n\017" +
        "f_accountCreate\020&\022\021\n\rf_accountLock\020\'\022\023\n\017" +
        "f_userPrivilege\020(\022\020\n\014f_eventQuery\020)\022\024\n\020f" +
        "_importAccounts\020*\022\024\n\020f_exportAccounts\020+\022" +
        "\034\n\030f_getBlockHeaderByNumber\020,\022\032\n\026f_getBl" +
        "ockHeaderByHash\020-\022\037\n\033f_getCurrentTotalDi" +
        "fficulty\020.\022\024\n\020f_getStaticNodes\020/\022\035\n\031f_ge" +
        "tBlockDetailsByNumber\0200\022\035\n\031f_getBlockDet" +
        "ailsByLatest\0201\022\027\n\023f_getBlocksByLatest\0202\022" +
        "$\n f_getAccountDetailsByAddressList\0203\022\024\n" +
        "\020f_backupAccounts\0204\022\010\n\004f_NA\0205\022\030\n\024f_getBl" +
        "ockSqlByRange\0206\022\034\n\030f_getBlockDetailsByRa" +
        "nge\0207\022\016\n\nf_getNonce\0208\022\021\n\rf_getNrgPrice\0209" +
        "\022\033\n\027f_getBlockDetailsByHash\020:\022\017\n\013f_liste" +
        "ning\020;\022\017\n\013f_peerCount\020<\022\024\n\020f_getBlockRew" +
        "ard\020=*\241\007\n\007Retcode\022\n\n\006r_fail\020\000\022\r\n\tr_succe" +
        "ss\020\001\022\023\n\017r_wallet_nullcb\020\002\022\025\n\021r_heartbeat" +
        "Return\020\003\022\025\n\021r_privilegeReturn\020\004\022\r\n\tr_tx_" +
        "Init\020d\022\017\n\013r_tx_Recved\020e\022\020\n\014r_tx_Dropped\020" +
        "f\022\023\n\017r_tx_NewPending\020g\022\020\n\014r_tx_Pending\020h" +
        "\022\021\n\rr_tx_Included\020i\022\020\n\014r_tx_eventCb\020j\022\010\n" +
        "\004r_NA\020k\022\036\n\021r_fail_header_len\020\377\377\377\377\377\377\377\377\377\001\022" +
        " \n\023r_fail_service_call\020\376\377\377\377\377\377\377\377\377\001\022!\n\024r_f" +
        "ail_function_call\020\375\377\377\377\377\377\377\377\377\001\022&\n\031r_fail_f" +
        "unction_exception\020\374\377\377\377\377\377\377\377\377\001\022\037\n\022r_fail_a" +
        "pi_version\020\373\377\377\377\377\377\377\377\377\001\022\037\n\022r_fail_ct_bytec" +
        "ode\020\372\377\377\377\377\377\377\377\377\001\022\034\n\017r_fail_null_rsp\020\371\377\377\377\377\377" +
        "\377\377\377\001\022 \n\023r_fail_invalid_addr\020\370\377\377\377\377\377\377\377\377\001\022\'" +
        "\n\032r_fail_null_compile_source\020\367\377\377\377\377\377\377\377\377\001\022" +
        "$\n\027r_fail_compile_contract\020\366\377\377\377\377\377\377\377\377\001\022#\n" +
        "\026r_fail_sendTx_null_rep\020\365\377\377\377\377\377\377\377\377\001\022\036\n\021r_" +
        "fail_getcode_to\020\364\377\377\377\377\377\377\377\377\001\022*\n\035r_fail_get" +
        "TxReceipt_null_recp\020\363\377\377\377\377\377\377\377\377\001\022(\n\033r_fail" +
        "_zmqHandler_exception\020\362\377\377\377\377\377\377\377\377\001\022(\n\033r_fa" +
        "il_hit_pending_tx_limit\020\361\377\377\377\377\377\377\377\377\001\022%\n\030r_" +
        "fail_txqueue_exception\020\360\377\377\377\377\377\377\377\377\001\022&\n\031r_f" +
        "ail_function_arguments\020\357\377\377\377\377\377\377\377\377\001\022!\n\024r_f" +
        "ail_unsupport_api\020\356\377\377\377\377\377\377\377\377\001\022\033\n\016r_fail_u" +
        "nknown\020\355\377\377\377\377\377\377\377\377\001b\006proto3"
      };
      com.google.protobuf.Descriptors.FileDescriptor.InternalDescriptorAssigner assigner =
          new com.google.protobuf.Descriptors.FileDescriptor.    InternalDescriptorAssigner() {
            public com.google.protobuf.ExtensionRegistry assignDescriptors(
                com.google.protobuf.Descriptors.FileDescriptor root) {
              descriptor = root;
              return null;
            }
          };
      com.google.protobuf.Descriptors.FileDescriptor
        .internalBuildGeneratedFileFrom(descriptorData,
          new com.google.protobuf.Descriptors.FileDescriptor[] {
          }, assigner);
      internal_static_org_aion_api_server_pb_t_Contract_descriptor =
        getDescriptor().getMessageTypes().get(0);
      internal_static_org_aion_api_server_pb_t_Contract_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_Contract_descriptor,
          new java.lang.String[] { "Code", "Error", "Source", "CompilerVersion", "CompilerOptions", "AbiDef", "UserDoc", "DevDoc", });
      internal_static_org_aion_api_server_pb_t_AionTx_descriptor =
        getDescriptor().getMessageTypes().get(1);
      internal_static_org_aion_api_server_pb_t_AionTx_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_AionTx_descriptor,
          new java.lang.String[] { "TxHash", "From", "To", "Value", "Data", "Nonce", "NrgConsumed", "NrgPrice", "TxType", });
      internal_static_org_aion_api_server_pb_t_Node_descriptor =
        getDescriptor().getMessageTypes().get(2);
      internal_static_org_aion_api_server_pb_t_Node_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_Node_descriptor,
          new java.lang.String[] { "BlockNumber", "NodeId", "RemoteP2PIp", "RemoteP2PPort", "Latency", });
      internal_static_org_aion_api_server_pb_t_LgEle_descriptor =
        getDescriptor().getMessageTypes().get(3);
      internal_static_org_aion_api_server_pb_t_LgEle_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_LgEle_descriptor,
          new java.lang.String[] { "Address", "Data", "Topics", });
      internal_static_org_aion_api_server_pb_t_FilterCt_descriptor =
        getDescriptor().getMessageTypes().get(4);
      internal_static_org_aion_api_server_pb_t_FilterCt_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_FilterCt_descriptor,
          new java.lang.String[] { "From", "To", "ContractAddr", "Addresses", "Topics", "ExpireTime", });
      internal_static_org_aion_api_server_pb_t_EventCt_descriptor =
        getDescriptor().getMessageTypes().get(5);
      internal_static_org_aion_api_server_pb_t_EventCt_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_EventCt_descriptor,
          new java.lang.String[] { "Address", "Data", "BlockHash", "BlockNumber", "LogIndex", "EventName", "Removed", "TxIndex", "TxHash", });
      internal_static_org_aion_api_server_pb_t_BlockDetail_descriptor =
        getDescriptor().getMessageTypes().get(6);
      internal_static_org_aion_api_server_pb_t_BlockDetail_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_BlockDetail_descriptor,
          new java.lang.String[] { "BlockNumber", "Timestamp", "NrgConsumed", "NrgLimit", "ParentHash", "MinerAddress", "StateRoot", "TxTrieRoot", "ReceiptTrieRoot", "LogsBloom", "Difficulty", "TotalDifficulty", "ExtraData", "Nonce", "Solution", "Hash", "Size", "Tx", "BlockTime", });
      internal_static_org_aion_api_server_pb_t_TxDetail_descriptor =
        getDescriptor().getMessageTypes().get(7);
      internal_static_org_aion_api_server_pb_t_TxDetail_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_TxDetail_descriptor,
          new java.lang.String[] { "TxHash", "From", "To", "Value", "Data", "Nonce", "NrgConsumed", "NrgPrice", "TxIndex", "Contract", "Logs", "Timestamp", "Error", "Type", });
      internal_static_org_aion_api_server_pb_t_AccountDetail_descriptor =
        getDescriptor().getMessageTypes().get(8);
      internal_static_org_aion_api_server_pb_t_AccountDetail_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_AccountDetail_descriptor,
          new java.lang.String[] { "Address", "Balance", });
      internal_static_org_aion_api_server_pb_t_Block_descriptor =
        getDescriptor().getMessageTypes().get(9);
      internal_static_org_aion_api_server_pb_t_Block_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_Block_descriptor,
          new java.lang.String[] { "BlockNumber", "Timestamp", "NrgConsumed", "NrgLimit", "ParentHash", "MinerAddress", "StateRoot", "TxTrieRoot", "ReceiptTrieRoot", "LogsBloom", "Difficulty", "TotalDifficulty", "ExtraData", "Nonce", "Solution", "Hash", "Size", "TxHash", });
      internal_static_org_aion_api_server_pb_t_BlockSql_descriptor =
        getDescriptor().getMessageTypes().get(10);
      internal_static_org_aion_api_server_pb_t_BlockSql_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_BlockSql_descriptor,
          new java.lang.String[] { "BlockNumber", "BlockHash", "ParentHash", "Block", "Tx", });
      internal_static_org_aion_api_server_pb_rsp_errormsg_descriptor =
        getDescriptor().getMessageTypes().get(11);
      internal_static_org_aion_api_server_pb_rsp_errormsg_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_errormsg_descriptor,
          new java.lang.String[] { "Errormsg", });
      internal_static_org_aion_api_server_pb_rsp_protocolVersion_descriptor =
        getDescriptor().getMessageTypes().get(12);
      internal_static_org_aion_api_server_pb_rsp_protocolVersion_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_protocolVersion_descriptor,
          new java.lang.String[] { "Kernel", "Net", "Api", "Vm", "Db", "Miner", "Txpool", });
      internal_static_org_aion_api_server_pb_rsp_minerAddress_descriptor =
        getDescriptor().getMessageTypes().get(13);
      internal_static_org_aion_api_server_pb_rsp_minerAddress_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_minerAddress_descriptor,
          new java.lang.String[] { "MinerAddr", });
      internal_static_org_aion_api_server_pb_req_getBlockByNumber_descriptor =
        getDescriptor().getMessageTypes().get(14);
      internal_static_org_aion_api_server_pb_req_getBlockByNumber_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockByNumber_descriptor,
          new java.lang.String[] { "BlockNumber", });
      internal_static_org_aion_api_server_pb_rsp_getBlock_descriptor =
        getDescriptor().getMessageTypes().get(15);
      internal_static_org_aion_api_server_pb_rsp_getBlock_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlock_descriptor,
          new java.lang.String[] { "BlockNumber", "Timestamp", "NrgConsumed", "NrgLimit", "ParentHash", "MinerAddress", "StateRoot", "TxTrieRoot", "ReceiptTrieRoot", "LogsBloom", "Difficulty", "TotalDifficulty", "ExtraData", "Nonce", "Solution", "Hash", "Size", "TxHash", });
      internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_descriptor =
        getDescriptor().getMessageTypes().get(16);
      internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockHeaderByNumber_descriptor,
          new java.lang.String[] { "BlockNumber", });
      internal_static_org_aion_api_server_pb_rsp_getBlockHeader_descriptor =
        getDescriptor().getMessageTypes().get(17);
      internal_static_org_aion_api_server_pb_rsp_getBlockHeader_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockHeader_descriptor,
          new java.lang.String[] { "BlockNumber", "Timestamp", "NrgConsumed", "NrgLimit", "ParentHash", "MinerAddress", "StateRoot", "TxTrieRoot", "ReceiptTrieRoot", "LogsBloom", "Difficulty", "ExtraData", "Nonce", "Solution", "Hash", "Size", });
      internal_static_org_aion_api_server_pb_req_sendTransaction_descriptor =
        getDescriptor().getMessageTypes().get(18);
      internal_static_org_aion_api_server_pb_req_sendTransaction_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_sendTransaction_descriptor,
          new java.lang.String[] { "From", "To", "Value", "Data", "Nonce", "Nrg", "NrgPrice", });
      internal_static_org_aion_api_server_pb_rsp_sendTransaction_descriptor =
        getDescriptor().getMessageTypes().get(19);
      internal_static_org_aion_api_server_pb_rsp_sendTransaction_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_sendTransaction_descriptor,
          new java.lang.String[] { "TxHash", });
      internal_static_org_aion_api_server_pb_req_getTransactionByHash_descriptor =
        getDescriptor().getMessageTypes().get(20);
      internal_static_org_aion_api_server_pb_req_getTransactionByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getTransactionByHash_descriptor,
          new java.lang.String[] { "TxHash", });
      internal_static_org_aion_api_server_pb_rsp_getTransaction_descriptor =
        getDescriptor().getMessageTypes().get(21);
      internal_static_org_aion_api_server_pb_rsp_getTransaction_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getTransaction_descriptor,
          new java.lang.String[] { "TxIndex", "Blocknumber", "TimeStamp", "NrgConsume", "NrgPrice", "Blockhash", "From", "TxHash", "Data", "Nonce", "To", "Value", });
      internal_static_org_aion_api_server_pb_req_unlockAccount_descriptor =
        getDescriptor().getMessageTypes().get(22);
      internal_static_org_aion_api_server_pb_req_unlockAccount_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_unlockAccount_descriptor,
          new java.lang.String[] { "Account", "Password", "Duration", });
      internal_static_org_aion_api_server_pb_rsp_accounts_descriptor =
        getDescriptor().getMessageTypes().get(23);
      internal_static_org_aion_api_server_pb_rsp_accounts_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_accounts_descriptor,
          new java.lang.String[] { "Accout", });
      internal_static_org_aion_api_server_pb_req_compile_descriptor =
        getDescriptor().getMessageTypes().get(24);
      internal_static_org_aion_api_server_pb_req_compile_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_compile_descriptor,
          new java.lang.String[] { "Code", });
      internal_static_org_aion_api_server_pb_rsp_compile_descriptor =
        getDescriptor().getMessageTypes().get(25);
      internal_static_org_aion_api_server_pb_rsp_compile_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_compile_descriptor,
          new java.lang.String[] { "Constracts", });
      internal_static_org_aion_api_server_pb_rsp_compile_ConstractsEntry_descriptor =
        internal_static_org_aion_api_server_pb_rsp_compile_descriptor.getNestedTypes().get(0);
      internal_static_org_aion_api_server_pb_rsp_compile_ConstractsEntry_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_compile_ConstractsEntry_descriptor,
          new java.lang.String[] { "Key", "Value", });
      internal_static_org_aion_api_server_pb_req_getCode_descriptor =
        getDescriptor().getMessageTypes().get(26);
      internal_static_org_aion_api_server_pb_req_getCode_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getCode_descriptor,
          new java.lang.String[] { "Address", "Blocknumber", });
      internal_static_org_aion_api_server_pb_rsp_getCode_descriptor =
        getDescriptor().getMessageTypes().get(27);
      internal_static_org_aion_api_server_pb_rsp_getCode_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getCode_descriptor,
          new java.lang.String[] { "Code", });
      internal_static_org_aion_api_server_pb_req_contractDeploy_descriptor =
        getDescriptor().getMessageTypes().get(28);
      internal_static_org_aion_api_server_pb_req_contractDeploy_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_contractDeploy_descriptor,
          new java.lang.String[] { "NrgLimit", "NrgPrice", "From", "Data", "Value", });
      internal_static_org_aion_api_server_pb_rsp_contractDeploy_descriptor =
        getDescriptor().getMessageTypes().get(29);
      internal_static_org_aion_api_server_pb_rsp_contractDeploy_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_contractDeploy_descriptor,
          new java.lang.String[] { "TxHash", "ContractAddress", });
      internal_static_org_aion_api_server_pb_req_call_descriptor =
        getDescriptor().getMessageTypes().get(30);
      internal_static_org_aion_api_server_pb_req_call_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_call_descriptor,
          new java.lang.String[] { "From", "To", "Data", "Value", "Nrg", "NrgPrice", });
      internal_static_org_aion_api_server_pb_rsp_call_descriptor =
        getDescriptor().getMessageTypes().get(31);
      internal_static_org_aion_api_server_pb_rsp_call_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_call_descriptor,
          new java.lang.String[] { "Result", });
      internal_static_org_aion_api_server_pb_req_getBlockByHash_descriptor =
        getDescriptor().getMessageTypes().get(32);
      internal_static_org_aion_api_server_pb_req_getBlockByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockByHash_descriptor,
          new java.lang.String[] { "BlockHash", });
      internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_descriptor =
        getDescriptor().getMessageTypes().get(33);
      internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockHeaderByHash_descriptor,
          new java.lang.String[] { "BlockHash", });
      internal_static_org_aion_api_server_pb_req_getTransactionCount_descriptor =
        getDescriptor().getMessageTypes().get(34);
      internal_static_org_aion_api_server_pb_req_getTransactionCount_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getTransactionCount_descriptor,
          new java.lang.String[] { "Address", "Blocknumber", });
      internal_static_org_aion_api_server_pb_rsp_getTransactionCount_descriptor =
        getDescriptor().getMessageTypes().get(35);
      internal_static_org_aion_api_server_pb_rsp_getTransactionCount_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getTransactionCount_descriptor,
          new java.lang.String[] { "TxCount", });
      internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_descriptor =
        getDescriptor().getMessageTypes().get(36);
      internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getTransactionCountByHash_descriptor,
          new java.lang.String[] { "TxHash", });
      internal_static_org_aion_api_server_pb_rsp_blockNumber_descriptor =
        getDescriptor().getMessageTypes().get(37);
      internal_static_org_aion_api_server_pb_rsp_blockNumber_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_blockNumber_descriptor,
          new java.lang.String[] { "Blocknumber", });
      internal_static_org_aion_api_server_pb_req_getBalance_descriptor =
        getDescriptor().getMessageTypes().get(38);
      internal_static_org_aion_api_server_pb_req_getBalance_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBalance_descriptor,
          new java.lang.String[] { "Address", "BlockNumber", });
      internal_static_org_aion_api_server_pb_rsp_getBalance_descriptor =
        getDescriptor().getMessageTypes().get(39);
      internal_static_org_aion_api_server_pb_rsp_getBalance_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBalance_descriptor,
          new java.lang.String[] { "Balance", });
      internal_static_org_aion_api_server_pb_req_getStorageAt_descriptor =
        getDescriptor().getMessageTypes().get(40);
      internal_static_org_aion_api_server_pb_req_getStorageAt_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getStorageAt_descriptor,
          new java.lang.String[] { "Address", "Position", "Blocknumber", });
      internal_static_org_aion_api_server_pb_rsp_getStorageAt_descriptor =
        getDescriptor().getMessageTypes().get(41);
      internal_static_org_aion_api_server_pb_rsp_getStorageAt_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getStorageAt_descriptor,
          new java.lang.String[] { "Storage", });
      internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_descriptor =
        getDescriptor().getMessageTypes().get(42);
      internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByHash_descriptor,
          new java.lang.String[] { "BlockHash", });
      internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_descriptor =
        getDescriptor().getMessageTypes().get(43);
      internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockTransactionCount_descriptor,
          new java.lang.String[] { "TxCount", });
      internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_descriptor =
        getDescriptor().getMessageTypes().get(44);
      internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockTransactionCountByNumber_descriptor,
          new java.lang.String[] { "BlockNumber", });
      internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_descriptor =
        getDescriptor().getMessageTypes().get(45);
      internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getTransactionByBlockHashAndIndex_descriptor,
          new java.lang.String[] { "BlockHash", "TxIndex", });
      internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_descriptor =
        getDescriptor().getMessageTypes().get(46);
      internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getTransactionByBlockNumberAndIndex_descriptor,
          new java.lang.String[] { "BlockNumber", "TxIndex", });
      internal_static_org_aion_api_server_pb_req_getTransactionReceipt_descriptor =
        getDescriptor().getMessageTypes().get(47);
      internal_static_org_aion_api_server_pb_req_getTransactionReceipt_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getTransactionReceipt_descriptor,
          new java.lang.String[] { "TxHash", });
      internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_descriptor =
        getDescriptor().getMessageTypes().get(48);
      internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getTransactionReceipt_descriptor,
          new java.lang.String[] { "TxIndex", "BlockNumber", "NrgConsumed", "CumulativeNrgUsed", "BlockHash", "TxHash", "From", "To", "ContractAddress", "Logs", });
      internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_descriptor =
        getDescriptor().getMessageTypes().get(49);
      internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getUncleByBlockHashAndIndex_descriptor,
          new java.lang.String[] { "BlockHash", "Index", });
      internal_static_org_aion_api_server_pb_rsp_getCompilers_descriptor =
        getDescriptor().getMessageTypes().get(50);
      internal_static_org_aion_api_server_pb_rsp_getCompilers_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getCompilers_descriptor,
          new java.lang.String[] { "Compiler", });
      internal_static_org_aion_api_server_pb_req_compileSolidityZip_descriptor =
        getDescriptor().getMessageTypes().get(51);
      internal_static_org_aion_api_server_pb_req_compileSolidityZip_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_compileSolidityZip_descriptor,
          new java.lang.String[] { "Zipfile", "EntryPoint", });
      internal_static_org_aion_api_server_pb_rsp_getWork_descriptor =
        getDescriptor().getMessageTypes().get(52);
      internal_static_org_aion_api_server_pb_rsp_getWork_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getWork_descriptor,
          new java.lang.String[] { "Work", });
      internal_static_org_aion_api_server_pb_req_submitWork_descriptor =
        getDescriptor().getMessageTypes().get(53);
      internal_static_org_aion_api_server_pb_req_submitWork_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_submitWork_descriptor,
          new java.lang.String[] { "Nonce", "Solution", "Digest", });
      internal_static_org_aion_api_server_pb_rsp_submitWork_descriptor =
        getDescriptor().getMessageTypes().get(54);
      internal_static_org_aion_api_server_pb_rsp_submitWork_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_submitWork_descriptor,
          new java.lang.String[] { "WorkAccepted", });
      internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_descriptor =
        getDescriptor().getMessageTypes().get(55);
      internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_fetchQueuedTransactions_descriptor,
          new java.lang.String[] { "Tx", });
      internal_static_org_aion_api_server_pb_req_rawTransaction_descriptor =
        getDescriptor().getMessageTypes().get(56);
      internal_static_org_aion_api_server_pb_req_rawTransaction_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_rawTransaction_descriptor,
          new java.lang.String[] { "EncodedTx", });
      internal_static_org_aion_api_server_pb_req_estimateNrg_descriptor =
        getDescriptor().getMessageTypes().get(57);
      internal_static_org_aion_api_server_pb_req_estimateNrg_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_estimateNrg_descriptor,
          new java.lang.String[] { "From", "To", "Value", "Data", "Nrg", "NrgPrice", });
      internal_static_org_aion_api_server_pb_rsp_estimateNrg_descriptor =
        getDescriptor().getMessageTypes().get(58);
      internal_static_org_aion_api_server_pb_rsp_estimateNrg_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_estimateNrg_descriptor,
          new java.lang.String[] { "Nrg", });
      internal_static_org_aion_api_server_pb_rsp_mining_descriptor =
        getDescriptor().getMessageTypes().get(59);
      internal_static_org_aion_api_server_pb_rsp_mining_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_mining_descriptor,
          new java.lang.String[] { "Mining", });
      internal_static_org_aion_api_server_pb_rsp_hashrate_descriptor =
        getDescriptor().getMessageTypes().get(60);
      internal_static_org_aion_api_server_pb_rsp_hashrate_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_hashrate_descriptor,
          new java.lang.String[] { "Hashrate", });
      internal_static_org_aion_api_server_pb_rsp_getActiveNodes_descriptor =
        getDescriptor().getMessageTypes().get(61);
      internal_static_org_aion_api_server_pb_rsp_getActiveNodes_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getActiveNodes_descriptor,
          new java.lang.String[] { "Node", });
      internal_static_org_aion_api_server_pb_rsp_getStaticNodes_descriptor =
        getDescriptor().getMessageTypes().get(62);
      internal_static_org_aion_api_server_pb_rsp_getStaticNodes_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getStaticNodes_descriptor,
          new java.lang.String[] { "Node", });
      internal_static_org_aion_api_server_pb_rsp_getSolcVersion_descriptor =
        getDescriptor().getMessageTypes().get(63);
      internal_static_org_aion_api_server_pb_rsp_getSolcVersion_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getSolcVersion_descriptor,
          new java.lang.String[] { "Ver", });
      internal_static_org_aion_api_server_pb_rsp_isSyncing_descriptor =
        getDescriptor().getMessageTypes().get(64);
      internal_static_org_aion_api_server_pb_rsp_isSyncing_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_isSyncing_descriptor,
          new java.lang.String[] { "Syncing", });
      internal_static_org_aion_api_server_pb_rsp_syncInfo_descriptor =
        getDescriptor().getMessageTypes().get(65);
      internal_static_org_aion_api_server_pb_rsp_syncInfo_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_syncInfo_descriptor,
          new java.lang.String[] { "Syncing", "NetworkBestBlock", "ChainBestBlock", "MaxImportBlocks", "StartingBlock", });
      internal_static_org_aion_api_server_pb_rsp_systemInfo_descriptor =
        getDescriptor().getMessageTypes().get(66);
      internal_static_org_aion_api_server_pb_rsp_systemInfo_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_systemInfo_descriptor,
          new java.lang.String[] { "CpuUsage", "MemoryUsage", "DBSize", });
      internal_static_org_aion_api_server_pb_req_eventRegister_descriptor =
        getDescriptor().getMessageTypes().get(67);
      internal_static_org_aion_api_server_pb_req_eventRegister_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_eventRegister_descriptor,
          new java.lang.String[] { "Events", "Filter", });
      internal_static_org_aion_api_server_pb_rsp_eventRegister_descriptor =
        getDescriptor().getMessageTypes().get(68);
      internal_static_org_aion_api_server_pb_rsp_eventRegister_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_eventRegister_descriptor,
          new java.lang.String[] { "Result", });
      internal_static_org_aion_api_server_pb_req_eventDeregister_descriptor =
        getDescriptor().getMessageTypes().get(69);
      internal_static_org_aion_api_server_pb_req_eventDeregister_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_eventDeregister_descriptor,
          new java.lang.String[] { "Events", "ContractAddr", });
      internal_static_org_aion_api_server_pb_rsp_eventDeregister_descriptor =
        getDescriptor().getMessageTypes().get(70);
      internal_static_org_aion_api_server_pb_rsp_eventDeregister_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_eventDeregister_descriptor,
          new java.lang.String[] { "Result", });
      internal_static_org_aion_api_server_pb_rsp_EventCtCallback_descriptor =
        getDescriptor().getMessageTypes().get(71);
      internal_static_org_aion_api_server_pb_rsp_EventCtCallback_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_EventCtCallback_descriptor,
          new java.lang.String[] { "Ec", });
      internal_static_org_aion_api_server_pb_req_accountCreate_descriptor =
        getDescriptor().getMessageTypes().get(72);
      internal_static_org_aion_api_server_pb_req_accountCreate_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_accountCreate_descriptor,
          new java.lang.String[] { "Password", "PrivateKey", });
      internal_static_org_aion_api_server_pb_rsp_accountCreate_descriptor =
        getDescriptor().getMessageTypes().get(73);
      internal_static_org_aion_api_server_pb_rsp_accountCreate_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_accountCreate_descriptor,
          new java.lang.String[] { "Address", "PrivateKey", });
      internal_static_org_aion_api_server_pb_req_accountlock_descriptor =
        getDescriptor().getMessageTypes().get(74);
      internal_static_org_aion_api_server_pb_req_accountlock_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_accountlock_descriptor,
          new java.lang.String[] { "Account", "Password", });
      internal_static_org_aion_api_server_pb_rsp_accountlock_descriptor =
        getDescriptor().getMessageTypes().get(75);
      internal_static_org_aion_api_server_pb_rsp_accountlock_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_accountlock_descriptor,
          new java.lang.String[] { "Locked", });
      internal_static_org_aion_api_server_pb_req_userPrivilege_descriptor =
        getDescriptor().getMessageTypes().get(76);
      internal_static_org_aion_api_server_pb_req_userPrivilege_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_userPrivilege_descriptor,
          new java.lang.String[] { "Username", "Password", });
      internal_static_org_aion_api_server_pb_rsp_userPrivilege_descriptor =
        getDescriptor().getMessageTypes().get(77);
      internal_static_org_aion_api_server_pb_rsp_userPrivilege_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_userPrivilege_descriptor,
          new java.lang.String[] { "Privilege", });
      internal_static_org_aion_api_server_pb_req_queryCtEvents_descriptor =
        getDescriptor().getMessageTypes().get(78);
      internal_static_org_aion_api_server_pb_req_queryCtEvents_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_queryCtEvents_descriptor,
          new java.lang.String[] { "Filter", });
      internal_static_org_aion_api_server_pb_rsp_queryCtEvents_descriptor =
        getDescriptor().getMessageTypes().get(79);
      internal_static_org_aion_api_server_pb_rsp_queryCtEvents_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_queryCtEvents_descriptor,
          new java.lang.String[] { "Ec", });
      internal_static_org_aion_api_server_pb_t_PrivateKey_descriptor =
        getDescriptor().getMessageTypes().get(80);
      internal_static_org_aion_api_server_pb_t_PrivateKey_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_PrivateKey_descriptor,
          new java.lang.String[] { "PrivateKey", "Password", });
      internal_static_org_aion_api_server_pb_req_importAccounts_descriptor =
        getDescriptor().getMessageTypes().get(81);
      internal_static_org_aion_api_server_pb_req_importAccounts_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_importAccounts_descriptor,
          new java.lang.String[] { "PrivateKey", });
      internal_static_org_aion_api_server_pb_rsp_importAccounts_descriptor =
        getDescriptor().getMessageTypes().get(82);
      internal_static_org_aion_api_server_pb_rsp_importAccounts_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_importAccounts_descriptor,
          new java.lang.String[] { "InvalidKey", });
      internal_static_org_aion_api_server_pb_t_Key_descriptor =
        getDescriptor().getMessageTypes().get(83);
      internal_static_org_aion_api_server_pb_t_Key_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_t_Key_descriptor,
          new java.lang.String[] { "Address", "Password", });
      internal_static_org_aion_api_server_pb_req_exportAccounts_descriptor =
        getDescriptor().getMessageTypes().get(84);
      internal_static_org_aion_api_server_pb_req_exportAccounts_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_exportAccounts_descriptor,
          new java.lang.String[] { "KeyFile", });
      internal_static_org_aion_api_server_pb_rsp_exportAccounts_descriptor =
        getDescriptor().getMessageTypes().get(85);
      internal_static_org_aion_api_server_pb_rsp_exportAccounts_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_exportAccounts_descriptor,
          new java.lang.String[] { "KeyFile", "FailedKey", });
      internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_descriptor =
        getDescriptor().getMessageTypes().get(86);
      internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getCurrentTotalDifficulty_descriptor,
          new java.lang.String[] { "TotalDiff", });
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_descriptor =
        getDescriptor().getMessageTypes().get(87);
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockDetailsByNumber_descriptor,
          new java.lang.String[] { "BlkNumbers", });
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_descriptor =
        getDescriptor().getMessageTypes().get(88);
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByNumber_descriptor,
          new java.lang.String[] { "BlkDetails", });
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_descriptor =
        getDescriptor().getMessageTypes().get(89);
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockDetailsByLatest_descriptor,
          new java.lang.String[] { "Count", });
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_descriptor =
        getDescriptor().getMessageTypes().get(90);
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByLatest_descriptor,
          new java.lang.String[] { "BlkDetails", });
      internal_static_org_aion_api_server_pb_req_getBlocksByLatest_descriptor =
        getDescriptor().getMessageTypes().get(91);
      internal_static_org_aion_api_server_pb_req_getBlocksByLatest_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlocksByLatest_descriptor,
          new java.lang.String[] { "Count", });
      internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_descriptor =
        getDescriptor().getMessageTypes().get(92);
      internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlocksByLatest_descriptor,
          new java.lang.String[] { "Blks", });
      internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_descriptor =
        getDescriptor().getMessageTypes().get(93);
      internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getAccountDetailsByAddressList_descriptor,
          new java.lang.String[] { "Addresses", });
      internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_descriptor =
        getDescriptor().getMessageTypes().get(94);
      internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getAccountDetailsByAddressList_descriptor,
          new java.lang.String[] { "Accounts", });
      internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_descriptor =
        getDescriptor().getMessageTypes().get(95);
      internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockSqlByRange_descriptor,
          new java.lang.String[] { "BlkNumberStart", "BlkNumberEnd", });
      internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_descriptor =
        getDescriptor().getMessageTypes().get(96);
      internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockSqlByRange_descriptor,
          new java.lang.String[] { "BlkSql", });
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_descriptor =
        getDescriptor().getMessageTypes().get(97);
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockDetailsByRange_descriptor,
          new java.lang.String[] { "BlkNumberStart", "BlkNumberEnd", });
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_descriptor =
        getDescriptor().getMessageTypes().get(98);
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByRange_descriptor,
          new java.lang.String[] { "BlkDetails", });
      internal_static_org_aion_api_server_pb_req_getNonce_descriptor =
        getDescriptor().getMessageTypes().get(99);
      internal_static_org_aion_api_server_pb_req_getNonce_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getNonce_descriptor,
          new java.lang.String[] { "Address", });
      internal_static_org_aion_api_server_pb_rsp_getNonce_descriptor =
        getDescriptor().getMessageTypes().get(100);
      internal_static_org_aion_api_server_pb_rsp_getNonce_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getNonce_descriptor,
          new java.lang.String[] { "Nonce", });
      internal_static_org_aion_api_server_pb_rsp_getNrgPrice_descriptor =
        getDescriptor().getMessageTypes().get(101);
      internal_static_org_aion_api_server_pb_rsp_getNrgPrice_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getNrgPrice_descriptor,
          new java.lang.String[] { "NrgPrice", });
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_descriptor =
        getDescriptor().getMessageTypes().get(102);
      internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockDetailsByHash_descriptor,
          new java.lang.String[] { "BlockHash", });
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_descriptor =
        getDescriptor().getMessageTypes().get(103);
      internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockDetailsByHash_descriptor,
          new java.lang.String[] { "BlkDetails", });
      internal_static_org_aion_api_server_pb_rsp_listening_descriptor =
        getDescriptor().getMessageTypes().get(104);
      internal_static_org_aion_api_server_pb_rsp_listening_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_listening_descriptor,
          new java.lang.String[] { "IsListening", });
      internal_static_org_aion_api_server_pb_rsp_peerCount_descriptor =
        getDescriptor().getMessageTypes().get(105);
      internal_static_org_aion_api_server_pb_rsp_peerCount_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_peerCount_descriptor,
          new java.lang.String[] { "Peers", });
      internal_static_org_aion_api_server_pb_req_getBlockReward_descriptor =
        getDescriptor().getMessageTypes().get(106);
      internal_static_org_aion_api_server_pb_req_getBlockReward_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_req_getBlockReward_descriptor,
          new java.lang.String[] { "BlockNumber", });
      internal_static_org_aion_api_server_pb_rsp_getBlockReward_descriptor =
        getDescriptor().getMessageTypes().get(107);
      internal_static_org_aion_api_server_pb_rsp_getBlockReward_fieldAccessorTable = new
        com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
          internal_static_org_aion_api_server_pb_rsp_getBlockReward_descriptor,
          new java.lang.String[] { "Reward", });
    }
  
    // @@protoc_insertion_point(outer_class_scope)
  }
  