/* Generated by the protocol buffer compiler.  DO NOT EDIT! */
/* Generated from: common/common.proto */

/* Do not generate deprecated warnings for self */
#ifndef PROTOBUF_C__NO_DEPRECATED
#define PROTOBUF_C__NO_DEPRECATED
#endif

#include "common/common.pb-c.h"
void   common__last_config__init
                     (Common__LastConfig         *message)
{
  static Common__LastConfig init_value = COMMON__LAST_CONFIG__INIT;
  *message = init_value;
}
size_t common__last_config__get_packed_size
                     (const Common__LastConfig *message)
{
  assert(message->base.descriptor == &common__last_config__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__last_config__pack
                     (const Common__LastConfig *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__last_config__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__last_config__pack_to_buffer
                     (const Common__LastConfig *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__last_config__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__LastConfig *
       common__last_config__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__LastConfig *)
     protobuf_c_message_unpack (&common__last_config__descriptor,
                                allocator, len, data);
}
void   common__last_config__free_unpacked
                     (Common__LastConfig *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__last_config__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__metadata__init
                     (Common__Metadata         *message)
{
  static Common__Metadata init_value = COMMON__METADATA__INIT;
  *message = init_value;
}
size_t common__metadata__get_packed_size
                     (const Common__Metadata *message)
{
  assert(message->base.descriptor == &common__metadata__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__metadata__pack
                     (const Common__Metadata *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__metadata__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__metadata__pack_to_buffer
                     (const Common__Metadata *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__metadata__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__Metadata *
       common__metadata__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__Metadata *)
     protobuf_c_message_unpack (&common__metadata__descriptor,
                                allocator, len, data);
}
void   common__metadata__free_unpacked
                     (Common__Metadata *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__metadata__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__metadata_signature__init
                     (Common__MetadataSignature         *message)
{
  static Common__MetadataSignature init_value = COMMON__METADATA_SIGNATURE__INIT;
  *message = init_value;
}
size_t common__metadata_signature__get_packed_size
                     (const Common__MetadataSignature *message)
{
  assert(message->base.descriptor == &common__metadata_signature__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__metadata_signature__pack
                     (const Common__MetadataSignature *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__metadata_signature__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__metadata_signature__pack_to_buffer
                     (const Common__MetadataSignature *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__metadata_signature__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__MetadataSignature *
       common__metadata_signature__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__MetadataSignature *)
     protobuf_c_message_unpack (&common__metadata_signature__descriptor,
                                allocator, len, data);
}
void   common__metadata_signature__free_unpacked
                     (Common__MetadataSignature *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__metadata_signature__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__header__init
                     (Common__Header         *message)
{
  static Common__Header init_value = COMMON__HEADER__INIT;
  *message = init_value;
}
size_t common__header__get_packed_size
                     (const Common__Header *message)
{
  assert(message->base.descriptor == &common__header__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__header__pack
                     (const Common__Header *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__header__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__header__pack_to_buffer
                     (const Common__Header *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__header__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__Header *
       common__header__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__Header *)
     protobuf_c_message_unpack (&common__header__descriptor,
                                allocator, len, data);
}
void   common__header__free_unpacked
                     (Common__Header *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__header__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__channel_header__init
                     (Common__ChannelHeader         *message)
{
  static Common__ChannelHeader init_value = COMMON__CHANNEL_HEADER__INIT;
  *message = init_value;
}
size_t common__channel_header__get_packed_size
                     (const Common__ChannelHeader *message)
{
  assert(message->base.descriptor == &common__channel_header__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__channel_header__pack
                     (const Common__ChannelHeader *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__channel_header__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__channel_header__pack_to_buffer
                     (const Common__ChannelHeader *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__channel_header__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__ChannelHeader *
       common__channel_header__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__ChannelHeader *)
     protobuf_c_message_unpack (&common__channel_header__descriptor,
                                allocator, len, data);
}
void   common__channel_header__free_unpacked
                     (Common__ChannelHeader *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__channel_header__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__signature_header__init
                     (Common__SignatureHeader         *message)
{
  static Common__SignatureHeader init_value = COMMON__SIGNATURE_HEADER__INIT;
  *message = init_value;
}
size_t common__signature_header__get_packed_size
                     (const Common__SignatureHeader *message)
{
  assert(message->base.descriptor == &common__signature_header__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__signature_header__pack
                     (const Common__SignatureHeader *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__signature_header__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__signature_header__pack_to_buffer
                     (const Common__SignatureHeader *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__signature_header__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__SignatureHeader *
       common__signature_header__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__SignatureHeader *)
     protobuf_c_message_unpack (&common__signature_header__descriptor,
                                allocator, len, data);
}
void   common__signature_header__free_unpacked
                     (Common__SignatureHeader *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__signature_header__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__payload__init
                     (Common__Payload         *message)
{
  static Common__Payload init_value = COMMON__PAYLOAD__INIT;
  *message = init_value;
}
size_t common__payload__get_packed_size
                     (const Common__Payload *message)
{
  assert(message->base.descriptor == &common__payload__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__payload__pack
                     (const Common__Payload *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__payload__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__payload__pack_to_buffer
                     (const Common__Payload *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__payload__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__Payload *
       common__payload__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__Payload *)
     protobuf_c_message_unpack (&common__payload__descriptor,
                                allocator, len, data);
}
void   common__payload__free_unpacked
                     (Common__Payload *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__payload__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__envelope__init
                     (Common__Envelope         *message)
{
  static Common__Envelope init_value = COMMON__ENVELOPE__INIT;
  *message = init_value;
}
size_t common__envelope__get_packed_size
                     (const Common__Envelope *message)
{
  assert(message->base.descriptor == &common__envelope__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__envelope__pack
                     (const Common__Envelope *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__envelope__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__envelope__pack_to_buffer
                     (const Common__Envelope *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__envelope__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__Envelope *
       common__envelope__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__Envelope *)
     protobuf_c_message_unpack (&common__envelope__descriptor,
                                allocator, len, data);
}
void   common__envelope__free_unpacked
                     (Common__Envelope *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__envelope__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__block__init
                     (Common__Block         *message)
{
  static Common__Block init_value = COMMON__BLOCK__INIT;
  *message = init_value;
}
size_t common__block__get_packed_size
                     (const Common__Block *message)
{
  assert(message->base.descriptor == &common__block__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__block__pack
                     (const Common__Block *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__block__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__block__pack_to_buffer
                     (const Common__Block *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__block__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__Block *
       common__block__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__Block *)
     protobuf_c_message_unpack (&common__block__descriptor,
                                allocator, len, data);
}
void   common__block__free_unpacked
                     (Common__Block *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__block__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__block_header__init
                     (Common__BlockHeader         *message)
{
  static Common__BlockHeader init_value = COMMON__BLOCK_HEADER__INIT;
  *message = init_value;
}
size_t common__block_header__get_packed_size
                     (const Common__BlockHeader *message)
{
  assert(message->base.descriptor == &common__block_header__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__block_header__pack
                     (const Common__BlockHeader *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__block_header__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__block_header__pack_to_buffer
                     (const Common__BlockHeader *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__block_header__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__BlockHeader *
       common__block_header__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__BlockHeader *)
     protobuf_c_message_unpack (&common__block_header__descriptor,
                                allocator, len, data);
}
void   common__block_header__free_unpacked
                     (Common__BlockHeader *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__block_header__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__block_data__init
                     (Common__BlockData         *message)
{
  static Common__BlockData init_value = COMMON__BLOCK_DATA__INIT;
  *message = init_value;
}
size_t common__block_data__get_packed_size
                     (const Common__BlockData *message)
{
  assert(message->base.descriptor == &common__block_data__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__block_data__pack
                     (const Common__BlockData *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__block_data__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__block_data__pack_to_buffer
                     (const Common__BlockData *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__block_data__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__BlockData *
       common__block_data__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__BlockData *)
     protobuf_c_message_unpack (&common__block_data__descriptor,
                                allocator, len, data);
}
void   common__block_data__free_unpacked
                     (Common__BlockData *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__block_data__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
void   common__block_metadata__init
                     (Common__BlockMetadata         *message)
{
  static Common__BlockMetadata init_value = COMMON__BLOCK_METADATA__INIT;
  *message = init_value;
}
size_t common__block_metadata__get_packed_size
                     (const Common__BlockMetadata *message)
{
  assert(message->base.descriptor == &common__block_metadata__descriptor);
  return protobuf_c_message_get_packed_size ((const ProtobufCMessage*)(message));
}
size_t common__block_metadata__pack
                     (const Common__BlockMetadata *message,
                      uint8_t       *out)
{
  assert(message->base.descriptor == &common__block_metadata__descriptor);
  return protobuf_c_message_pack ((const ProtobufCMessage*)message, out);
}
size_t common__block_metadata__pack_to_buffer
                     (const Common__BlockMetadata *message,
                      ProtobufCBuffer *buffer)
{
  assert(message->base.descriptor == &common__block_metadata__descriptor);
  return protobuf_c_message_pack_to_buffer ((const ProtobufCMessage*)message, buffer);
}
Common__BlockMetadata *
       common__block_metadata__unpack
                     (ProtobufCAllocator  *allocator,
                      size_t               len,
                      const uint8_t       *data)
{
  return (Common__BlockMetadata *)
     protobuf_c_message_unpack (&common__block_metadata__descriptor,
                                allocator, len, data);
}
void   common__block_metadata__free_unpacked
                     (Common__BlockMetadata *message,
                      ProtobufCAllocator *allocator)
{
  assert(message->base.descriptor == &common__block_metadata__descriptor);
  protobuf_c_message_free_unpacked ((ProtobufCMessage*)message, allocator);
}
static const ProtobufCFieldDescriptor common__last_config__field_descriptors[1] =
{
  {
    "index",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(Common__LastConfig, has_index),
    offsetof(Common__LastConfig, index),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__last_config__field_indices_by_name[] = {
  0,   /* field[0] = index */
};
static const ProtobufCIntRange common__last_config__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor common__last_config__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.LastConfig",
  "LastConfig",
  "Common__LastConfig",
  "common",
  sizeof(Common__LastConfig),
  1,
  common__last_config__field_descriptors,
  common__last_config__field_indices_by_name,
  1,  common__last_config__number_ranges,
  (ProtobufCMessageInit) common__last_config__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__metadata__field_descriptors[2] =
{
  {
    "value",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__Metadata, has_value),
    offsetof(Common__Metadata, value),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "signatures",
    2,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_MESSAGE,
    offsetof(Common__Metadata, n_signatures),
    offsetof(Common__Metadata, signatures),
    &common__metadata_signature__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__metadata__field_indices_by_name[] = {
  1,   /* field[1] = signatures */
  0,   /* field[0] = value */
};
static const ProtobufCIntRange common__metadata__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor common__metadata__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.Metadata",
  "Metadata",
  "Common__Metadata",
  "common",
  sizeof(Common__Metadata),
  2,
  common__metadata__field_descriptors,
  common__metadata__field_indices_by_name,
  1,  common__metadata__number_ranges,
  (ProtobufCMessageInit) common__metadata__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__metadata_signature__field_descriptors[2] =
{
  {
    "signature_header",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__MetadataSignature, has_signature_header),
    offsetof(Common__MetadataSignature, signature_header),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "signature",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__MetadataSignature, has_signature),
    offsetof(Common__MetadataSignature, signature),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__metadata_signature__field_indices_by_name[] = {
  1,   /* field[1] = signature */
  0,   /* field[0] = signature_header */
};
static const ProtobufCIntRange common__metadata_signature__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor common__metadata_signature__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.MetadataSignature",
  "MetadataSignature",
  "Common__MetadataSignature",
  "common",
  sizeof(Common__MetadataSignature),
  2,
  common__metadata_signature__field_descriptors,
  common__metadata_signature__field_indices_by_name,
  1,  common__metadata_signature__number_ranges,
  (ProtobufCMessageInit) common__metadata_signature__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__header__field_descriptors[2] =
{
  {
    "channel_header",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__Header, has_channel_header),
    offsetof(Common__Header, channel_header),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "signature_header",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__Header, has_signature_header),
    offsetof(Common__Header, signature_header),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__header__field_indices_by_name[] = {
  0,   /* field[0] = channel_header */
  1,   /* field[1] = signature_header */
};
static const ProtobufCIntRange common__header__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor common__header__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.Header",
  "Header",
  "Common__Header",
  "common",
  sizeof(Common__Header),
  2,
  common__header__field_descriptors,
  common__header__field_indices_by_name,
  1,  common__header__number_ranges,
  (ProtobufCMessageInit) common__header__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__channel_header__field_descriptors[8] =
{
  {
    "type",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_INT32,
    offsetof(Common__ChannelHeader, has_type),
    offsetof(Common__ChannelHeader, type),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "version",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_INT32,
    offsetof(Common__ChannelHeader, has_version),
    offsetof(Common__ChannelHeader, version),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "timestamp",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Common__ChannelHeader, timestamp),
    &google__protobuf__timestamp__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "channel_id",
    4,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Common__ChannelHeader, channel_id),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "tx_id",
    5,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_STRING,
    0,   /* quantifier_offset */
    offsetof(Common__ChannelHeader, tx_id),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "epoch",
    6,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(Common__ChannelHeader, has_epoch),
    offsetof(Common__ChannelHeader, epoch),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "extension",
    7,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__ChannelHeader, has_extension),
    offsetof(Common__ChannelHeader, extension),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "tls_cert_hash",
    8,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__ChannelHeader, has_tls_cert_hash),
    offsetof(Common__ChannelHeader, tls_cert_hash),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__channel_header__field_indices_by_name[] = {
  3,   /* field[3] = channel_id */
  5,   /* field[5] = epoch */
  6,   /* field[6] = extension */
  2,   /* field[2] = timestamp */
  7,   /* field[7] = tls_cert_hash */
  4,   /* field[4] = tx_id */
  0,   /* field[0] = type */
  1,   /* field[1] = version */
};
static const ProtobufCIntRange common__channel_header__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 8 }
};
const ProtobufCMessageDescriptor common__channel_header__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.ChannelHeader",
  "ChannelHeader",
  "Common__ChannelHeader",
  "common",
  sizeof(Common__ChannelHeader),
  8,
  common__channel_header__field_descriptors,
  common__channel_header__field_indices_by_name,
  1,  common__channel_header__number_ranges,
  (ProtobufCMessageInit) common__channel_header__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__signature_header__field_descriptors[2] =
{
  {
    "creator",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__SignatureHeader, has_creator),
    offsetof(Common__SignatureHeader, creator),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "nonce",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__SignatureHeader, has_nonce),
    offsetof(Common__SignatureHeader, nonce),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__signature_header__field_indices_by_name[] = {
  0,   /* field[0] = creator */
  1,   /* field[1] = nonce */
};
static const ProtobufCIntRange common__signature_header__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor common__signature_header__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.SignatureHeader",
  "SignatureHeader",
  "Common__SignatureHeader",
  "common",
  sizeof(Common__SignatureHeader),
  2,
  common__signature_header__field_descriptors,
  common__signature_header__field_indices_by_name,
  1,  common__signature_header__number_ranges,
  (ProtobufCMessageInit) common__signature_header__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__payload__field_descriptors[2] =
{
  {
    "header",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Common__Payload, header),
    &common__header__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "data",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__Payload, has_data),
    offsetof(Common__Payload, data),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__payload__field_indices_by_name[] = {
  1,   /* field[1] = data */
  0,   /* field[0] = header */
};
static const ProtobufCIntRange common__payload__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor common__payload__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.Payload",
  "Payload",
  "Common__Payload",
  "common",
  sizeof(Common__Payload),
  2,
  common__payload__field_descriptors,
  common__payload__field_indices_by_name,
  1,  common__payload__number_ranges,
  (ProtobufCMessageInit) common__payload__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__envelope__field_descriptors[2] =
{
  {
    "payload",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__Envelope, has_payload),
    offsetof(Common__Envelope, payload),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "signature",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__Envelope, has_signature),
    offsetof(Common__Envelope, signature),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__envelope__field_indices_by_name[] = {
  0,   /* field[0] = payload */
  1,   /* field[1] = signature */
};
static const ProtobufCIntRange common__envelope__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 2 }
};
const ProtobufCMessageDescriptor common__envelope__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.Envelope",
  "Envelope",
  "Common__Envelope",
  "common",
  sizeof(Common__Envelope),
  2,
  common__envelope__field_descriptors,
  common__envelope__field_indices_by_name,
  1,  common__envelope__number_ranges,
  (ProtobufCMessageInit) common__envelope__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__block__field_descriptors[3] =
{
  {
    "header",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Common__Block, header),
    &common__block_header__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "data",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Common__Block, data),
    &common__block_data__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "metadata",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_MESSAGE,
    0,   /* quantifier_offset */
    offsetof(Common__Block, metadata),
    &common__block_metadata__descriptor,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__block__field_indices_by_name[] = {
  1,   /* field[1] = data */
  0,   /* field[0] = header */
  2,   /* field[2] = metadata */
};
static const ProtobufCIntRange common__block__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor common__block__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.Block",
  "Block",
  "Common__Block",
  "common",
  sizeof(Common__Block),
  3,
  common__block__field_descriptors,
  common__block__field_indices_by_name,
  1,  common__block__number_ranges,
  (ProtobufCMessageInit) common__block__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__block_header__field_descriptors[3] =
{
  {
    "number",
    1,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_UINT64,
    offsetof(Common__BlockHeader, has_number),
    offsetof(Common__BlockHeader, number),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "previous_hash",
    2,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__BlockHeader, has_previous_hash),
    offsetof(Common__BlockHeader, previous_hash),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
  {
    "data_hash",
    3,
    PROTOBUF_C_LABEL_OPTIONAL,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__BlockHeader, has_data_hash),
    offsetof(Common__BlockHeader, data_hash),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__block_header__field_indices_by_name[] = {
  2,   /* field[2] = data_hash */
  0,   /* field[0] = number */
  1,   /* field[1] = previous_hash */
};
static const ProtobufCIntRange common__block_header__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 3 }
};
const ProtobufCMessageDescriptor common__block_header__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.BlockHeader",
  "BlockHeader",
  "Common__BlockHeader",
  "common",
  sizeof(Common__BlockHeader),
  3,
  common__block_header__field_descriptors,
  common__block_header__field_indices_by_name,
  1,  common__block_header__number_ranges,
  (ProtobufCMessageInit) common__block_header__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__block_data__field_descriptors[1] =
{
  {
    "data",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__BlockData, n_data),
    offsetof(Common__BlockData, data),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__block_data__field_indices_by_name[] = {
  0,   /* field[0] = data */
};
static const ProtobufCIntRange common__block_data__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor common__block_data__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.BlockData",
  "BlockData",
  "Common__BlockData",
  "common",
  sizeof(Common__BlockData),
  1,
  common__block_data__field_descriptors,
  common__block_data__field_indices_by_name,
  1,  common__block_data__number_ranges,
  (ProtobufCMessageInit) common__block_data__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCFieldDescriptor common__block_metadata__field_descriptors[1] =
{
  {
    "metadata",
    1,
    PROTOBUF_C_LABEL_REPEATED,
    PROTOBUF_C_TYPE_BYTES,
    offsetof(Common__BlockMetadata, n_metadata),
    offsetof(Common__BlockMetadata, metadata),
    NULL,
    NULL,
    0,             /* flags */
    0,NULL,NULL    /* reserved1,reserved2, etc */
  },
};
static const unsigned common__block_metadata__field_indices_by_name[] = {
  0,   /* field[0] = metadata */
};
static const ProtobufCIntRange common__block_metadata__number_ranges[1 + 1] =
{
  { 1, 0 },
  { 0, 1 }
};
const ProtobufCMessageDescriptor common__block_metadata__descriptor =
{
  PROTOBUF_C__MESSAGE_DESCRIPTOR_MAGIC,
  "common.BlockMetadata",
  "BlockMetadata",
  "Common__BlockMetadata",
  "common",
  sizeof(Common__BlockMetadata),
  1,
  common__block_metadata__field_descriptors,
  common__block_metadata__field_indices_by_name,
  1,  common__block_metadata__number_ranges,
  (ProtobufCMessageInit) common__block_metadata__init,
  NULL,NULL,NULL    /* reserved[123] */
};
static const ProtobufCEnumValue common__status__enum_values_by_number[9] =
{
  { "UNKNOWN", "COMMON__STATUS__UNKNOWN", 0 },
  { "SUCCESS", "COMMON__STATUS__SUCCESS", 200 },
  { "BAD_REQUEST", "COMMON__STATUS__BAD_REQUEST", 400 },
  { "FORBIDDEN", "COMMON__STATUS__FORBIDDEN", 403 },
  { "NOT_FOUND", "COMMON__STATUS__NOT_FOUND", 404 },
  { "REQUEST_ENTITY_TOO_LARGE", "COMMON__STATUS__REQUEST_ENTITY_TOO_LARGE", 413 },
  { "INTERNAL_SERVER_ERROR", "COMMON__STATUS__INTERNAL_SERVER_ERROR", 500 },
  { "NOT_IMPLEMENTED", "COMMON__STATUS__NOT_IMPLEMENTED", 501 },
  { "SERVICE_UNAVAILABLE", "COMMON__STATUS__SERVICE_UNAVAILABLE", 503 },
};
static const ProtobufCIntRange common__status__value_ranges[] = {
{0, 0},{200, 1},{400, 2},{403, 3},{413, 5},{500, 6},{503, 8},{0, 9}
};
static const ProtobufCEnumValueIndex common__status__enum_values_by_name[9] =
{
  { "BAD_REQUEST", 2 },
  { "FORBIDDEN", 3 },
  { "INTERNAL_SERVER_ERROR", 6 },
  { "NOT_FOUND", 4 },
  { "NOT_IMPLEMENTED", 7 },
  { "REQUEST_ENTITY_TOO_LARGE", 5 },
  { "SERVICE_UNAVAILABLE", 8 },
  { "SUCCESS", 1 },
  { "UNKNOWN", 0 },
};
const ProtobufCEnumDescriptor common__status__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "common.Status",
  "Status",
  "Common__Status",
  "common",
  9,
  common__status__enum_values_by_number,
  9,
  common__status__enum_values_by_name,
  7,
  common__status__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCEnumValue common__header_type__enum_values_by_number[9] =
{
  { "MESSAGE", "COMMON__HEADER_TYPE__MESSAGE", 0 },
  { "CONFIG", "COMMON__HEADER_TYPE__CONFIG", 1 },
  { "CONFIG_UPDATE", "COMMON__HEADER_TYPE__CONFIG_UPDATE", 2 },
  { "ENDORSER_TRANSACTION", "COMMON__HEADER_TYPE__ENDORSER_TRANSACTION", 3 },
  { "ORDERER_TRANSACTION", "COMMON__HEADER_TYPE__ORDERER_TRANSACTION", 4 },
  { "DELIVER_SEEK_INFO", "COMMON__HEADER_TYPE__DELIVER_SEEK_INFO", 5 },
  { "CHAINCODE_PACKAGE", "COMMON__HEADER_TYPE__CHAINCODE_PACKAGE", 6 },
  { "PEER_ADMIN_OPERATION", "COMMON__HEADER_TYPE__PEER_ADMIN_OPERATION", 8 },
  { "TOKEN_TRANSACTION", "COMMON__HEADER_TYPE__TOKEN_TRANSACTION", 9 },
};
static const ProtobufCIntRange common__header_type__value_ranges[] = {
{0, 0},{8, 7},{0, 9}
};
static const ProtobufCEnumValueIndex common__header_type__enum_values_by_name[9] =
{
  { "CHAINCODE_PACKAGE", 6 },
  { "CONFIG", 1 },
  { "CONFIG_UPDATE", 2 },
  { "DELIVER_SEEK_INFO", 5 },
  { "ENDORSER_TRANSACTION", 3 },
  { "MESSAGE", 0 },
  { "ORDERER_TRANSACTION", 4 },
  { "PEER_ADMIN_OPERATION", 7 },
  { "TOKEN_TRANSACTION", 8 },
};
const ProtobufCEnumDescriptor common__header_type__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "common.HeaderType",
  "HeaderType",
  "Common__HeaderType",
  "common",
  9,
  common__header_type__enum_values_by_number,
  9,
  common__header_type__enum_values_by_name,
  2,
  common__header_type__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
static const ProtobufCEnumValue common__block_metadata_index__enum_values_by_number[4] =
{
  { "SIGNATURES", "COMMON__BLOCK_METADATA_INDEX__SIGNATURES", 0 },
  { "LAST_CONFIG", "COMMON__BLOCK_METADATA_INDEX__LAST_CONFIG", 1 },
  { "TRANSACTIONS_FILTER", "COMMON__BLOCK_METADATA_INDEX__TRANSACTIONS_FILTER", 2 },
  { "ORDERER", "COMMON__BLOCK_METADATA_INDEX__ORDERER", 3 },
};
static const ProtobufCIntRange common__block_metadata_index__value_ranges[] = {
{0, 0},{0, 4}
};
static const ProtobufCEnumValueIndex common__block_metadata_index__enum_values_by_name[4] =
{
  { "LAST_CONFIG", 1 },
  { "ORDERER", 3 },
  { "SIGNATURES", 0 },
  { "TRANSACTIONS_FILTER", 2 },
};
const ProtobufCEnumDescriptor common__block_metadata_index__descriptor =
{
  PROTOBUF_C__ENUM_DESCRIPTOR_MAGIC,
  "common.BlockMetadataIndex",
  "BlockMetadataIndex",
  "Common__BlockMetadataIndex",
  "common",
  4,
  common__block_metadata_index__enum_values_by_number,
  4,
  common__block_metadata_index__enum_values_by_name,
  1,
  common__block_metadata_index__value_ranges,
  NULL,NULL,NULL,NULL   /* reserved[1234] */
};
