+
    æôÖj$  ã                   óî   € R t . ROt/ tRR ltR tR t]! ]]]4       R t]! ]! ]	]
,          4      ]4       R t]! ]]4       R tRt]! ]	P                  4      tR tR	 tR
 tR t/ t/ t/ tR tR tR tR# )z¤Helper to provide extensibility for pickle.

This is only useful to add pickle support for extension types defined in
C, not for instances of user-defined classes.
Nc                 ór   € \        V4      '       g   \        R 4      hV\        V &   Ve   \        V4       R# R# )z$reduction functions must be callableN)ÚcallableÚ	TypeErrorÚdispatch_tableÚconstructor)Úob_typeÚpickle_functionÚconstructor_obs   &&&Ú[/home/div/.local/share/uv/python/cpython-3.14.7-linux-aarch64-gnu/lib/python3.14/copyreg.pyÚpickler      s8   € Ü�O×$Ò$ÜÐ>Ó?Ð?Ø-„N�7Ñð Ò!Ü�NÖ#ñ "ó    c                 ó>   € \        V 4      '       g   \        R 4      hR# )zconstructors must be callableN)r   r   )Úobjects   &r
   r   r      s   € Ü�F×ÒÜÐ7Ó8Ð8ñ r   c                 ó>   € \         V P                  V P                  33# ©N)ÚcomplexÚrealÚimag)Úcs   &r
   Úpickle_complexr      s   € Ü�Q—V‘V˜QŸV™VÐ$Ð$Ð$r   c                 óZ   € ^ RI p^ RIpVP                  VP                  V P                  33# )é    N)ÚtypingÚoperatorÚgetitemÚUnionÚ__args__)Úobjr   r   s   &  r
   Úpickle_unionr   !   s#   € ßØ×Ñ˜fŸl™l¨C¯L©LÐ9Ð9Ð9r   c                 ó>   € \         V P                  V P                  33# r   )ÚsuperÚ__thisclass__Ú__self__)r   s   &r
   Úpickle_superr#   '   s   € Ü�3×$Ñ$ c§l¡lÐ3Ð3Ð3r   c                 óÊ   € V\         J d   \         P                  V 4      pV# VP                  W4      pVP                  \         P                  8w  d   VP                  W24       V# r   )r   Ú__new__Ú__init__)ÚclsÚbaseÚstater   s   &&& r
   Ú_reconstructorr*   .   sO   € ØŒvƒ~Ü�n‰n˜SÓ!ˆð
 €Jð �l‰l˜3Ó&ˆØ�=‰=œFŸO™OÔ+Ø�M‰M˜#Ô%Ø€Jr   c                 óB  € V^8  g   Q hV P                   pVP                   Fj  p\        VR4      '       d    VP                  \        ,          '       g    M@VP
                  p\        V\        4      '       g   KX  VP                  VJ g   Kj   M	  \        pV\        J d   RpM'W2J d   \        RVP                  : R24      hV! V 4      pW#V3p V P                  p\        V 4      P                  \        P                  J d   \        V RR4      '       d   \        R4      hV! 4       pT'       d	   \"        Yh3# \"        T3#   \         dU    \        T RR4      '       d   \        RTP                  : RT 24      Rh T P                   p Lb  \         d    Rp  Lri ; ii ; i)é   Ú	__flags__Nzcannot pickle z objectÚ	__slots__zNa class that defines __slots__ without defining __getstate__ cannot be pickledzf object: a class that defines __slots__ without defining __getstate__ cannot be pickled with protocol )Ú	__class__Ú__mro__Úhasattrr-   Ú	_HEAPTYPEr%   Ú
isinstanceÚ	_new_typer"   r   r   Ú__name__Ú__getstate__ÚtypeÚgetattrÚAttributeErrorÚ__dict__r*   )	ÚselfÚprotor'   r(   Únewr)   ÚargsÚgetstateÚdicts	   &&       r
   Ú
_reduce_exrA   <   s‹  € Ø�1Œ9Ðˆ9Ø
�.‰.€CØ—”ˆÜ�4˜×%Ò%¨d¯n©n¼y×.HÔ.HÙØ�l‰lˆÜ�cœ9×%Ô%¨#¯,©,¸$Õ*>Ùñ ô ˆØŒvƒ~Ø‰à‹;Ü˜n¨S¯\©\Ñ,<¸GÐDÓEÐEÙ�T“
ˆØ�uÐ€DðØ×$Ñ$ˆô �‹J×#Ñ#¤v×':Ñ':Ó:Ü�D˜+ t×,Ò,Üð Fó Gð Gá‹zˆßÜ˜tÐ)Ð)ä˜tÐ#Ð#øô' ô 	Ü�4˜ d×+Ò+Ü˜n¨S¯\©\Ñ,<ð =-ð .3¨Gð5ó 6ð <@ð@ð	Ø—=‘=ŠDøÜô 	Ø‹Dð	úð	ús*   ÃD? Ä?;FÅ;F	Æ	FÆFÆFÆFc                 ó*   € V P                   ! V .VO5!  # r   ©r%   )r'   r>   s   &*r
   Ú
