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

from google.protobuf.internal import enum_type_wrapper
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 . import utils_pb2 as utils__pb2
from . import circuit_pb2 as circuit__pb2


DESCRIPTOR = _descriptor.FileDescriptor(
    name="raw.proto",
    package="vlsir.raw",
    syntax="proto3",
    serialized_options=None,
    create_key=_descriptor._internal_create_key,
    serialized_pb=b'\n\traw.proto\x12\tvlsir.raw\x1a\x0butils.proto\x1a\rcircuit.proto"\x1d\n\x05Point\x12\t\n\x01x\x18\x01 \x01(\x03\x12\t\n\x01y\x18\x02 \x01(\x03"(\n\x05Layer\x12\x0e\n\x06number\x18\x01 \x01(\x03\x12\x0f\n\x07purpose\x18\x02 \x01(\x03"]\n\tRectangle\x12\x0b\n\x03net\x18\x01 \x01(\t\x12$\n\nlower_left\x18\x02 \x01(\x0b\x32\x10.vlsir.raw.Point\x12\r\n\x05width\x18\x03 \x01(\x03\x12\x0e\n\x06height\x18\x04 \x01(\x03":\n\x07Polygon\x12\x0b\n\x03net\x18\x01 \x01(\t\x12"\n\x08vertices\x18\x02 \x03(\x0b\x32\x10.vlsir.raw.Point"D\n\x04Path\x12\x0b\n\x03net\x18\x01 \x01(\t\x12 \n\x06points\x18\x02 \x03(\x0b\x32\x10.vlsir.raw.Point\x12\r\n\x05width\x18\x03 \x01(\x03"\x9e\x01\n\x0bLayerShapes\x12\x1f\n\x05layer\x18\x01 \x01(\x0b\x32\x10.vlsir.raw.Layer\x12(\n\nrectangles\x18\x02 \x03(\x0b\x32\x14.vlsir.raw.Rectangle\x12$\n\x08polygons\x18\x03 \x03(\x0b\x32\x12.vlsir.raw.Polygon\x12\x1e\n\x05paths\x18\x04 \x03(\x0b\x32\x0f.vlsir.raw.Path"<\n\x0bTextElement\x12\x0e\n\x06string\x18\x01 \x01(\t\x12\x1d\n\x03loc\x18\x02 \x01(\x0b\x32\x10.vlsir.raw.Point"\xa3\x01\n\x08Instance\x12\x0c\n\x04name\x18\x01 \x01(\t\x12$\n\x04\x63\x65ll\x18\x03 \x01(\x0b\x32\x16.vlsir.utils.Reference\x12)\n\x0forigin_location\x18\x04 \x01(\x0b\x32\x10.vlsir.raw.Point\x12\x14\n\x0creflect_vert\x18\x06 \x01(\x08\x12"\n\x1arotation_clockwise_degrees\x18\x07 \x01(\x05"\x93\x01\n\x06Layout\x12\x0c\n\x04name\x18\x01 \x01(\t\x12&\n\x06shapes\x18\x02 \x03(\x0b\x32\x16.vlsir.raw.LayerShapes\x12&\n\tinstances\x18\x03 \x03(\x0b\x32\x13.vlsir.raw.Instance\x12+\n\x0b\x61nnotations\x18\x04 \x03(\x0b\x32\x16.vlsir.raw.TextElement"\x90\x01\n\x08\x41\x62stract\x12\x0c\n\x04name\x18\x01 \x01(\t\x12#\n\x07outline\x18\x02 \x01(\x0b\x32\x12.vlsir.raw.Polygon\x12&\n\x05ports\x18\x04 \x03(\x0b\x32\x17.vlsir.raw.AbstractPort\x12)\n\tblockages\x18\x05 \x03(\x0b\x32\x16.vlsir.raw.LayerShapes"C\n\x0c\x41\x62stractPort\x12\x0b\n\x03net\x18\x01 \x01(\t\x12&\n\x06shapes\x18\x02 \x03(\x0b\x32\x16.vlsir.raw.LayerShapes"\xb2\x01\n\x04\x43\x65ll\x12\x0c\n\x04name\x18\x01 \x01(\t\x12+\n\tinterface\x18\n \x01(\x0b\x32\x18.vlsir.circuit.Interface\x12%\n\x06module\x18\x0b \x01(\x0b\x32\x15.vlsir.circuit.Module\x12%\n\x08\x61\x62stract\x18\x0c \x01(\x0b\x32\x13.vlsir.raw.Abstract\x12!\n\x06layout\x18\r \x01(\x0b\x32\x11.vlsir.raw.Layout"\x87\x01\n\x07Library\x12\x0e\n\x06\x64omain\x18\x01 \x01(\t\x12\x1f\n\x05units\x18\x02 \x01(\x0e\x32\x10.vlsir.raw.Units\x12\x1e\n\x05\x63\x65lls\x18\n \x03(\x0b\x32\x0f.vlsir.raw.Cell\x12+\n\x06\x61uthor\x18\x14 \x01(\x0b\x32\x1b.vlsir.utils.AuthorMetadata**\n\x05Units\x12\t\n\x05MICRO\x10\x00\x12\x08\n\x04NANO\x10\x01\x12\x0c\n\x08\x41NGSTROM\x10\x02\x62\x06proto3',
    dependencies=[utils__pb2.DESCRIPTOR, circuit__pb2.DESCRIPTOR,],
)

