# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: CasperMessage.proto

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

_sym_db = _symbol_database.Default()


from .scalapb import scalapb_pb2 as scalapb_dot_scalapb__pb2
from . import RhoTypes_pb2 as RhoTypes__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='CasperMessage.proto',
  package='casper',
  syntax='proto3',
  serialized_options=_b('\342?B\n\033coop.rchain.casper.protocol\020\001\"\037sealed trait CasperMessageProto(\001'),
  serialized_pb=_b('\n\x13\x43\x61sperMessage.proto\x12\x06\x63\x61sper\x1a\x15scalapb/scalapb.proto\x1a\x0eRhoTypes.proto\"=\n\x14HasBlockRequestProto\x12\x0c\n\x04hash\x18\x01 \x01(\x0c:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"6\n\rHasBlockProto\x12\x0c\n\x04hash\x18\x01 \x01(\x0c:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\":\n\x11\x42lockRequestProto\x12\x0c\n\x04hash\x18\x01 \x01(\x0c:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"4\n\x19\x46orkChoiceTipRequestProto:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"v\n\x1b\x41pprovedBlockCandidateProto\x12(\n\x05\x62lock\x18\x01 \x01(\x0b\x32\x19.casper.BlockMessageProto\x12\x14\n\x0crequiredSigs\x18\x02 \x01(\x05:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"\x8c\x01\n\x14UnapprovedBlockProto\x12\x36\n\tcandidate\x18\x01 \x01(\x0b\x32#.casper.ApprovedBlockCandidateProto\x12\x11\n\ttimestamp\x18\x02 \x01(\x03\x12\x10\n\x08\x64uration\x18\x03 \x01(\x03:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\">\n\tSignature\x12\x11\n\tpublicKey\x18\x01 \x01(\x0c\x12\x11\n\talgorithm\x18\x02 \x01(\t\x12\x0b\n\x03sig\x18\x03 \x01(\x0c\"\x85\x01\n\x12\x42lockApprovalProto\x12\x36\n\tcandidate\x18\x01 \x01(\x0b\x32#.casper.ApprovedBlockCandidateProto\x12\x1e\n\x03sig\x18\x02 \x01(\x0b\x32\x11.casper.Signature:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"\x86\x01\n\x12\x41pprovedBlockProto\x12\x36\n\tcandidate\x18\x01 \x01(\x0b\x32#.casper.ApprovedBlockCandidateProto\x12\x1f\n\x04sigs\x18\x02 \x03(\x0b\x32\x11.casper.Signature:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"H\n\x19\x41pprovedBlockRequestProto\x12\x12\n\nidentifier\x18\x01 \x01(\t:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"c\n\x1dNoApprovedBlockAvailableProto\x12\x12\n\nidentifier\x18\x01 \x01(\t\x12\x15\n\rnodeIdentifer\x18\x02 \x01(\t:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"\xa1\x02\n\x11\x42lockMessageProto\x12\x11\n\tblockHash\x18\x01 \x01(\x0c\x12#\n\x06header\x18\x02 \x01(\x0b\x32\x13.casper.HeaderProto\x12\x1f\n\x04\x62ody\x18\x03 \x01(\x0b\x32\x11.casper.BodyProto\x12\x32\n\x0ejustifications\x18\x04 \x03(\x0b\x32\x1a.casper.JustificationProto\x12\x0e\n\x06sender\x18\x05 \x01(\x0c\x12\x0e\n\x06seqNum\x18\x06 \x01(\x05\x12\x0b\n\x03sig\x18\x07 \x01(\x0c\x12\x14\n\x0csigAlgorithm\x18\x08 \x01(\t\x12\x0f\n\x07shardId\x18\t \x01(\t\x12\x12\n\nextraBytes\x18\n \x01(\x0c:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"T\n\x15\x42lockHashMessageProto\x12\x0c\n\x04hash\x18\x01 \x01(\x0c\x12\x14\n\x0c\x62lockCreator\x18\x02 \x01(\x0c:\x17\xe2?\x14\n\x12\x43\x61sperMessageProto\"\xdb\x02\n\x15\x42lockMetadataInternal\x12\x11\n\tblockHash\x18\x01 \x01(\x0c\x12/\n\x07parents\x18\x02 \x03(\x0c\x42\x1e\xe2?\x1b\x1a\x19\x63ollection.immutable.List\x12\x0e\n\x06sender\x18\x03 \x01(\x0c\x12R\n\x0ejustifications\x18\x04 \x03(\x0b\x32\x1a.casper.JustificationProtoB\x1e\xe2?\x1b\x1a\x19\x63ollection.immutable.List\x12@\n\x05\x62onds\x18\x05 \x03(\x0b\x32\x11.casper.BondProtoB\x1e\xe2?\x1b\x1a\x19\x63ollection.immutable.List\x12\x10\n\x08\x62lockNum\x18\x06 \x01(\x03\x12\x0e\n\x06seqNum\x18\x07 \x01(\x05\x12\x0f\n\x07invalid\x18\x08 \x01(\x08:%\xe2?\"\" coop.rchain.models.BlockMetadata\"^\n\x0bHeaderProto\x12\x17\n\x0fparentsHashList\x18\x01 \x03(\x0c\x12\x11\n\ttimestamp\x18\x05 \x01(\x03\x12\x0f\n\x07version\x18\x06 \x01(\x03\x12\x12\n\nextraBytes\x18\x07 \x01(\x0c\"\xac\x01\n\x0f\x44\x65ployDataProto\x12\x10\n\x08\x64\x65ployer\x18\x01 \x01(\x0c\x12\x0c\n\x04term\x18\x02 \x01(\t\x12\x11\n\ttimestamp\x18\x03 \x01(\x03\x12\x0b\n\x03sig\x18\x04 \x01(\x0c\x12\x14\n\x0csigAlgorithm\x18\x05 \x01(\t\x12\x11\n\tphloPrice\x18\x07 \x01(\x03\x12\x11\n\tphloLimit\x18\x08 \x01(\x03\x12\x1d\n\x15validAfterBlockNumber\x18\n \x01(\x03\"\xa8\x01\n\x14ProcessedDeployProto\x12\'\n\x06\x64\x65ploy\x18\x01 \x01(\x0b\x32\x17.casper.DeployDataProto\x12\x14\n\x04\x63ost\x18\x02 \x01(\x0b\x32\x06.PCost\x12%\n\tdeployLog\x18\x03 \x03(\x0b\x32\x12.casper.EventProto\x12\x0f\n\x07\x65rrored\x18\x05 \x01(\x08\x12\x19\n\x11systemDeployError\x18\x06 \x01(\t\"U\n\x1aProcessedSystemDeployProto\x12%\n\tdeployLog\x18\x01 \x03(\x0b\x32\x12.casper.EventProto\x12\x10\n\x08\x65rrorMsg\x18\x02 \x01(\t\"w\n\tBodyProto\x12\'\n\x05state\x18\x01 \x01(\x0b\x32\x18.casper.RChainStateProto\x12-\n\x07\x64\x65ploys\x18\x02 \x03(\x0b\x32\x1c.casper.ProcessedDeployProto\x12\x12\n\nextraBytes\x18\x03 \x01(\x0c\"@\n\x12JustificationProto\x12\x11\n\tvalidator\x18\x01 \x01(\x0c\x12\x17\n\x0flatestBlockHash\x18\x02 \x01(\x0c\"v\n\x10RChainStateProto\x12\x14\n\x0cpreStateHash\x18\x01 \x01(\x0c\x12\x15\n\rpostStateHash\x18\x02 \x01(\x0c\x12 \n\x05\x62onds\x18\x03 \x03(\x0b\x32\x11.casper.BondProto\x12\x13\n\x0b\x62lockNumber\x18\x04 \x01(\x03\"\xa2\x01\n\nEventProto\x12,\n\x07produce\x18\x01 \x01(\x0b\x32\x19.casper.ProduceEventProtoH\x00\x12,\n\x07\x63onsume\x18\x02 \x01(\x0b\x32\x19.casper.ConsumeEventProtoH\x00\x12&\n\x04\x63omm\x18\x03 \x01(\x0b\x32\x16.casper.CommEventProtoH\x00\x42\x10\n\x0e\x65vent_instance\"b\n\x11ProduceEventProto\x12\x14\n\x0c\x63hannelsHash\x18\x01 \x01(\x0c\x12\x0c\n\x04hash\x18\x02 \x01(\x0c\x12\x12\n\npersistent\x18\x03 \x01(\x08\x12\x15\n\rtimesRepeated\x18\x04 \x01(\x05\"M\n\x11\x43onsumeEventProto\x12\x16\n\x0e\x63hannelsHashes\x18\x01 \x03(\x0c\x12\x0c\n\x04hash\x18\x02 \x01(\x0c\x12\x12\n\npersistent\x18\x03 \x01(\x08\"\x8b\x01\n\x0e\x43ommEventProto\x12*\n\x07\x63onsume\x18\x01 \x01(\x0b\x32\x19.casper.ConsumeEventProto\x12+\n\x08produces\x18\x02 \x03(\x0b\x32\x19.casper.ProduceEventProto\x12 \n\x05peeks\x18\x03 \x03(\x0b\x32\x11.casper.PeekProto\"!\n\tPeekProto\x12\x14\n\x0c\x63hannelIndex\x18\x01 \x01(\x05\"-\n\tBondProto\x12\x11\n\tvalidator\x18\x01 \x01(\x0c\x12\r\n\x05stake\x18\x02 \x01(\x03\x42\x45\xe2?B\n\x1b\x63oop.rchain.casper.protocol\x10\x01\"\x1fsealed trait CasperMessageProto(\x01\x62\x06proto3')
  ,
  dependencies=[scalapb_dot_scalapb__pb2.DESCRIPTOR,RhoTypes__pb2.DESCRIPTOR,])




