# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: eolymp/typewriter/block.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 symbol_database as _symbol_database
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from eolymp.typewriter import inline_pb2 as eolymp_dot_typewriter_dot_inline__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
  name='eolymp/typewriter/block.proto',
  package='eolymp.typewriter',
  syntax='proto3',
  serialized_options=b'Z;github.com/eolymp/contracts/go/eolymp/typewriter;typewriter',
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\x1d\x65olymp/typewriter/block.proto\x12\x11\x65olymp.typewriter\x1a\x1e\x65olymp/typewriter/inline.proto\"7\n\tContainer\x12*\n\x08\x63hildren\x18\x01 \x03(\x0b\x32\x18.eolymp.typewriter.Block\"\xa2\x10\n\x05\x42lock\x12\x37\n\tparagraph\x18\x01 \x01(\x0b\x32\".eolymp.typewriter.Block.ParagraphH\x00\x12\x31\n\x06layout\x18\x02 \x01(\x0b\x32\x1f.eolymp.typewriter.Block.LayoutH\x00\x12-\n\x04\x63ode\x18\x03 \x01(\x0b\x32\x1d.eolymp.typewriter.Block.CodeH\x00\x12-\n\x04math\x18\x04 \x01(\x0b\x32\x1d.eolymp.typewriter.Block.MathH\x00\x12/\n\x05image\x18\x05 \x01(\x0b\x32\x1e.eolymp.typewriter.Block.ImageH\x00\x12\x33\n\x07heading\x18\x06 \x01(\x0b\x32 .eolymp.typewriter.Block.HeadingH\x00\x12-\n\x04list\x18\x07 \x01(\x0b\x32\x1d.eolymp.typewriter.Block.ListH\x00\x12/\n\x05\x65mbed\x18\x08 \x01(\x0b\x32\x1e.eolymp.typewriter.Block.EmbedH\x00\x12/\n\x05table\x18\t \x01(\x0b\x32\x1e.eolymp.typewriter.Block.TableH\x00\x12\x31\n\x06widget\x18\n \x01(\x0b\x32\x1f.eolymp.typewriter.Block.WidgetH\x00\x1a\x38\n\tParagraph\x12+\n\x08\x63hildren\x18\x01 \x03(\x0b\x32\x19.eolymp.typewriter.Inline\x1a\xeb\x03\n\x06Layout\x12<\n\tdirection\x18\x01 \x01(\x0e\x32).eolymp.typewriter.Block.Layout.Direction\x12>\n\x0b\x61lign_items\x18\n \x01(\x0e\x32).eolymp.typewriter.Block.Layout.Alignment\x12@\n\ralign_content\x18\x0b \x01(\x0e\x32).eolymp.typewriter.Block.Layout.Alignment\x12@\n\rjustify_items\x18\x0c \x01(\x0e\x32).eolymp.typewriter.Block.Layout.Alignment\x12\x42\n\x0fjustify_content\x18\r \x01(\x0e\x32).eolymp.typewriter.Block.Layout.Alignment\x12\x0b\n\x03gap\x18\x14 \x01(\r\x12\x0f\n\x07padding\x18\x15 \x03(\r\x12.\n\x08\x63hildren\x18\x64 \x03(\x0b\x32\x1c.eolymp.typewriter.Container\" \n\tDirection\x12\x07\n\x03ROW\x10\x00\x12\n\n\x06\x43OLUMN\x10\x01\"+\n\tAlignment\x12\t\n\x05START\x10\x00\x12\n\n\x06\x43\x45NTER\x10\x01\x12\x07\n\x03\x45ND\x10\x02\x1a\xc9\x01\n\x04List\x12\x32\n\x05style\x18\x01 \x01(\x0e\x32#.eolymp.typewriter.Block.List.Style\x12\x34\n\x08\x63hildren\x18\n \x03(\x0b\x32\".eolymp.typewriter.Block.List.Item\x1a\x32\n\x04Item\x12*\n\x08\x63hildren\x18\x01 \x03(\x0b\x32\x18.eolymp.typewriter.Block\"#\n\x05Style\x12\r\n\tUNORDERED\x10\x00\x12\x0b\n\x07ORDERED\x10\x01\x1a\x61\n\x05Image\x12\x0b\n\x03src\x18\x01 \x01(\t\x12\x0b\n\x03\x61lt\x18\x02 \x01(\t\x12\r\n\x05title\x18\x03 \x01(\t\x12\r\n\x05width\x18\x04 \x01(\r\x12\x0e\n\x06height\x18\x05 \x01(\r\x12\x10\n\x08zoomable\x18\x06 \x01(\x08\x1a\x45\n\x07Heading\x12\r\n\x05level\x18\x01 \x01(\r\x12+\n\x08\x63hildren\x18\n \x03(\x0b\x32\x19.eolymp.typewriter.Inline\x1a\x17\n\x04Math\x12\x0f\n\x07\x63ontent\x18\x02 \x01(\t\x1a%\n\x04\x43ode\x12\x0c\n\x04lang\x18\x01 \x01(\t\x12\x0f\n\x07\x63ontent\x18\x02 \x01(\t\x1aq\n\x05\x45mbed\x12\x0c\n\x04path\x18\x01 \x01(\t\x12\x34\n\x06values\x18\x02 \x03(\x0b\x32$.eolymp.typewriter.Block.Embed.Value\x1a$\n\x05Value\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t\x1a\x8e\x02\n\x05Table\x12\x35\n\x06header\x18\x01 \x01(\x0e\x32%.eolymp.typewriter.Block.Table.Header\x12\x34\n\x08\x63hildren\x18\n \x03(\x0b\x32\".eolymp.typewriter.Block.Table.Row\x1a<\n\x03Row\x12\x35\n\x08\x63hildren\x18\x01 \x03(\x0b\x32#.eolymp.typewriter.Block.Table.Cell\x1a\x32\n\x04\x43\x65ll\x12*\n\x08\x63hildren\x18\x01 \x03(\x0b\x32\x18.eolymp.typewriter.Block\"&\n\x06Header\x12\x0e\n\nHORIZONTAL\x10\x00\x12\x0c\n\x08VERTICAL\x10\x01\x1a\xba\x01\n\x06Widget\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x43\n\nattributes\x18\x02 \x03(\x0b\x32/.eolymp.typewriter.Block.Widget.AttributesEntry\x12*\n\x08\x63hildren\x18\n \x03(\x0b\x32\x18.eolymp.typewriter.Block\x1a\x31\n\x0f\x41ttributesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x06\n\x04nodeB=Z;github.com/eolymp/contracts/go/eolymp/typewriter;typewriterb\x06proto3'
  ,
  dependencies=[eolymp_dot_typewriter_dot_inline__pb2.DESCRIPTOR,])



