Ë
    >²Xj?  ã                   óŽ   — 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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                 óú   — |j                   j                  «       D ]-  \  }}||j                  «       z   }|| |<   t        | ||dz   «       Œ/ |j                  D ]"  }|| ||j
                  j                  «       z   <   Œ$ y )NÚ_)Únested_types_by_nameÚitemsÚupperÚ_BuildNestedDescriptorsÚ
enum_typesÚname)ÚmoduleÚmsg_desÚprefixr   Ú
nested_msgÚmodule_nameÚenum_dess          úf/var/www/html/content_generation/venv/lib/python3.12/site-packages/google/protobuf/internal/builder.pyr   r      sy   € Ø!×6Ñ6×<Ñ<Ö>Ñ€dˆJØ˜4Ÿ:™:›<Ñ'€KØ$€Fˆ;ÑÜ˜F J°¸cÑ0AÕBð ?ð ×$Ô$€hØ-5€Fˆ6�H—M‘M×'Ñ'Ó)Ñ)Ò*ñ %ó    c                 ó˜   — | j                   j                  «       D ]-  \  }}d|j                  «       z   }|||<   t        |||dz   «       Œ/ y)z‚Builds message and enum descriptors.

  Args:
    file_des: FileDescriptor of the .proto file
    module: Generated _pb2 module
  r	   N)Úmessage_types_by_namer   r   r   )Úfile_desr   r   r   r   s        r   ÚBuildMessageAndEnumDescriptorsr   #   sM   € ð "×7Ñ7×=Ñ=Ö?�o€tˆWØ˜Ÿ
™
›Ñ$€KØ!€Fˆ;ÑÜ˜F G¨[¸3Ñ->Õ?ñ @r   c                 óP  — i }|j                   j                  «       D ]%  \  }}t        | |||j                  z   dz   «      ||<   Œ' ||d<   | |d<   ||j                  z   |d<   t	        j
                  |j                  t        j                  f|«      }t        j                  |«       |S )NÚ.Ú
DESCRIPTORÚ
__module__Ú__qualname__)
r
   r   Ú_BuildMessager   Ú_reflectionÚGeneratedProtocolMessageTypeÚ_messageÚMessageÚ_sym_dbÚRegisterMessage)r   r   r   Úcreate_dictr   r   Úmessage_classs          r   r!   r!   0   s¬   € Ø€+Ø!×6Ñ6×<Ñ<Ö>Ñ€dˆJÜ%Ø�Z ¨'¯,©,Ñ!6¸Ñ!<ó€K�Òð ?ð &€+ˆlÑØ)€+ˆlÑØ &¨¯©Ñ 5€+ˆnÑÜ×:Ñ:Ø‡l�l”X×%Ñ%Ð'¨ó€-ô 
×Ñ˜-Ô(Ø	Ðr   c                 óZ  — | 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 ]  \  }}t        ||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
  r	   Ú_FIELD_NUMBERÚ N)Úenum_types_by_namer   r   r   ÚEnumTypeWrapperÚvaluesÚnumberr   Úextensions_by_nameÚservices_by_namer   r!   )	r   r   r   r   r   Ú
enum_valueÚextension_desÚservicer   s	            r   ÚBuildTopDescriptorsAndMessagesr6   @   s  € ð #×5Ñ5×;Ñ;Ö=Ñ€tˆXØ!)€Fˆ3�—‘“ÑÑÜ$×4Ñ4°XÓ>€Fˆ4�LØ—o”oˆ
Ø *× 1Ñ 1€fˆZ�_‰_Òñ &ð >ð  (×:Ñ:×@Ñ@ÖBÑ€tˆ]Ø-:×-AÑ-A€Fˆ4�:‰:‹<˜/Ñ)Ñ*Ø €Fˆ4‚Lð  Cð
 "×2Ñ2×8Ñ8Ö:�o€tˆWØ!(€Fˆ3�—‘“ÑÒð ;ð "×7Ñ7×=Ñ=Ö?�o€tˆWÜ  ¨g°rÓ:€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   ^   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   h   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   r   r!   r6   r9   rB   r8   r   r   Ú<module>rH      sP   ðñð +€
å 6Ý 3Ý /Ý 5Ý ?à
"Ð
×
"Ñ
"Ó
$€ò6ò
@òò ;ò<	ó:r   