_HASBLOCKREQUESTPROTO = _descriptor.Descriptor(
  name='HasBlockRequestProto',
  full_name='casper.HasBlockRequestProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hash', full_name='casper.HasBlockRequestProto.hash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=70,
  serialized_end=131,
)


_HASBLOCKPROTO = _descriptor.Descriptor(
  name='HasBlockProto',
  full_name='casper.HasBlockProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hash', full_name='casper.HasBlockProto.hash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=133,
  serialized_end=187,
)


_BLOCKREQUESTPROTO = _descriptor.Descriptor(
  name='BlockRequestProto',
  full_name='casper.BlockRequestProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hash', full_name='casper.BlockRequestProto.hash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=189,
  serialized_end=247,
)


_FORKCHOICETIPREQUESTPROTO = _descriptor.Descriptor(
  name='ForkChoiceTipRequestProto',
  full_name='casper.ForkChoiceTipRequestProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=249,
  serialized_end=301,
)


_APPROVEDBLOCKCANDIDATEPROTO = _descriptor.Descriptor(
  name='ApprovedBlockCandidateProto',
  full_name='casper.ApprovedBlockCandidateProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='block', full_name='casper.ApprovedBlockCandidateProto.block', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='requiredSigs', full_name='casper.ApprovedBlockCandidateProto.requiredSigs', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=303,
  serialized_end=421,
)