_BLOCK_LAYOUT_DIRECTION = _descriptor.EnumDescriptor(
  name='Direction',
  full_name='eolymp.typewriter.Block.Layout.Direction',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='ROW', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='COLUMN', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1124,
  serialized_end=1156,
)
_sym_db.RegisterEnumDescriptor(_BLOCK_LAYOUT_DIRECTION)

_BLOCK_LAYOUT_ALIGNMENT = _descriptor.EnumDescriptor(
  name='Alignment',
  full_name='eolymp.typewriter.Block.Layout.Alignment',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='START', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='CENTER', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='END', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1158,
  serialized_end=1201,
)
_sym_db.RegisterEnumDescriptor(_BLOCK_LAYOUT_ALIGNMENT)

_BLOCK_LIST_STYLE = _descriptor.EnumDescriptor(
  name='Style',
  full_name='eolymp.typewriter.Block.List.Style',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNORDERED', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='ORDERED', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1370,
  serialized_end=1405,
)
_sym_db.RegisterEnumDescriptor(_BLOCK_LIST_STYLE)

_BLOCK_TABLE_HEADER = _descriptor.EnumDescriptor(
  name='Header',
  full_name='eolymp.typewriter.Block.Table.Header',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='HORIZONTAL', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='VERTICAL', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1989,
  serialized_end=2027,
)
_sym_db.RegisterEnumDescriptor(_BLOCK_TABLE_HEADER)


_CONTAINER = _descriptor.Descriptor(
  name='Container',
  full_name='eolymp.typewriter.Container',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Container.children', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=84,
  serialized_end=139,
)


_BLOCK_PARAGRAPH = _descriptor.Descriptor(
  name='Paragraph',
  full_name='eolymp.typewriter.Block.Paragraph',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Paragraph.children', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=651,
  serialized_end=707,
)

