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

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 descriptor_pb2
# @@protoc_insertion_point(imports)


import test_ref_message_pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='test_message.proto',
  package='',
  serialized_pb='\n\x12test_message.proto\x1a\x16test_ref_message.proto\"\xf9\x05\n\x04Test\x12\x11\n\ttimestamp\x18\x01 \x01(\r\x12\r\n\x05\x66ield\x18\x02 \x01(\x03\x12\x14\n\x0cstring_field\x18\x03 \x01(\t\x12\x13\n\x0blist_fieldx\x18\x04 \x03(\x03\x12\x1c\n\tsubstruct\x18\x05 \x01(\x0b\x32\t.Test.Ss1\x12\x1a\n\x08test_ref\x18\x06 \x01(\x0b\x32\x08.TestRef\x12\x36\n\nenum_field\x18\x07 \x01(\x0e\x32\x0f.Test.EnumField:\x11TEST_ENUM_FIELD_0\x12\x1a\n\x08list_ref\x18\x08 \x03(\x0b\x32\x08.TestRef\x12$\n\x11\x61nother_substruct\x18\t \x01(\x0b\x32\t.Test.Ss3\x12\x11\n\treq_field\x18\n \x02(\x03\x12\x13\n\x0bnegative_32\x18\x0b \x01(\x05\x1a\xec\x01\n\x03Ss1\x12\x15\n\x06\x66ield1\x18\x01 \x01(\x03:\x05\x31\x32\x33\x34\x35\x12\x0e\n\x06\x66ield2\x18\x02 \x01(\t\x12\x1d\n\x06\x66ield3\x18\x03 \x01(\x0b\x32\r.Test.Ss1.Ss2\x12\x0c\n\x04list\x18\x04 \x03(\x01\x12$\n\x0blist_object\x18\x05 \x03(\x0b\x32\x0f.Test.Ss1.Thing\x12\x13\n\x0blist_string\x18\x06 \x03(\t\x1a)\n\x03Ss2\x12\x0e\n\x06\x66ield1\x18\x01 \x01(\x01\x12\x12\n\nss2_field2\x18\x02 \x01(\t\x1a+\n\x05Thing\x12\x0e\n\x06\x66ield1\x18\x01 \x01(\x01\x12\x12\n\nss2_field2\x18\x02 \x01(\t\x1a\x86\x01\n\x03Ss3\x12\x14\n\x0cstring_field\x18\x01 \x01(\t\x12\x1a\n\x12\x66ixed_string_field\x18\x02 \x01(\t\x12\x11\n\tint_field\x18\x03 \x01(\r\x12\x19\n\x11\x61nother_int_field\x18\x04 \x01(\r\x12\x1f\n\rsubstruct_ref\x18\x05 \x01(\x0b\x32\x08.TestRef\"P\n\tEnumField\x12\x15\n\x11TEST_ENUM_FIELD_0\x10\x00\x12\x15\n\x11TEST_ENUM_FIELD_1\x10\x01\x12\x15\n\x11TEST_ENUM_FIELD_2\x10\x02')



_TEST_ENUMFIELD = _descriptor.EnumDescriptor(
  name='EnumField',
  full_name='Test.EnumField',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='TEST_ENUM_FIELD_0', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TEST_ENUM_FIELD_1', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='TEST_ENUM_FIELD_2', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=728,
  serialized_end=808,
)


_TEST_SS1_SS2 = _descriptor.Descriptor(
  name='Ss2',
  full_name='Test.Ss1.Ss2',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='field1', full_name='Test.Ss1.Ss2.field1', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ss2_field2', full_name='Test.Ss1.Ss2.ss2_field2', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=503,
  serialized_end=544,
)

_TEST_SS1_THING = _descriptor.Descriptor(
  name='Thing',
  full_name='Test.Ss1.Thing',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='field1', full_name='Test.Ss1.Thing.field1', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ss2_field2', full_name='Test.Ss1.Thing.ss2_field2', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=546,
  serialized_end=589,
)

_TEST_SS1 = _descriptor.Descriptor(
  name='Ss1',
  full_name='Test.Ss1',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='field1', full_name='Test.Ss1.field1', index=0,
      number=1, type=3, cpp_type=2, label=1,
      has_default_value=True, default_value=12345,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='field2', full_name='Test.Ss1.field2', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='field3', full_name='Test.Ss1.field3', index=2,
      number=3, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='list', full_name='Test.Ss1.list', index=3,
      number=4, type=1, cpp_type=5, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='list_object', full_name='Test.Ss1.list_object', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='list_string', full_name='Test.Ss1.list_string', index=5,
      number=6, type=9, cpp_type=9, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_TEST_SS1_SS2, _TEST_SS1_THING, ],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=353,
  serialized_end=589,
)

