Ë
    ÒÍ:j  ã                   ó‚   — d Z dZddlmZ ddlmZ ddlmZ ddlmZ	 ddlm
Z  ej                  «       Zd„ Zd	„ Zd
„ Zd„ Zy)zèBuilds descriptors, message classes and services for generated _pb2.py.

This file is only called in python generated _pb2.py files. It builds
descriptors, message classes and services that users can directly use
in generated code.
zjieluo@google.com (Jie Luo)é    )Úenum_type_wrapper)Úpython_message)Úmessage)Ú
reflection)Úsymbol_databasec                 ó    ‡‡— ˆˆfd„Š| j                   j                  «       D ])  \  }}d|j                  «       z   }|‰|<    ‰||dz   «       Œ+ y)z‚Builds message and enum descriptors.

  Args:
    file_des: FileDescriptor of the .proto file
    module: Generated _pb2 module
  c                 óô   •— | j                   j                  «       D ])  \  }}||j                  «       z   }|‰|<    ‰||dz   «       Œ+ | j                  D ]"  }|‰||j                  j                  «       z   <   Œ$ y )NÚ_)Únested_types_by_nameÚitemsÚupperÚ
enum_typesÚname)Úmsg_desÚprefixr   Ú
nested_msgÚmodule_nameÚenum_desÚBuildNestedDescriptorsÚmodules         €€úu/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/google/protobuf/internal/builder.pyr   z>BuildMessageAndEnumDescriptors.<locals>.BuildNestedDescriptors"   s‚   ø€ Ø%×:Ñ:×@Ñ@ÓBò <ÑˆˆzØ˜TŸZ™Z›\Ñ)€kØ&€fˆ[ÑÙ˜Z¨°sÑ):Õ;ð<ð ×&Ñ&ò 8ˆØ/7€fˆV�h—m‘m×)Ñ)Ó+Ñ+Ò,ñ8ó    r
   N)Úmessage_types_by_namer   r   )Úfile_desr   r   r   r   r   s    `   @r   ÚBuildMessageAndEnumDescriptorsr      sU   ù€ õ8ð "×7Ñ7×=Ñ=Ó?ò 7�o€tˆWØ˜Ÿ
™
›Ñ$€KØ!€Fˆ;ÑÙ˜7 K°#Ñ$5Õ6ñ7r   c                 ób  ‡‡	— ˆ	ˆfd„Š	| j                   j                  «       D ]]  \  }}||d|j                  «       z   <   t        j                  |«      ||<   |j
                  D ]  }|j                  ||j                  <   Œ Œ_ | j                  j                  «       D ]*  \  }}|j                  ||j                  «       dz   <   |||<   Œ, | j                  j                  «       D ]  \  }}||d|j                  «       z   <   Œ | j                  j                  «       D ]  \  }} ‰	|d«      ||<   Œ y)zÇBuilds top level descriptors and message classes.

  Args:
    file_des: FileDescriptor of the .proto file
    module_name: str, the name of generated _pb2 module
    module: Generated _pb2 module
  c                 óJ  •— i }| j                   j                  «       D ]!  \  }} ‰||| j                  z   dz   «      ||<   Œ# | |d<   ‰|d<   || j                  z   |d<   t        j                  | j                  t
        j                  f|«      }t        j                  |«       |S )Nú.Ú
DESCRIPTORÚ
__module__Ú__qualname__)	r   r   r   Ú_reflectionÚGeneratedProtocolMessageTypeÚ_messageÚMessageÚ_sym_dbÚRegisterMessage)r   r   Úcreate_dictr   r   Úmessage_classÚBuildMessager   s         €€r   r*   z4BuildTopDescriptorsAndMessages.<locals>.BuildMessage9   s«   ø€ Ø€KØ%×:Ñ:×@Ñ@ÓBò PÑˆˆzÙ& z°6¸G¿L¹LÑ3HÈ3Ñ3NÓO€k�$ÒðPà '€K�ÑØ +€K�ÑØ"(¨7¯<©<Ñ"7€K�ÑÜ×<Ñ<Ø�‰”x×'Ñ'Ð)¨;ó8€Mä×Ñ˜MÔ*ØÐr   r
   Ú_FIELD_NUMBERÚ N)Úenum_types_by_namer   r   r   ÚEnumTypeWrapperÚvaluesÚnumberr   Úextensions_by_nameÚservices_by_namer   )
r   r   r   r   r   Ú
enum_valueÚextension_desÚservicer   r*   s
    `       @r   ÚBuildTopDescriptorsAndMessagesr6   0   s3  ù€ õ
ð #×5Ñ5×;Ñ;Ó=ò 2Ñ€tˆXØ!)€Fˆ3�—‘“ÑÑÜ$×4Ñ4°XÓ>€Fˆ4�LØ—o‘oò 2ˆ
Ø *× 1Ñ 1€fˆZ�_‰_Òñ2ð2ð  (×:Ñ:×@Ñ@ÓBò !Ñ€tˆ]Ø-:×-AÑ-A€Fˆ4�:‰:‹<˜/Ñ)Ñ*Ø €Fˆ4‚Lð!ð
 "×2Ñ2×8Ñ8Ó:ò )�o€tˆWØ!(€Fˆ3�—‘“ÑÒð)ð "×7Ñ7×=Ñ=Ó?ò -�o€tˆWÙ ¨Ó,€Fˆ4‚Lñ-r   c                  ó   — y)zsno-op to keep old generated code work with new runtime.

  Args:
    file_des: FileDescriptor of the .proto file
  N© )r   s    r   ÚAddHelpersToExtensionsr9   Z   s   € ð 	r   c           	      óê   — ddl m} | j                  j                  «       D ]P  \  }}|j	                  |dt        ||¬«      «      ||<   |dz   }|j                  |||   ft        ||¬«      «      ||<   ŒR y)zÆBuilds services classes and services stub class.

  Args:
    file_des: FileDescriptor of the .proto file
    module_name: str, the name of generated _pb2 module
    module: Generated _pb2 module
  r   )Úservice_reflectionr8   )r   r    Ú_StubN)Úgoogle.protobufr;   r2   r   ÚGeneratedServiceTypeÚdictÚGeneratedServiceStubType)r   r   r   r;   r   r5   Ú	stub_names          r   ÚBuildServicesrB   d   s�   € õ 1à!×2Ñ2×8Ñ8Ó:ò :�o€tˆWØ%×:Ñ:ØˆbÜ˜¨KÔ8ó:€Fˆ4�Lð �w‘€IØ*×CÑCØ�F˜4‘L�?Ü˜¨KÔ8ó:€Fˆ9Òñ:r   N)Ú__doc__Ú
__author__Úgoogle.protobuf.internalr   r   r=   r   r$   r   r"   r   Ú_symbol_databaseÚDefaultr&   r   r6   r9   rB   r8   r   r   ú<module>rH      sF   ðñð +€
å 6Ý 3Ý /Ý 5Ý ?à
"Ð
×
"Ñ
"Ó
$€ò7ò,'-òT	ó:r   