_BLOCK_LAYOUT = _descriptor.Descriptor(
  name='Layout',
  full_name='eolymp.typewriter.Block.Layout',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='direction', full_name='eolymp.typewriter.Block.Layout.direction', index=0,
      number=1, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='align_items', full_name='eolymp.typewriter.Block.Layout.align_items', index=1,
      number=10, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='align_content', full_name='eolymp.typewriter.Block.Layout.align_content', index=2,
      number=11, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='justify_items', full_name='eolymp.typewriter.Block.Layout.justify_items', index=3,
      number=12, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='justify_content', full_name='eolymp.typewriter.Block.Layout.justify_content', index=4,
      number=13, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='gap', full_name='eolymp.typewriter.Block.Layout.gap', index=5,
      number=20, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='padding', full_name='eolymp.typewriter.Block.Layout.padding', index=6,
      number=21, type=13, cpp_type=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Layout.children', index=7,
      number=100, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _BLOCK_LAYOUT_DIRECTION,
    _BLOCK_LAYOUT_ALIGNMENT,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=710,
  serialized_end=1201,
)

_BLOCK_LIST_ITEM = _descriptor.Descriptor(
  name='Item',
  full_name='eolymp.typewriter.Block.List.Item',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.List.Item.children', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1318,
  serialized_end=1368,
)

_BLOCK_LIST = _descriptor.Descriptor(
  name='List',
  full_name='eolymp.typewriter.Block.List',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='style', full_name='eolymp.typewriter.Block.List.style', index=0,
      number=1, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.List.children', index=1,
      number=10, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_BLOCK_LIST_ITEM, ],
  enum_types=[
    _BLOCK_LIST_STYLE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1204,
  serialized_end=1405,
)

_BLOCK_IMAGE = _descriptor.Descriptor(
  name='Image',
  full_name='eolymp.typewriter.Block.Image',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='src', full_name='eolymp.typewriter.Block.Image.src', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='alt', full_name='eolymp.typewriter.Block.Image.alt', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='title', full_name='eolymp.typewriter.Block.Image.title', index=2,
      number=3, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='width', full_name='eolymp.typewriter.Block.Image.width', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='height', full_name='eolymp.typewriter.Block.Image.height', index=4,
      number=5, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='zoomable', full_name='eolymp.typewriter.Block.Image.zoomable', index=5,
      number=6, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1407,
  serialized_end=1504,
)

_BLOCK_HEADING = _descriptor.Descriptor(
  name='Heading',
  full_name='eolymp.typewriter.Block.Heading',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='level', full_name='eolymp.typewriter.Block.Heading.level', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Heading.children', index=1,
      number=10, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1506,
  serialized_end=1575,
)

_BLOCK_MATH = _descriptor.Descriptor(
  name='Math',
  full_name='eolymp.typewriter.Block.Math',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='content', full_name='eolymp.typewriter.Block.Math.content', index=0,
      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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1577,
  serialized_end=1600,
)

_BLOCK_CODE = _descriptor.Descriptor(
  name='Code',
  full_name='eolymp.typewriter.Block.Code',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='lang', full_name='eolymp.typewriter.Block.Code.lang', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='content', full_name='eolymp.typewriter.Block.Code.content', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1602,
  serialized_end=1639,
)

_BLOCK_EMBED_VALUE = _descriptor.Descriptor(
  name='Value',
  full_name='eolymp.typewriter.Block.Embed.Value',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='eolymp.typewriter.Block.Embed.Value.name', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='eolymp.typewriter.Block.Embed.Value.value', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1718,
  serialized_end=1754,
)

_BLOCK_EMBED = _descriptor.Descriptor(
  name='Embed',
  full_name='eolymp.typewriter.Block.Embed',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='path', full_name='eolymp.typewriter.Block.Embed.path', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='values', full_name='eolymp.typewriter.Block.Embed.values', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_BLOCK_EMBED_VALUE, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1641,
  serialized_end=1754,
)

_BLOCK_TABLE_ROW = _descriptor.Descriptor(
  name='Row',
  full_name='eolymp.typewriter.Block.Table.Row',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Table.Row.children', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1875,
  serialized_end=1935,
)

_BLOCK_TABLE_CELL = _descriptor.Descriptor(
  name='Cell',
  full_name='eolymp.typewriter.Block.Table.Cell',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Table.Cell.children', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1937,
  serialized_end=1987,
)

_BLOCK_TABLE = _descriptor.Descriptor(
  name='Table',
  full_name='eolymp.typewriter.Block.Table',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='header', full_name='eolymp.typewriter.Block.Table.header', index=0,
      number=1, type=14, cpp_type=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Table.children', index=1,
      number=10, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_BLOCK_TABLE_ROW, _BLOCK_TABLE_CELL, ],
  enum_types=[
    _BLOCK_TABLE_HEADER,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1757,
  serialized_end=2027,
)