_UNITS = _descriptor.EnumDescriptor(
    name="Units",
    full_name="vlsir.raw.Units",
    filename=None,
    file=DESCRIPTOR,
    create_key=_descriptor._internal_create_key,
    values=[
        _descriptor.EnumValueDescriptor(
            name="MICRO",
            index=0,
            number=0,
            serialized_options=None,
            type=None,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.EnumValueDescriptor(
            name="NANO",
            index=1,
            number=1,
            serialized_options=None,
            type=None,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.EnumValueDescriptor(
            name="ANGSTROM",
            index=2,
            number=2,
            serialized_options=None,
            type=None,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    containing_type=None,
    serialized_options=None,
    serialized_start=1424,
    serialized_end=1466,
)
_sym_db.RegisterEnumDescriptor(_UNITS)

Units = enum_type_wrapper.EnumTypeWrapper(_UNITS)
MICRO = 0
NANO = 1
ANGSTROM = 2


_POINT = _descriptor.Descriptor(
    name="Point",
    full_name="vlsir.raw.Point",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="x",
            full_name="vlsir.raw.Point.x",
            index=0,
            number=1,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="y",
            full_name="vlsir.raw.Point.y",
            index=1,
            number=2,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=52,
    serialized_end=81,
)


_LAYER = _descriptor.Descriptor(
    name="Layer",
    full_name="vlsir.raw.Layer",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="number",
            full_name="vlsir.raw.Layer.number",
            index=0,
            number=1,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="purpose",
            full_name="vlsir.raw.Layer.purpose",
            index=1,
            number=2,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=83,
    serialized_end=123,
)


_RECTANGLE = _descriptor.Descriptor(
    name="Rectangle",
    full_name="vlsir.raw.Rectangle",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="net",
            full_name="vlsir.raw.Rectangle.net",
            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="lower_left",
            full_name="vlsir.raw.Rectangle.lower_left",
            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="width",
            full_name="vlsir.raw.Rectangle.width",
            index=2,
            number=3,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="height",
            full_name="vlsir.raw.Rectangle.height",
            index=3,
            number=4,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=125,
    serialized_end=218,
)


_POLYGON = _descriptor.Descriptor(
    name="Polygon",
    full_name="vlsir.raw.Polygon",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="net",
            full_name="vlsir.raw.Polygon.net",
            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="vertices",
            full_name="vlsir.raw.Polygon.vertices",
            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=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=220,
    serialized_end=278,
)


_PATH = _descriptor.Descriptor(
    name="Path",
    full_name="vlsir.raw.Path",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="net",
            full_name="vlsir.raw.Path.net",
            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="points",
            full_name="vlsir.raw.Path.points",
            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="width",
            full_name="vlsir.raw.Path.width",
            index=2,
            number=3,
            type=3,
            cpp_type=2,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=280,
    serialized_end=348,
)


_LAYERSHAPES = _descriptor.Descriptor(
    name="LayerShapes",
    full_name="vlsir.raw.LayerShapes",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="layer",
            full_name="vlsir.raw.LayerShapes.layer",
            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="rectangles",
            full_name="vlsir.raw.LayerShapes.rectangles",
            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="polygons",
            full_name="vlsir.raw.LayerShapes.polygons",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="paths",
            full_name="vlsir.raw.LayerShapes.paths",
            index=3,
            number=4,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=351,
    serialized_end=509,
)


_TEXTELEMENT = _descriptor.Descriptor(
    name="TextElement",
    full_name="vlsir.raw.TextElement",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="string",
            full_name="vlsir.raw.TextElement.string",
            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="loc",
            full_name="vlsir.raw.TextElement.loc",
            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,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=511,
    serialized_end=571,
)


_INSTANCE = _descriptor.Descriptor(
    name="Instance",
    full_name="vlsir.raw.Instance",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="vlsir.raw.Instance.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="cell",
            full_name="vlsir.raw.Instance.cell",
            index=1,
            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="origin_location",
            full_name="vlsir.raw.Instance.origin_location",
            index=2,
            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="reflect_vert",
            full_name="vlsir.raw.Instance.reflect_vert",
            index=3,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="rotation_clockwise_degrees",
            full_name="vlsir.raw.Instance.rotation_clockwise_degrees",
            index=4,
            number=7,
            type=5,
            cpp_type=1,
            label=1,
            has_default_value=False,
            default_value=0,
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=574,
    serialized_end=737,
)


_LAYOUT = _descriptor.Descriptor(
    name="Layout",
    full_name="vlsir.raw.Layout",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="vlsir.raw.Layout.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="shapes",
            full_name="vlsir.raw.Layout.shapes",
            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="instances",
            full_name="vlsir.raw.Layout.instances",
            index=2,
            number=3,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="annotations",
            full_name="vlsir.raw.Layout.annotations",
            index=3,
            number=4,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
    ],
    extensions=[],
    nested_types=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=740,
    serialized_end=887,
)


_ABSTRACT = _descriptor.Descriptor(
    name="Abstract",
    full_name="vlsir.raw.Abstract",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="vlsir.raw.Abstract.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="outline",
            full_name="vlsir.raw.Abstract.outline",
            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="ports",
            full_name="vlsir.raw.Abstract.ports",
            index=2,
            number=4,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=None,
            file=DESCRIPTOR,
            create_key=_descriptor._internal_create_key,
        ),
        _descriptor.FieldDescriptor(
            name="blockages",
            full_name="vlsir.raw.Abstract.blockages",
            index=3,
            number=5,
            type=11,
            cpp_type=10,
            label=3,
            has_default_value=False,
            default_value=[],
            message_type=None,
            enum_type=None,
            containing_type=None,
            is_extension=False,
            extension_scope=None,
            serialized_options=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=890,
    serialized_end=1034,
)


_ABSTRACTPORT = _descriptor.Descriptor(
    name="AbstractPort",
    full_name="vlsir.raw.AbstractPort",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="net",
            full_name="vlsir.raw.AbstractPort.net",
            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="shapes",
            full_name="vlsir.raw.AbstractPort.shapes",
            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=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1036,
    serialized_end=1103,
)


_CELL = _descriptor.Descriptor(
    name="Cell",
    full_name="vlsir.raw.Cell",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="name",
            full_name="vlsir.raw.Cell.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="interface",
            full_name="vlsir.raw.Cell.interface",
            index=1,
            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,
        ),
        _descriptor.FieldDescriptor(
            name="module",
            full_name="vlsir.raw.Cell.module",
            index=2,
            number=11,
            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="abstract",
            full_name="vlsir.raw.Cell.abstract",
            index=3,
            number=12,
            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="vlsir.raw.Cell.layout",
            index=4,
            number=13,
            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=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1106,
    serialized_end=1284,
)


_LIBRARY = _descriptor.Descriptor(
    name="Library",
    full_name="vlsir.raw.Library",
    filename=None,
    file=DESCRIPTOR,
    containing_type=None,
    create_key=_descriptor._internal_create_key,
    fields=[
        _descriptor.FieldDescriptor(
            name="domain",
            full_name="vlsir.raw.Library.domain",
            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="units",
            full_name="vlsir.raw.Library.units",
            index=1,
            number=2,
            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="cells",
            full_name="vlsir.raw.Library.cells",
            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,
        ),
        _descriptor.FieldDescriptor(
            name="author",
            full_name="vlsir.raw.Library.author",
            index=3,
            number=20,
            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=[],
    enum_types=[],
    serialized_options=None,
    is_extendable=False,
    syntax="proto3",
    extension_ranges=[],
    oneofs=[],
    serialized_start=1287,
    serialized_end=1422,
)

_RECTANGLE.fields_by_name["lower_left"].message_type = _POINT
_POLYGON.fields_by_name["vertices"].message_type = _POINT
_PATH.fields_by_name["points"].message_type = _POINT
_LAYERSHAPES.fields_by_name["layer"].message_type = _LAYER
_LAYERSHAPES.fields_by_name["rectangles"].message_type = _RECTANGLE
_LAYERSHAPES.fields_by_name["polygons"].message_type = _POLYGON
_LAYERSHAPES.fields_by_name["paths"].message_type = _PATH
_TEXTELEMENT.fields_by_name["loc"].message_type = _POINT
_INSTANCE.fields_by_name["cell"].message_type = utils__pb2._REFERENCE
_INSTANCE.fields_by_name["origin_location"].message_type = _POINT
_LAYOUT.fields_by_name["shapes"].message_type = _LAYERSHAPES
_LAYOUT.fields_by_name["instances"].message_type = _INSTANCE
_LAYOUT.fields_by_name["annotations"].message_type = _TEXTELEMENT
_ABSTRACT.fields_by_name["outline"].message_type = _POLYGON
_ABSTRACT.fields_by_name["ports"].message_type = _ABSTRACTPORT
_ABSTRACT.fields_by_name["blockages"].message_type = _LAYERSHAPES
_ABSTRACTPORT.fields_by_name["shapes"].message_type = _LAYERSHAPES
_CELL.fields_by_name["interface"].message_type = circuit__pb2._INTERFACE
_CELL.fields_by_name["module"].message_type = circuit__pb2._MODULE
_CELL.fields_by_name["abstract"].message_type = _ABSTRACT
_CELL.fields_by_name["layout"].message_type = _LAYOUT
_LIBRARY.fields_by_name["units"].enum_type = _UNITS
_LIBRARY.fields_by_name["cells"].message_type = _CELL
_LIBRARY.fields_by_name["author"].message_type = utils__pb2._AUTHORMETADATA
DESCRIPTOR.message_types_by_name["Point"] = _POINT
DESCRIPTOR.message_types_by_name["Layer"] = _LAYER
DESCRIPTOR.message_types_by_name["Rectangle"] = _RECTANGLE
DESCRIPTOR.message_types_by_name["Polygon"] = _POLYGON
DESCRIPTOR.message_types_by_name["Path"] = _PATH
DESCRIPTOR.message_types_by_name["LayerShapes"] = _LAYERSHAPES
DESCRIPTOR.message_types_by_name["TextElement"] = _TEXTELEMENT
DESCRIPTOR.message_types_by_name["Instance"] = _INSTANCE
DESCRIPTOR.message_types_by_name["Layout"] = _LAYOUT
DESCRIPTOR.message_types_by_name["Abstract"] = _ABSTRACT
DESCRIPTOR.message_types_by_name["AbstractPort"] = _ABSTRACTPORT
DESCRIPTOR.message_types_by_name["Cell"] = _CELL
DESCRIPTOR.message_types_by_name["Library"] = _LIBRARY
DESCRIPTOR.enum_types_by_name["Units"] = _UNITS
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Point = _reflection.GeneratedProtocolMessageType(
    "Point",
    (_message.Message,),
    {
        "DESCRIPTOR": _POINT,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Point)
    },
)
_sym_db.RegisterMessage(Point)

Layer = _reflection.GeneratedProtocolMessageType(
    "Layer",
    (_message.Message,),
    {
        "DESCRIPTOR": _LAYER,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Layer)
    },
)
_sym_db.RegisterMessage(Layer)

Rectangle = _reflection.GeneratedProtocolMessageType(
    "Rectangle",
    (_message.Message,),
    {
        "DESCRIPTOR": _RECTANGLE,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Rectangle)
    },
)
_sym_db.RegisterMessage(Rectangle)

Polygon = _reflection.GeneratedProtocolMessageType(
    "Polygon",
    (_message.Message,),
    {
        "DESCRIPTOR": _POLYGON,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Polygon)
    },
)
_sym_db.RegisterMessage(Polygon)

Path = _reflection.GeneratedProtocolMessageType(
    "Path",
    (_message.Message,),
    {
        "DESCRIPTOR": _PATH,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Path)
    },
)
_sym_db.RegisterMessage(Path)