_UNAPPROVEDBLOCKPROTO = _descriptor.Descriptor(
  name='UnapprovedBlockProto',
  full_name='casper.UnapprovedBlockProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='candidate', full_name='casper.UnapprovedBlockProto.candidate', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='casper.UnapprovedBlockProto.timestamp', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='duration', full_name='casper.UnapprovedBlockProto.duration', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=424,
  serialized_end=564,
)


_SIGNATURE = _descriptor.Descriptor(
  name='Signature',
  full_name='casper.Signature',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='publicKey', full_name='casper.Signature.publicKey', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='algorithm', full_name='casper.Signature.algorithm', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sig', full_name='casper.Signature.sig', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=566,
  serialized_end=628,
)


_BLOCKAPPROVALPROTO = _descriptor.Descriptor(
  name='BlockApprovalProto',
  full_name='casper.BlockApprovalProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='candidate', full_name='casper.BlockApprovalProto.candidate', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sig', full_name='casper.BlockApprovalProto.sig', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=631,
  serialized_end=764,
)


_APPROVEDBLOCKPROTO = _descriptor.Descriptor(
  name='ApprovedBlockProto',
  full_name='casper.ApprovedBlockProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='candidate', full_name='casper.ApprovedBlockProto.candidate', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sigs', full_name='casper.ApprovedBlockProto.sigs', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=767,
  serialized_end=901,
)


_APPROVEDBLOCKREQUESTPROTO = _descriptor.Descriptor(
  name='ApprovedBlockRequestProto',
  full_name='casper.ApprovedBlockRequestProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='identifier', full_name='casper.ApprovedBlockRequestProto.identifier', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=903,
  serialized_end=975,
)


_NOAPPROVEDBLOCKAVAILABLEPROTO = _descriptor.Descriptor(
  name='NoApprovedBlockAvailableProto',
  full_name='casper.NoApprovedBlockAvailableProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='identifier', full_name='casper.NoApprovedBlockAvailableProto.identifier', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='nodeIdentifer', full_name='casper.NoApprovedBlockAvailableProto.nodeIdentifer', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=977,
  serialized_end=1076,
)


_BLOCKMESSAGEPROTO = _descriptor.Descriptor(
  name='BlockMessageProto',
  full_name='casper.BlockMessageProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='blockHash', full_name='casper.BlockMessageProto.blockHash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='header', full_name='casper.BlockMessageProto.header', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='body', full_name='casper.BlockMessageProto.body', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='justifications', full_name='casper.BlockMessageProto.justifications', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sender', full_name='casper.BlockMessageProto.sender', index=4,
      number=5, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='seqNum', full_name='casper.BlockMessageProto.seqNum', index=5,
      number=6, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sig', full_name='casper.BlockMessageProto.sig', index=6,
      number=7, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sigAlgorithm', full_name='casper.BlockMessageProto.sigAlgorithm', index=7,
      number=8, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='shardId', full_name='casper.BlockMessageProto.shardId', index=8,
      number=9, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='extraBytes', full_name='casper.BlockMessageProto.extraBytes', index=9,
      number=10, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1079,
  serialized_end=1368,
)