_BLOCK_WIDGET_ATTRIBUTESENTRY = _descriptor.Descriptor(
  name='AttributesEntry',
  full_name='eolymp.typewriter.Block.Widget.AttributesEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='eolymp.typewriter.Block.Widget.AttributesEntry.key', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='eolymp.typewriter.Block.Widget.AttributesEntry.value', 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'8\001',
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2167,
  serialized_end=2216,
)

_BLOCK_WIDGET = _descriptor.Descriptor(
  name='Widget',
  full_name='eolymp.typewriter.Block.Widget',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='name', full_name='eolymp.typewriter.Block.Widget.name', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='attributes', full_name='eolymp.typewriter.Block.Widget.attributes', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='children', full_name='eolymp.typewriter.Block.Widget.children', index=2,
      number=10, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_BLOCK_WIDGET_ATTRIBUTESENTRY, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2030,
  serialized_end=2216,
)

_BLOCK = _descriptor.Descriptor(
  name='Block',
  full_name='eolymp.typewriter.Block',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='paragraph', full_name='eolymp.typewriter.Block.paragraph', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='layout', full_name='eolymp.typewriter.Block.layout', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='code', full_name='eolymp.typewriter.Block.code', 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='math', full_name='eolymp.typewriter.Block.math', index=3,
      number=4, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='image', full_name='eolymp.typewriter.Block.image', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='heading', full_name='eolymp.typewriter.Block.heading', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='list', full_name='eolymp.typewriter.Block.list', index=6,
      number=7, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='embed', full_name='eolymp.typewriter.Block.embed', index=7,
      number=8, 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,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='table', full_name='eolymp.typewriter.Block.table', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='widget', full_name='eolymp.typewriter.Block.widget', index=9,
      number=10, 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,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_BLOCK_PARAGRAPH, _BLOCK_LAYOUT, _BLOCK_LIST, _BLOCK_IMAGE, _BLOCK_HEADING, _BLOCK_MATH, _BLOCK_CODE, _BLOCK_EMBED, _BLOCK_TABLE, _BLOCK_WIDGET, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
    _descriptor.OneofDescriptor(
      name='node', full_name='eolymp.typewriter.Block.node',
      index=0, containing_type=None,
      create_key=_descriptor._internal_create_key,
    fields=[]),
  ],
  serialized_start=142,
  serialized_end=2224,
)