LayerShapes = _reflection.GeneratedProtocolMessageType(
    "LayerShapes",
    (_message.Message,),
    {
        "DESCRIPTOR": _LAYERSHAPES,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.LayerShapes)
    },
)
_sym_db.RegisterMessage(LayerShapes)

TextElement = _reflection.GeneratedProtocolMessageType(
    "TextElement",
    (_message.Message,),
    {
        "DESCRIPTOR": _TEXTELEMENT,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.TextElement)
    },
)
_sym_db.RegisterMessage(TextElement)

Instance = _reflection.GeneratedProtocolMessageType(
    "Instance",
    (_message.Message,),
    {
        "DESCRIPTOR": _INSTANCE,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Instance)
    },
)
_sym_db.RegisterMessage(Instance)

Layout = _reflection.GeneratedProtocolMessageType(
    "Layout",
    (_message.Message,),
    {
        "DESCRIPTOR": _LAYOUT,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Layout)
    },
)
_sym_db.RegisterMessage(Layout)

Abstract = _reflection.GeneratedProtocolMessageType(
    "Abstract",
    (_message.Message,),
    {
        "DESCRIPTOR": _ABSTRACT,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Abstract)
    },
)
_sym_db.RegisterMessage(Abstract)

AbstractPort = _reflection.GeneratedProtocolMessageType(
    "AbstractPort",
    (_message.Message,),
    {
        "DESCRIPTOR": _ABSTRACTPORT,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.AbstractPort)
    },
)
_sym_db.RegisterMessage(AbstractPort)

Cell = _reflection.GeneratedProtocolMessageType(
    "Cell",
    (_message.Message,),
    {
        "DESCRIPTOR": _CELL,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Cell)
    },
)
_sym_db.RegisterMessage(Cell)

Library = _reflection.GeneratedProtocolMessageType(
    "Library",
    (_message.Message,),
    {
        "DESCRIPTOR": _LIBRARY,
        "__module__": "raw_pb2"
        # @@protoc_insertion_point(class_scope:vlsir.raw.Library)
    },
)
_sym_db.RegisterMessage(Library)


# @@protoc_insertion_point(module_scope)