_BLOCKHASHMESSAGEPROTO = _descriptor.Descriptor(
  name='BlockHashMessageProto',
  full_name='casper.BlockHashMessageProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='hash', full_name='casper.BlockHashMessageProto.hash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='blockCreator', full_name='casper.BlockHashMessageProto.blockCreator', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\024\n\022CasperMessageProto'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1370,
  serialized_end=1454,
)


_BLOCKMETADATAINTERNAL = _descriptor.Descriptor(
  name='BlockMetadataInternal',
  full_name='casper.BlockMetadataInternal',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='blockHash', full_name='casper.BlockMetadataInternal.blockHash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='parents', full_name='casper.BlockMetadataInternal.parents', index=1,
      number=2, type=12, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=_b('\342?\033\032\031collection.immutable.List'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sender', full_name='casper.BlockMetadataInternal.sender', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='justifications', full_name='casper.BlockMetadataInternal.justifications', index=3,
      number=4, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=_b('\342?\033\032\031collection.immutable.List'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='bonds', full_name='casper.BlockMetadataInternal.bonds', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=_b('\342?\033\032\031collection.immutable.List'), file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='blockNum', full_name='casper.BlockMetadataInternal.blockNum', index=5,
      number=6, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='seqNum', full_name='casper.BlockMetadataInternal.seqNum', index=6,
      number=7, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='invalid', full_name='casper.BlockMetadataInternal.invalid', index=7,
      number=8, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=_b('\342?\"\" coop.rchain.models.BlockMetadata'),
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1457,
  serialized_end=1804,
)


_HEADERPROTO = _descriptor.Descriptor(
  name='HeaderProto',
  full_name='casper.HeaderProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='parentsHashList', full_name='casper.HeaderProto.parentsHashList', index=0,
      number=1, type=12, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='casper.HeaderProto.timestamp', index=1,
      number=5, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='version', full_name='casper.HeaderProto.version', index=2,
      number=6, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='extraBytes', full_name='casper.HeaderProto.extraBytes', index=3,
      number=7, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1806,
  serialized_end=1900,
)


_DEPLOYDATAPROTO = _descriptor.Descriptor(
  name='DeployDataProto',
  full_name='casper.DeployDataProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deployer', full_name='casper.DeployDataProto.deployer', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='term', full_name='casper.DeployDataProto.term', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='casper.DeployDataProto.timestamp', index=2,
      number=3, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sig', full_name='casper.DeployDataProto.sig', index=3,
      number=4, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='sigAlgorithm', full_name='casper.DeployDataProto.sigAlgorithm', index=4,
      number=5, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='phloPrice', full_name='casper.DeployDataProto.phloPrice', index=5,
      number=7, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='phloLimit', full_name='casper.DeployDataProto.phloLimit', index=6,
      number=8, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='validAfterBlockNumber', full_name='casper.DeployDataProto.validAfterBlockNumber', index=7,
      number=10, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1903,
  serialized_end=2075,
)


_PROCESSEDDEPLOYPROTO = _descriptor.Descriptor(
  name='ProcessedDeployProto',
  full_name='casper.ProcessedDeployProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deploy', full_name='casper.ProcessedDeployProto.deploy', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='cost', full_name='casper.ProcessedDeployProto.cost', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='deployLog', full_name='casper.ProcessedDeployProto.deployLog', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='errored', full_name='casper.ProcessedDeployProto.errored', index=3,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='systemDeployError', full_name='casper.ProcessedDeployProto.systemDeployError', index=4,
      number=6, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2078,
  serialized_end=2246,
)


_PROCESSEDSYSTEMDEPLOYPROTO = _descriptor.Descriptor(
  name='ProcessedSystemDeployProto',
  full_name='casper.ProcessedSystemDeployProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='deployLog', full_name='casper.ProcessedSystemDeployProto.deployLog', index=0,
      number=1, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='errorMsg', full_name='casper.ProcessedSystemDeployProto.errorMsg', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2248,
  serialized_end=2333,
)


_BODYPROTO = _descriptor.Descriptor(
  name='BodyProto',
  full_name='casper.BodyProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='state', full_name='casper.BodyProto.state', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='deploys', full_name='casper.BodyProto.deploys', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='extraBytes', full_name='casper.BodyProto.extraBytes', index=2,
      number=3, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2335,
  serialized_end=2454,
)


_JUSTIFICATIONPROTO = _descriptor.Descriptor(
  name='JustificationProto',
  full_name='casper.JustificationProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='validator', full_name='casper.JustificationProto.validator', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='latestBlockHash', full_name='casper.JustificationProto.latestBlockHash', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2456,
  serialized_end=2520,
)


_RCHAINSTATEPROTO = _descriptor.Descriptor(
  name='RChainStateProto',
  full_name='casper.RChainStateProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='preStateHash', full_name='casper.RChainStateProto.preStateHash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='postStateHash', full_name='casper.RChainStateProto.postStateHash', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='bonds', full_name='casper.RChainStateProto.bonds', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='blockNumber', full_name='casper.RChainStateProto.blockNumber', index=3,
      number=4, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2522,
  serialized_end=2640,
)


_EVENTPROTO = _descriptor.Descriptor(
  name='EventProto',
  full_name='casper.EventProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='produce', full_name='casper.EventProto.produce', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='consume', full_name='casper.EventProto.consume', index=1,
      number=2, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='comm', full_name='casper.EventProto.comm', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='event_instance', full_name='casper.EventProto.event_instance',
      index=0, containing_type=None, fields=[]),
  ],
  serialized_start=2643,
  serialized_end=2805,
)