_CONTAINER.fields_by_name['children'].message_type = _BLOCK
_BLOCK_PARAGRAPH.fields_by_name['children'].message_type = eolymp_dot_typewriter_dot_inline__pb2._INLINE
_BLOCK_PARAGRAPH.containing_type = _BLOCK
_BLOCK_LAYOUT.fields_by_name['direction'].enum_type = _BLOCK_LAYOUT_DIRECTION
_BLOCK_LAYOUT.fields_by_name['align_items'].enum_type = _BLOCK_LAYOUT_ALIGNMENT
_BLOCK_LAYOUT.fields_by_name['align_content'].enum_type = _BLOCK_LAYOUT_ALIGNMENT
_BLOCK_LAYOUT.fields_by_name['justify_items'].enum_type = _BLOCK_LAYOUT_ALIGNMENT
_BLOCK_LAYOUT.fields_by_name['justify_content'].enum_type = _BLOCK_LAYOUT_ALIGNMENT
_BLOCK_LAYOUT.fields_by_name['children'].message_type = _CONTAINER
_BLOCK_LAYOUT.containing_type = _BLOCK
_BLOCK_LAYOUT_DIRECTION.containing_type = _BLOCK_LAYOUT
_BLOCK_LAYOUT_ALIGNMENT.containing_type = _BLOCK_LAYOUT
_BLOCK_LIST_ITEM.fields_by_name['children'].message_type = _BLOCK
_BLOCK_LIST_ITEM.containing_type = _BLOCK_LIST
_BLOCK_LIST.fields_by_name['style'].enum_type = _BLOCK_LIST_STYLE
_BLOCK_LIST.fields_by_name['children'].message_type = _BLOCK_LIST_ITEM
_BLOCK_LIST.containing_type = _BLOCK
_BLOCK_LIST_STYLE.containing_type = _BLOCK_LIST
_BLOCK_IMAGE.containing_type = _BLOCK
_BLOCK_HEADING.fields_by_name['children'].message_type = eolymp_dot_typewriter_dot_inline__pb2._INLINE
_BLOCK_HEADING.containing_type = _BLOCK
_BLOCK_MATH.containing_type = _BLOCK
_BLOCK_CODE.containing_type = _BLOCK
_BLOCK_EMBED_VALUE.containing_type = _BLOCK_EMBED
_BLOCK_EMBED.fields_by_name['values'].message_type = _BLOCK_EMBED_VALUE
_BLOCK_EMBED.containing_type = _BLOCK
_BLOCK_TABLE_ROW.fields_by_name['children'].message_type = _BLOCK_TABLE_CELL
_BLOCK_TABLE_ROW.containing_type = _BLOCK_TABLE
_BLOCK_TABLE_CELL.fields_by_name['children'].message_type = _BLOCK
_BLOCK_TABLE_CELL.containing_type = _BLOCK_TABLE
_BLOCK_TABLE.fields_by_name['header'].enum_type = _BLOCK_TABLE_HEADER
_BLOCK_TABLE.fields_by_name['children'].message_type = _BLOCK_TABLE_ROW
_BLOCK_TABLE.containing_type = _BLOCK
_BLOCK_TABLE_HEADER.containing_type = _BLOCK_TABLE
_BLOCK_WIDGET_ATTRIBUTESENTRY.containing_type = _BLOCK_WIDGET
_BLOCK_WIDGET.fields_by_name['attributes'].message_type = _BLOCK_WIDGET_ATTRIBUTESENTRY
_BLOCK_WIDGET.fields_by_name['children'].message_type = _BLOCK
_BLOCK_WIDGET.containing_type = _BLOCK
_BLOCK.fields_by_name['paragraph'].message_type = _BLOCK_PARAGRAPH
_BLOCK.fields_by_name['layout'].message_type = _BLOCK_LAYOUT
_BLOCK.fields_by_name['code'].message_type = _BLOCK_CODE
_BLOCK.fields_by_name['math'].message_type = _BLOCK_MATH
_BLOCK.fields_by_name['image'].message_type = _BLOCK_IMAGE
_BLOCK.fields_by_name['heading'].message_type = _BLOCK_HEADING
_BLOCK.fields_by_name['list'].message_type = _BLOCK_LIST
_BLOCK.fields_by_name['embed'].message_type = _BLOCK_EMBED
_BLOCK.fields_by_name['table'].message_type = _BLOCK_TABLE
_BLOCK.fields_by_name['widget'].message_type = _BLOCK_WIDGET
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['paragraph'])
_BLOCK.fields_by_name['paragraph'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['layout'])
_BLOCK.fields_by_name['layout'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['code'])
_BLOCK.fields_by_name['code'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['math'])
_BLOCK.fields_by_name['math'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['image'])
_BLOCK.fields_by_name['image'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['heading'])
_BLOCK.fields_by_name['heading'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['list'])
_BLOCK.fields_by_name['list'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['embed'])
_BLOCK.fields_by_name['embed'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['table'])
_BLOCK.fields_by_name['table'].containing_oneof = _BLOCK.oneofs_by_name['node']
_BLOCK.oneofs_by_name['node'].fields.append(
  _BLOCK.fields_by_name['widget'])
_BLOCK.fields_by_name['widget'].containing_oneof = _BLOCK.oneofs_by_name['node']
DESCRIPTOR.message_types_by_name['Container'] = _CONTAINER
DESCRIPTOR.message_types_by_name['Block'] = _BLOCK
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Container = _reflection.GeneratedProtocolMessageType('Container', (_message.Message,), {
  'DESCRIPTOR' : _CONTAINER,
  '__module__' : 'eolymp.typewriter.block_pb2'
  # @@protoc_insertion_point(class_scope:eolymp.typewriter.Container)
  })
_sym_db.RegisterMessage(Container)