__newobj__rD   g   s   € Ø�;Š;�sÐ"˜TÓ"Ð"r   c                ó.   € V P                   ! V .VO5/ VB # )zwUsed by pickle protocol 4, instead of __newobj__ to allow classes with
keyword-only arguments to be pickled correctly.
rC   )r'   r>   Úkwargss   &&&r
   Ú__newobj_ex__rG   j   s   € ð �;Š;�sÐ,˜TÒ, VÑ,Ð,r   c                óv  € V P                   P                  R4      pVe   V# . p\        V R4      '       g   MóV P                   Fã  pRVP                   9   g   K  VP                   R,          p\	        V\
        4      '       d   V3pV F›  pVR9   d   K  VP                  R4      '       dh   VP                  R4      '       gQ   VP                  P                  R4      pV'       d   VP                  RV: V: 24       Kw  VP                  V4       KŠ  VP                  V4       K�  	  Kå  	   Wn        V#     T# ; i)a  Return a list of slot names for a given class.

This needs to find slots defined by the class and its bases, so we
can't simply return the __slots__ attribute.  We must walk down
the Method Resolution Order and concatenate the __slots__ of each
class found there.  (This assumes classes don't modify their
__slots__ attribute to misrepresent their slots after the class is
defined.)
Ú__slotnames__r.   Ú__Ú_)r:   Ú__weakref__)r:   Úgetr1   r0   r3   ÚstrÚ
startswithÚendswithr5   ÚlstripÚappendrI   )r'   Únamesr   ÚslotsÚnameÚstrippeds   &     r
   Ú
_slotnamesrW   p   s  € ð �L‰L×Ñ˜_Ó-€EØÒØˆð €EÜ�3˜×$Ò$àð —”ˆAØ˜aŸj™jÖ(ØŸ
™
 ;Õ/�ä˜e¤S×)Ò)Ø"˜H�EÛ!�DàÐ:Ô:Ù àŸ™¨×.Ò.°t·}±}ÀT×7JÒ7JØ#$§:¡:×#4Ñ#4°SÓ#9˜ß#Ø!ŸLšL²HºdÐ)CÖDà!ŸL™L¨Ö.àŸ™ TÖ*ó "ñ ð*Ø!Ôð €LøðØà€Lús   Ä+D3 Ä3D8c                óŽ  € \        V4      p^Tu;8:  d   R8:  g   M \        R4      hW3p\        P                  V4      V8X  d   \        P                  V4      V8X  d   R# V\        9   d   \        RV: R\        V,          : 24      hV\        9   d   \        RV: R\        V,          : 24      hV\        V&   V\        V&   R# )zRegister an extension code.iÿÿÿzcode out of rangeNúkey z! is already registered with code zcode z is already in use for key )ÚintÚ
ValueErrorÚ_extension_registryrM   Ú_inverted_registry©ÚmodulerU   ÚcodeÚkeys   &&& r
   Úadd_extensionrb   ²   s¶   € äˆt‹9€DØ�Ö"˜
Ö"ÜÐ,Ó-Ð-Øˆ.€CÜ×Ñ Ó$¨Ô,Ü×Ñ˜tÓ$¨Ô+ÙØ
Ô!Ô!ÝÛÔ2°3×7ð9ó :ð 	:àÔ!Ô!ÝÛÔ 2°4× 8ð:ó ;ð 	;à#Ô˜ÑØ"Ô�tÓr   c                óÞ   € W3p\         P                  V4      V8w  g   \        P                  V4      V8w  d   \        RV: RV: 24      h\         V \        V V\        9   d
   \        V R# R# )z0Unregister an extension code.  For testing only.rY   z is not registered with code N)r\   rM   r]   r[   Ú_extension_cacher^   s   &&& r
   Úremove_extensionre   Ä   sl   € àˆ.€CÜ×Ñ Ó$¨Ô,Ü×Ñ˜tÓ$¨Ô+ÝÛštð%ó &ð 	&ä˜CÐ Ü˜4Ð ØÔÔÜ˜TÒ"ñ  r   c                  ó.   € \         P                  4        R # r   )rd   Úclear© r   r
   Úclear_extension_cacheri   Ð   s   € Ü×ÑÖr   )r   r   rb   re   ri   r   i   )Ú__doc__Ú__all__r   r   r   r   r   r   r7   rZ   rN   r#   r    r*   r2   r%   r4   rA   rD   rG   rW   r\   r]   rd   rb   re   ri   rh   r   r
   Ú<module>rl      s³   ðñòI€ð €ô$ò9ò%ñ €w� Ô (ò:ñ �tˆC�#�Iƒ˜Ô %ò4ñ €uˆlÔ òð €	Ù�—‘Ó€	ò'$òV#ò-ò1ðx Ð ØÐ ØÐ ò#ò$
#ôr   