+
     h  c                   s`    R t ^ RIHt ^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt R t	R	R lt
R tR# )
zDynamic Protobuf class creator.)OrderedDictN)descriptor_pb2)
descriptor)message_factoryc                s^    V P                   P                  V4      pV P                  V4      pV# )a(  Get a proto class from the MessageFactory by name.

Args:
  factory: a MessageFactory instance.
  full_name: str, the fully qualified name of the proto type.
Returns:
  A class, for the type identified by full_name.
Raises:
  KeyError, if the proto is not found in the factory's descriptor pool.
)poolZFindMessageTypeByNameZGetPrototype)factory	full_nameZproto_descriptor	proto_clss   &&  B/usr/lib/python3.14/site-packages/google/protobuf/proto_builder.py_GetMessageFromFactoryr	   *   s0     \\77	B""#34)	    c                s   \         P                  ! VR7      pVe    \        W14      pV# V P	                  4       p\        V \        4      '       g   \        V4      p\        P                  ! 4       pV FN  w  rxVP                  VP                  R4      4       VP                  \        V4      P                  R4      4       KP  	  VP                  4       R,           p	Vf&   RVP                  4       ,           p \        W14      pV# VP                  P                  \!        WV4      4       \        W14      #   \         d     ELi ; i  \         d     LOi ; i)a  Create a Protobuf class whose fields are basic types.

Note: this doesn't validate field names!

Args:
  fields: dict of {name: field_type} mappings for each field in the proto. If
      this is an OrderedDict the order will be maintained, otherwise the
      fields will be sorted by name.
  full_name: optional str, the fully-qualified name of the proto type.
  pool: optional DescriptorPool instance.
Returns:
  a class, the new protobuf class with a FileDescriptor.
)r   zutf-8z.protoz6net.proto2.python.public.proto_builder.AnonymousProto_)r   ZMessageFactoryr	   ZKeyErrorZitemsZ
isinstancer    ZsortedhashlibZsha1ZupdateZencodeZstrZ	hexdigestr   ZAdd_MakeFileDescriptorProto)
Zfieldsr   r   r   r   field_itemsZfields_hashf_namef_typeproto_file_names
   &&&       r   MakeSimpleProtoClassr   :   s:    **5'(<i +	FK	(	(%K +#nfv}}W-.s6{))'23 $  ))+h6/ I&&()I(<i 
,,;GI		33C  
4  
s#   D4 7E 4EEEEc                s   VP                  R^4      w  r4\        P                  ! 4       p\        P                  P                  VP                  RR4      V 4      Vn        W5n        VP                  P                  4       pWFn        \        V^4       F  w  pw  rVP                  P                  4       p
Wn        V\        P                  P                  8  dH   V\        P                  P                   \        P                  P                  ,
          ^,           ,          pWzn        \        P$                  P&                  V
n        Wn        K  	  V# )zAPopulate FileDescriptorProto for MessageFactory's DescriptorPool.Z.Z/)Zrsplitr   ZFileDescriptorProtoosZpathZjoinZreplacenamepackageZmessage_typeZaddZ	enumerateZfieldr   ZFieldDescriptorZFIRST_RESERVED_FIELD_NUMBERZLAST_RESERVED_FIELD_NUMBERZnumberZFieldDescriptorProtoZLABEL_OPTIONALZlabelZtype)r   r   r   r   r   Z
file_protoZ
desc_protoZf_numberr   r   Zfield_protos   &&&        r   r   r   r   s   ""3*-'113*GGLLc!:OL*/&&**,*/$-k1$= h ""&&(K :--III

$
$
?
?

$
$
@
@ACDEFh "&;;JJK %> 
r
   )NN)Z__doc__Zcollectionsr    r   r   Zgoogle.protobufr   r   r   r	   r   r   ) r
   r   <module>r      s,   > & #  	 * & + 54pr
   