Block = _reflection.GeneratedProtocolMessageType('Block', (_message.Message,), {

  'Paragraph' : _reflection.GeneratedProtocolMessageType('Paragraph', (_message.Message,), {
    'DESCRIPTOR' : _BLOCK_PARAGRAPH,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Paragraph)
    })
  ,

  'Layout' : _reflection.GeneratedProtocolMessageType('Layout', (_message.Message,), {
    'DESCRIPTOR' : _BLOCK_LAYOUT,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Layout)
    })
  ,

  'List' : _reflection.GeneratedProtocolMessageType('List', (_message.Message,), {

    'Item' : _reflection.GeneratedProtocolMessageType('Item', (_message.Message,), {
      'DESCRIPTOR' : _BLOCK_LIST_ITEM,
      '__module__' : 'eolymp.typewriter.block_pb2'
      # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.List.Item)
      })
    ,
    'DESCRIPTOR' : _BLOCK_LIST,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.List)
    })
  ,

  'Image' : _reflection.GeneratedProtocolMessageType('Image', (_message.Message,), {
    'DESCRIPTOR' : _BLOCK_IMAGE,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Image)
    })
  ,

  'Heading' : _reflection.GeneratedProtocolMessageType('Heading', (_message.Message,), {
    'DESCRIPTOR' : _BLOCK_HEADING,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Heading)
    })
  ,

  'Math' : _reflection.GeneratedProtocolMessageType('Math', (_message.Message,), {
    'DESCRIPTOR' : _BLOCK_MATH,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Math)
    })
  ,

  'Code' : _reflection.GeneratedProtocolMessageType('Code', (_message.Message,), {
    'DESCRIPTOR' : _BLOCK_CODE,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Code)
    })
  ,

  'Embed' : _reflection.GeneratedProtocolMessageType('Embed', (_message.Message,), {

    'Value' : _reflection.GeneratedProtocolMessageType('Value', (_message.Message,), {
      'DESCRIPTOR' : _BLOCK_EMBED_VALUE,
      '__module__' : 'eolymp.typewriter.block_pb2'
      # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Embed.Value)
      })
    ,
    'DESCRIPTOR' : _BLOCK_EMBED,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Embed)
    })
  ,

  'Table' : _reflection.GeneratedProtocolMessageType('Table', (_message.Message,), {

    'Row' : _reflection.GeneratedProtocolMessageType('Row', (_message.Message,), {
      'DESCRIPTOR' : _BLOCK_TABLE_ROW,
      '__module__' : 'eolymp.typewriter.block_pb2'
      # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Table.Row)
      })
    ,

    'Cell' : _reflection.GeneratedProtocolMessageType('Cell', (_message.Message,), {
      'DESCRIPTOR' : _BLOCK_TABLE_CELL,
      '__module__' : 'eolymp.typewriter.block_pb2'
      # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Table.Cell)
      })
    ,
    'DESCRIPTOR' : _BLOCK_TABLE,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Table)
    })
  ,

  'Widget' : _reflection.GeneratedProtocolMessageType('Widget', (_message.Message,), {

    'AttributesEntry' : _reflection.GeneratedProtocolMessageType('AttributesEntry', (_message.Message,), {
      'DESCRIPTOR' : _BLOCK_WIDGET_ATTRIBUTESENTRY,
      '__module__' : 'eolymp.typewriter.block_pb2'
      # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Widget.AttributesEntry)
      })
    ,
    'DESCRIPTOR' : _BLOCK_WIDGET,
    '__module__' : 'eolymp.typewriter.block_pb2'
    # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block.Widget)
    })
  ,
  'DESCRIPTOR' : _BLOCK,
  '__module__' : 'eolymp.typewriter.block_pb2'
  # @@protoc_insertion_point(class_scope:eolymp.typewriter.Block)
  })
_sym_db.RegisterMessage(Block)
_sym_db.RegisterMessage(Block.Paragraph)
_sym_db.RegisterMessage(Block.Layout)
_sym_db.RegisterMessage(Block.List)
_sym_db.RegisterMessage(Block.List.Item)
_sym_db.RegisterMessage(Block.Image)
_sym_db.RegisterMessage(Block.Heading)
_sym_db.RegisterMessage(Block.Math)
_sym_db.RegisterMessage(Block.Code)
_sym_db.RegisterMessage(Block.Embed)
_sym_db.RegisterMessage(Block.Embed.Value)
_sym_db.RegisterMessage(Block.Table)
_sym_db.RegisterMessage(Block.Table.Row)
_sym_db.RegisterMessage(Block.Table.Cell)
_sym_db.RegisterMessage(Block.Widget)
_sym_db.RegisterMessage(Block.Widget.AttributesEntry)


DESCRIPTOR._options = None
_BLOCK_WIDGET_ATTRIBUTESENTRY._options = None
# @@protoc_insertion_point(module_scope)