_PRODUCEEVENTPROTO = _descriptor.Descriptor(
  name='ProduceEventProto',
  full_name='casper.ProduceEventProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='channelsHash', full_name='casper.ProduceEventProto.channelsHash', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hash', full_name='casper.ProduceEventProto.hash', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='persistent', full_name='casper.ProduceEventProto.persistent', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='timesRepeated', full_name='casper.ProduceEventProto.timesRepeated', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2807,
  serialized_end=2905,
)


_CONSUMEEVENTPROTO = _descriptor.Descriptor(
  name='ConsumeEventProto',
  full_name='casper.ConsumeEventProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='channelsHashes', full_name='casper.ConsumeEventProto.channelsHashes', index=0,
      number=1, type=12, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='hash', full_name='casper.ConsumeEventProto.hash', index=1,
      number=2, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='persistent', full_name='casper.ConsumeEventProto.persistent', index=2,
      number=3, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2907,
  serialized_end=2984,
)


_COMMEVENTPROTO = _descriptor.Descriptor(
  name='CommEventProto',
  full_name='casper.CommEventProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='consume', full_name='casper.CommEventProto.consume', index=0,
      number=1, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='produces', full_name='casper.CommEventProto.produces', index=1,
      number=2, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='peeks', full_name='casper.CommEventProto.peeks', index=2,
      number=3, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2987,
  serialized_end=3126,
)


_PEEKPROTO = _descriptor.Descriptor(
  name='PeekProto',
  full_name='casper.PeekProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='channelIndex', full_name='casper.PeekProto.channelIndex', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3128,
  serialized_end=3161,
)