_TEST_SS3 = _descriptor.Descriptor(
  name='Ss3',
  full_name='Test.Ss3',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='string_field', full_name='Test.Ss3.string_field', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='fixed_string_field', full_name='Test.Ss3.fixed_string_field', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='int_field', full_name='Test.Ss3.int_field', index=2,
      number=3, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='another_int_field', full_name='Test.Ss3.another_int_field', index=3,
      number=4, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='substruct_ref', full_name='Test.Ss3.substruct_ref', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=592,
  serialized_end=726,
)

_TEST = _descriptor.Descriptor(
  name='Test',
  full_name='Test',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='timestamp', full_name='Test.timestamp', index=0,
      number=1, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='field', full_name='Test.field', 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,
      options=None),
    _descriptor.FieldDescriptor(
      name='string_field', full_name='Test.string_field', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=unicode("", "utf-8"),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='list_fieldx', full_name='Test.list_fieldx', index=3,
      number=4, type=3, cpp_type=2, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='substruct', full_name='Test.substruct', index=4,
      number=5, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='test_ref', full_name='Test.test_ref', index=5,
      number=6, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='enum_field', full_name='Test.enum_field', index=6,
      number=7, type=14, cpp_type=8, label=1,
      has_default_value=True, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='list_ref', full_name='Test.list_ref', index=7,
      number=8, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='another_substruct', full_name='Test.another_substruct', index=8,
      number=9, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='req_field', full_name='Test.req_field', index=9,
      number=10, type=3, cpp_type=2, label=2,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='negative_32', full_name='Test.negative_32', index=10,
      number=11, 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,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_TEST_SS1, _TEST_SS3, ],
  enum_types=[
    _TEST_ENUMFIELD,
  ],
  options=None,
  is_extendable=False,
  extension_ranges=[],
  serialized_start=47,
  serialized_end=808,
)

_TEST_SS1_SS2.containing_type = _TEST_SS1;
_TEST_SS1_THING.containing_type = _TEST_SS1;
_TEST_SS1.fields_by_name['field3'].message_type = _TEST_SS1_SS2
_TEST_SS1.fields_by_name['list_object'].message_type = _TEST_SS1_THING
_TEST_SS1.containing_type = _TEST;
_TEST_SS3.fields_by_name['substruct_ref'].message_type = test_ref_message_pb2._TESTREF
_TEST_SS3.containing_type = _TEST;
_TEST.fields_by_name['substruct'].message_type = _TEST_SS1
_TEST.fields_by_name['test_ref'].message_type = test_ref_message_pb2._TESTREF
_TEST.fields_by_name['enum_field'].enum_type = _TEST_ENUMFIELD
_TEST.fields_by_name['list_ref'].message_type = test_ref_message_pb2._TESTREF
_TEST.fields_by_name['another_substruct'].message_type = _TEST_SS3
_TEST_ENUMFIELD.containing_type = _TEST;
DESCRIPTOR.message_types_by_name['Test'] = _TEST

class Test(_message.Message):
  __metaclass__ = _reflection.GeneratedProtocolMessageType

  class Ss1(_message.Message):
    __metaclass__ = _reflection.GeneratedProtocolMessageType

    class Ss2(_message.Message):
      __metaclass__ = _reflection.GeneratedProtocolMessageType
      DESCRIPTOR = _TEST_SS1_SS2

      # @@protoc_insertion_point(class_scope:Test.Ss1.Ss2)

    class Thing(_message.Message):
      __metaclass__ = _reflection.GeneratedProtocolMessageType
      DESCRIPTOR = _TEST_SS1_THING

      # @@protoc_insertion_point(class_scope:Test.Ss1.Thing)
    DESCRIPTOR = _TEST_SS1

    # @@protoc_insertion_point(class_scope:Test.Ss1)

  class Ss3(_message.Message):
    __metaclass__ = _reflection.GeneratedProtocolMessageType
    DESCRIPTOR = _TEST_SS3

    # @@protoc_insertion_point(class_scope:Test.Ss3)
  DESCRIPTOR = _TEST

  # @@protoc_insertion_point(class_scope:Test)


# @@protoc_insertion_point(module_scope)