_BONDPROTO = _descriptor.Descriptor(
  name='BondProto',
  full_name='casper.BondProto',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='validator', full_name='casper.BondProto.validator', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=_b(""),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
    _descriptor.FieldDescriptor(
      name='stake', full_name='casper.BondProto.stake', index=1,
      number=2, type=3, cpp_type=2, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3163,
  serialized_end=3208,
)

_APPROVEDBLOCKCANDIDATEPROTO.fields_by_name['block'].message_type = _BLOCKMESSAGEPROTO
_UNAPPROVEDBLOCKPROTO.fields_by_name['candidate'].message_type = _APPROVEDBLOCKCANDIDATEPROTO
_BLOCKAPPROVALPROTO.fields_by_name['candidate'].message_type = _APPROVEDBLOCKCANDIDATEPROTO
_BLOCKAPPROVALPROTO.fields_by_name['sig'].message_type = _SIGNATURE
_APPROVEDBLOCKPROTO.fields_by_name['candidate'].message_type = _APPROVEDBLOCKCANDIDATEPROTO
_APPROVEDBLOCKPROTO.fields_by_name['sigs'].message_type = _SIGNATURE
_BLOCKMESSAGEPROTO.fields_by_name['header'].message_type = _HEADERPROTO
_BLOCKMESSAGEPROTO.fields_by_name['body'].message_type = _BODYPROTO
_BLOCKMESSAGEPROTO.fields_by_name['justifications'].message_type = _JUSTIFICATIONPROTO
_BLOCKMETADATAINTERNAL.fields_by_name['justifications'].message_type = _JUSTIFICATIONPROTO
_BLOCKMETADATAINTERNAL.fields_by_name['bonds'].message_type = _BONDPROTO
_PROCESSEDDEPLOYPROTO.fields_by_name['deploy'].message_type = _DEPLOYDATAPROTO
_PROCESSEDDEPLOYPROTO.fields_by_name['cost'].message_type = RhoTypes__pb2._PCOST
_PROCESSEDDEPLOYPROTO.fields_by_name['deployLog'].message_type = _EVENTPROTO
_PROCESSEDSYSTEMDEPLOYPROTO.fields_by_name['deployLog'].message_type = _EVENTPROTO
_BODYPROTO.fields_by_name['state'].message_type = _RCHAINSTATEPROTO
_BODYPROTO.fields_by_name['deploys'].message_type = _PROCESSEDDEPLOYPROTO
_RCHAINSTATEPROTO.fields_by_name['bonds'].message_type = _BONDPROTO
_EVENTPROTO.fields_by_name['produce'].message_type = _PRODUCEEVENTPROTO
_EVENTPROTO.fields_by_name['consume'].message_type = _CONSUMEEVENTPROTO
_EVENTPROTO.fields_by_name['comm'].message_type = _COMMEVENTPROTO
_EVENTPROTO.oneofs_by_name['event_instance'].fields.append(
  _EVENTPROTO.fields_by_name['produce'])
_EVENTPROTO.fields_by_name['produce'].containing_oneof = _EVENTPROTO.oneofs_by_name['event_instance']
_EVENTPROTO.oneofs_by_name['event_instance'].fields.append(
  _EVENTPROTO.fields_by_name['consume'])
_EVENTPROTO.fields_by_name['consume'].containing_oneof = _EVENTPROTO.oneofs_by_name['event_instance']
_EVENTPROTO.oneofs_by_name['event_instance'].fields.append(
  _EVENTPROTO.fields_by_name['comm'])
_EVENTPROTO.fields_by_name['comm'].containing_oneof = _EVENTPROTO.oneofs_by_name['event_instance']
_COMMEVENTPROTO.fields_by_name['consume'].message_type = _CONSUMEEVENTPROTO
_COMMEVENTPROTO.fields_by_name['produces'].message_type = _PRODUCEEVENTPROTO
_COMMEVENTPROTO.fields_by_name['peeks'].message_type = _PEEKPROTO
DESCRIPTOR.message_types_by_name['HasBlockRequestProto'] = _HASBLOCKREQUESTPROTO
DESCRIPTOR.message_types_by_name['HasBlockProto'] = _HASBLOCKPROTO
DESCRIPTOR.message_types_by_name['BlockRequestProto'] = _BLOCKREQUESTPROTO
DESCRIPTOR.message_types_by_name['ForkChoiceTipRequestProto'] = _FORKCHOICETIPREQUESTPROTO
DESCRIPTOR.message_types_by_name['ApprovedBlockCandidateProto'] = _APPROVEDBLOCKCANDIDATEPROTO
DESCRIPTOR.message_types_by_name['UnapprovedBlockProto'] = _UNAPPROVEDBLOCKPROTO
DESCRIPTOR.message_types_by_name['Signature'] = _SIGNATURE
DESCRIPTOR.message_types_by_name['BlockApprovalProto'] = _BLOCKAPPROVALPROTO
DESCRIPTOR.message_types_by_name['ApprovedBlockProto'] = _APPROVEDBLOCKPROTO
DESCRIPTOR.message_types_by_name['ApprovedBlockRequestProto'] = _APPROVEDBLOCKREQUESTPROTO
DESCRIPTOR.message_types_by_name['NoApprovedBlockAvailableProto'] = _NOAPPROVEDBLOCKAVAILABLEPROTO
DESCRIPTOR.message_types_by_name['BlockMessageProto'] = _BLOCKMESSAGEPROTO
DESCRIPTOR.message_types_by_name['BlockHashMessageProto'] = _BLOCKHASHMESSAGEPROTO
DESCRIPTOR.message_types_by_name['BlockMetadataInternal'] = _BLOCKMETADATAINTERNAL
DESCRIPTOR.message_types_by_name['HeaderProto'] = _HEADERPROTO
DESCRIPTOR.message_types_by_name['DeployDataProto'] = _DEPLOYDATAPROTO
DESCRIPTOR.message_types_by_name['ProcessedDeployProto'] = _PROCESSEDDEPLOYPROTO
DESCRIPTOR.message_types_by_name['ProcessedSystemDeployProto'] = _PROCESSEDSYSTEMDEPLOYPROTO
DESCRIPTOR.message_types_by_name['BodyProto'] = _BODYPROTO
DESCRIPTOR.message_types_by_name['JustificationProto'] = _JUSTIFICATIONPROTO
DESCRIPTOR.message_types_by_name['RChainStateProto'] = _RCHAINSTATEPROTO
DESCRIPTOR.message_types_by_name['EventProto'] = _EVENTPROTO
DESCRIPTOR.message_types_by_name['ProduceEventProto'] = _PRODUCEEVENTPROTO
DESCRIPTOR.message_types_by_name['ConsumeEventProto'] = _CONSUMEEVENTPROTO
DESCRIPTOR.message_types_by_name['CommEventProto'] = _COMMEVENTPROTO
DESCRIPTOR.message_types_by_name['PeekProto'] = _PEEKPROTO
DESCRIPTOR.message_types_by_name['BondProto'] = _BONDPROTO
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

HasBlockRequestProto = _reflection.GeneratedProtocolMessageType('HasBlockRequestProto', (_message.Message,), {
  'DESCRIPTOR' : _HASBLOCKREQUESTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.HasBlockRequestProto)
  })
_sym_db.RegisterMessage(HasBlockRequestProto)

HasBlockProto = _reflection.GeneratedProtocolMessageType('HasBlockProto', (_message.Message,), {
  'DESCRIPTOR' : _HASBLOCKPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.HasBlockProto)
  })
_sym_db.RegisterMessage(HasBlockProto)

BlockRequestProto = _reflection.GeneratedProtocolMessageType('BlockRequestProto', (_message.Message,), {
  'DESCRIPTOR' : _BLOCKREQUESTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BlockRequestProto)
  })
_sym_db.RegisterMessage(BlockRequestProto)

ForkChoiceTipRequestProto = _reflection.GeneratedProtocolMessageType('ForkChoiceTipRequestProto', (_message.Message,), {
  'DESCRIPTOR' : _FORKCHOICETIPREQUESTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ForkChoiceTipRequestProto)
  })
_sym_db.RegisterMessage(ForkChoiceTipRequestProto)

ApprovedBlockCandidateProto = _reflection.GeneratedProtocolMessageType('ApprovedBlockCandidateProto', (_message.Message,), {
  'DESCRIPTOR' : _APPROVEDBLOCKCANDIDATEPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ApprovedBlockCandidateProto)
  })
_sym_db.RegisterMessage(ApprovedBlockCandidateProto)

UnapprovedBlockProto = _reflection.GeneratedProtocolMessageType('UnapprovedBlockProto', (_message.Message,), {
  'DESCRIPTOR' : _UNAPPROVEDBLOCKPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.UnapprovedBlockProto)
  })
_sym_db.RegisterMessage(UnapprovedBlockProto)

Signature = _reflection.GeneratedProtocolMessageType('Signature', (_message.Message,), {
  'DESCRIPTOR' : _SIGNATURE,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.Signature)
  })
_sym_db.RegisterMessage(Signature)

BlockApprovalProto = _reflection.GeneratedProtocolMessageType('BlockApprovalProto', (_message.Message,), {
  'DESCRIPTOR' : _BLOCKAPPROVALPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BlockApprovalProto)
  })
_sym_db.RegisterMessage(BlockApprovalProto)

ApprovedBlockProto = _reflection.GeneratedProtocolMessageType('ApprovedBlockProto', (_message.Message,), {
  'DESCRIPTOR' : _APPROVEDBLOCKPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ApprovedBlockProto)
  })
_sym_db.RegisterMessage(ApprovedBlockProto)

ApprovedBlockRequestProto = _reflection.GeneratedProtocolMessageType('ApprovedBlockRequestProto', (_message.Message,), {
  'DESCRIPTOR' : _APPROVEDBLOCKREQUESTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ApprovedBlockRequestProto)
  })
_sym_db.RegisterMessage(ApprovedBlockRequestProto)

NoApprovedBlockAvailableProto = _reflection.GeneratedProtocolMessageType('NoApprovedBlockAvailableProto', (_message.Message,), {
  'DESCRIPTOR' : _NOAPPROVEDBLOCKAVAILABLEPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.NoApprovedBlockAvailableProto)
  })
_sym_db.RegisterMessage(NoApprovedBlockAvailableProto)

BlockMessageProto = _reflection.GeneratedProtocolMessageType('BlockMessageProto', (_message.Message,), {
  'DESCRIPTOR' : _BLOCKMESSAGEPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BlockMessageProto)
  })
_sym_db.RegisterMessage(BlockMessageProto)

BlockHashMessageProto = _reflection.GeneratedProtocolMessageType('BlockHashMessageProto', (_message.Message,), {
  'DESCRIPTOR' : _BLOCKHASHMESSAGEPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BlockHashMessageProto)
  })
_sym_db.RegisterMessage(BlockHashMessageProto)

BlockMetadataInternal = _reflection.GeneratedProtocolMessageType('BlockMetadataInternal', (_message.Message,), {
  'DESCRIPTOR' : _BLOCKMETADATAINTERNAL,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BlockMetadataInternal)
  })
_sym_db.RegisterMessage(BlockMetadataInternal)

HeaderProto = _reflection.GeneratedProtocolMessageType('HeaderProto', (_message.Message,), {
  'DESCRIPTOR' : _HEADERPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.HeaderProto)
  })
_sym_db.RegisterMessage(HeaderProto)

DeployDataProto = _reflection.GeneratedProtocolMessageType('DeployDataProto', (_message.Message,), {
  'DESCRIPTOR' : _DEPLOYDATAPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.DeployDataProto)
  })
_sym_db.RegisterMessage(DeployDataProto)

ProcessedDeployProto = _reflection.GeneratedProtocolMessageType('ProcessedDeployProto', (_message.Message,), {
  'DESCRIPTOR' : _PROCESSEDDEPLOYPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ProcessedDeployProto)
  })
_sym_db.RegisterMessage(ProcessedDeployProto)

ProcessedSystemDeployProto = _reflection.GeneratedProtocolMessageType('ProcessedSystemDeployProto', (_message.Message,), {
  'DESCRIPTOR' : _PROCESSEDSYSTEMDEPLOYPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ProcessedSystemDeployProto)
  })
_sym_db.RegisterMessage(ProcessedSystemDeployProto)

BodyProto = _reflection.GeneratedProtocolMessageType('BodyProto', (_message.Message,), {
  'DESCRIPTOR' : _BODYPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BodyProto)
  })
_sym_db.RegisterMessage(BodyProto)

JustificationProto = _reflection.GeneratedProtocolMessageType('JustificationProto', (_message.Message,), {
  'DESCRIPTOR' : _JUSTIFICATIONPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.JustificationProto)
  })
_sym_db.RegisterMessage(JustificationProto)

RChainStateProto = _reflection.GeneratedProtocolMessageType('RChainStateProto', (_message.Message,), {
  'DESCRIPTOR' : _RCHAINSTATEPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.RChainStateProto)
  })
_sym_db.RegisterMessage(RChainStateProto)

EventProto = _reflection.GeneratedProtocolMessageType('EventProto', (_message.Message,), {
  'DESCRIPTOR' : _EVENTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.EventProto)
  })
_sym_db.RegisterMessage(EventProto)

ProduceEventProto = _reflection.GeneratedProtocolMessageType('ProduceEventProto', (_message.Message,), {
  'DESCRIPTOR' : _PRODUCEEVENTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ProduceEventProto)
  })
_sym_db.RegisterMessage(ProduceEventProto)

ConsumeEventProto = _reflection.GeneratedProtocolMessageType('ConsumeEventProto', (_message.Message,), {
  'DESCRIPTOR' : _CONSUMEEVENTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.ConsumeEventProto)
  })
_sym_db.RegisterMessage(ConsumeEventProto)

CommEventProto = _reflection.GeneratedProtocolMessageType('CommEventProto', (_message.Message,), {
  'DESCRIPTOR' : _COMMEVENTPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.CommEventProto)
  })
_sym_db.RegisterMessage(CommEventProto)

PeekProto = _reflection.GeneratedProtocolMessageType('PeekProto', (_message.Message,), {
  'DESCRIPTOR' : _PEEKPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.PeekProto)
  })
_sym_db.RegisterMessage(PeekProto)

BondProto = _reflection.GeneratedProtocolMessageType('BondProto', (_message.Message,), {
  'DESCRIPTOR' : _BONDPROTO,
  '__module__' : 'CasperMessage_pb2'
  # @@protoc_insertion_point(class_scope:casper.BondProto)
  })
_sym_db.RegisterMessage(BondProto)


DESCRIPTOR._options = None
_HASBLOCKREQUESTPROTO._options = None
_HASBLOCKPROTO._options = None
_BLOCKREQUESTPROTO._options = None
_FORKCHOICETIPREQUESTPROTO._options = None
_APPROVEDBLOCKCANDIDATEPROTO._options = None
_UNAPPROVEDBLOCKPROTO._options = None
_BLOCKAPPROVALPROTO._options = None
_APPROVEDBLOCKPROTO._options = None
_APPROVEDBLOCKREQUESTPROTO._options = None
_NOAPPROVEDBLOCKAVAILABLEPROTO._options = None
_BLOCKMESSAGEPROTO._options = None
_BLOCKHASHMESSAGEPROTO._options = None
_BLOCKMETADATAINTERNAL.fields_by_name['parents']._options = None
_BLOCKMETADATAINTERNAL.fields_by_name['justifications']._options = None
_BLOCKMETADATAINTERNAL.fields_by_name['bonds']._options = None
_BLOCKMETADATAINTERNAL._options = None
# @@protoc_insertion_point(module_scope)
