Ë
    #´˜j4  ã                   óT  — d Z ddlmZ ddlmZmZ i dd“dd“dd“d	d
“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd “d!d"“i d#d$“d%d&“d'd(“d)d*“d+d,“d-d.“d/d0“d1d2“d3d4“d5d6“d7d8“d9d:“d;d<“d=d>“d?d@“dAdB“dCdD“¥dDdEdFdGdHdIdJdJdJdKdLdLdMdNdOœ¥ZdP„ ZefdQ„Z G dR„ dSej                  «      Z
yT)Uz/Fix incompatible imports and module references.é   )Ú
fixer_base)ÚNameÚ
attr_chainÚStringIOÚioÚ	cStringIOÚcPickleÚpickleÚ__builtin__ÚbuiltinsÚcopy_regÚcopyregÚQueueÚqueueÚSocketServerÚsocketserverÚConfigParserÚconfigparserÚreprÚreprlibÚ
FileDialogztkinter.filedialogÚtkFileDialogÚSimpleDialogztkinter.simpledialogÚtkSimpleDialogÚtkColorChooserztkinter.colorchooserÚtkCommonDialogztkinter.commondialogÚDialogztkinter.dialogÚTkdndztkinter.dndÚtkFontztkinter.fontÚtkMessageBoxztkinter.messageboxÚScrolledTextztkinter.scrolledtextÚTkconstantsztkinter.constantsÚTixztkinter.tixÚttkztkinter.ttkÚTkinterÚtkinterÚ
markupbaseÚ_markupbaseÚ_winregÚwinregÚthreadÚ_threadÚdummy_threadÚ_dummy_threadÚdbhashzdbm.bsdÚdumbdbmzdbm.dumbÚdbmzdbm.ndbmÚgdbmzdbm.gnuÚ	xmlrpclibzxmlrpc.clientÚDocXMLRPCServerzxmlrpc.serverzhttp.clientzhtml.entitieszhtml.parserzhttp.cookieszhttp.cookiejarzhttp.serverÚ
subprocessÚcollectionszurllib.parsezurllib.robotparser)ÚSimpleXMLRPCServerÚhttplibÚhtmlentitydefsÚ
HTMLParserÚCookieÚ	cookielibÚBaseHTTPServerÚSimpleHTTPServerÚCGIHTTPServerÚcommandsÚ
UserStringÚUserListÚurlparseÚrobotparserc                 óL   — ddj                  t        t        | «      «      z   dz   S )NÚ(Ú|Ú))ÚjoinÚmapr   )Úmemberss    ú+lib/python3.12/lib2to3/fixes/fix_imports.pyÚ
alternatesrM   =   s"   € Ø�—‘œ#œd GÓ,Ó-Ñ-°Ñ3Ð3ó    c              #   óÔ   K  — dj                  | D �cg c]  }d|z  ‘Œ	 c}«      }t        | j                  «       «      }d|›d|›d�–— d|z  –— d|›d|›d	�–— d
|z  –— y c c}w ­w)Nz | zmodule_name='%s'z$name_import=import_name< 'import' ((z;) |
               multiple_imports=dotted_as_names< any* (z) any* >) >
          z›import_from< 'from' (%s) 'import' ['(']
              ( any | import_as_name< any 'as' any > |
                import_as_names< any* >)  [')'] >
          z(import_name< 'import' (dotted_as_name< (zg) 'as' any > |
               multiple_imports=dotted_as_names<
                 any* dotted_as_name< (z!) 'as' any > any* >) >
          z3power< bare_with_attr=(%s) trailer<'.' any > any* >)rI   rM   Úkeys)ÚmappingÚkeyÚmod_listÚ
bare_namess       rL   Úbuild_patternrU   A   sƒ   è ø€ Ø�z‰z¹wÓG¹w¸Ð-°Ó3¸wÑGÓH€HÜ˜GŸL™L›NÓ+�Jò š8ð%ò %ðð ñó ò š8ð%ò %ð @À*Ñ
LÓLùò! Hùs   ‚A(’A#žA
A(c                   óN   ‡ — e Zd ZdZdZeZdZd„ Zˆ fd„Z	ˆ fd„Z
ˆ fd„Zd„ Zˆ xZS )Ú
FixImportsTé   c                 óJ   — dj                  t        | j                  «      «      S )NrG   )rI   rU   rQ   )Úselfs    rL   rU   zFixImports.build_pattern`   s   € Ø�x‰xœ d§l¡lÓ3Ó4Ð4rN   c                 óT   •— | j                  «       | _        t        t        | �  «        y ©N)rU   ÚPATTERNÚsuperrW   Úcompile_pattern)rZ   Ú	__class__s    €rL   r_   zFixImports.compile_patternc   s"   ø€ ð ×)Ñ)Ó+ˆŒÜŒj˜$Ñ/Õ1rN   c                 ó‚   •‡— t         t        | �
  Š ‰|«      }|r%d|vrt        ˆfd„t	        |d«      D «       «      ry|S y)NÚbare_with_attrc              3   ó.   •K  — | ]  } ‰|«      –— Œ y ­wr\   © )Ú.0ÚobjÚmatchs     €rL   Ú	<genexpr>z#FixImports.match.<locals>.<genexpr>q   s   øè ø€ ÐIÑ.H s™˜cŸ
Ñ.Hùs   ƒÚparentF)r^   rW   rg   Úanyr   )rZ   ÚnodeÚresultsrg   r`   s      @€rL   rg   zFixImports.matchj   sE   ù€ Ü”j $Ñ-ˆÙ˜“+ˆÙð   wÑ.ÜÓI¬j¸¸xÔ.HÓIÔIØØˆNØrN   c                 ó<   •— t         t        | �  ||«       i | _        y r\   )r^   rW   Ú
start_treeÚreplace)rZ   ÚtreeÚfilenamer`   s      €rL   rn   zFixImports.start_treev   s   ø€ ÜŒj˜$Ñ*¨4°Ô:Øˆ�rN   c                 óÖ  — |j                  d«      }|r€|j                  }| j                  |   }|j                  t	        ||j
                  ¬«      «       d|v r|| j                  |<   d|v r'| j                  |«      }|r| j                  ||«       y y y |d   d   }| j                  j                  |j                  «      }|r'|j                  t	        ||j
                  ¬«      «       y y )NÚmodule_name)ÚprefixÚname_importÚmultiple_importsrb   é    )ÚgetÚvaluerQ   ro   r   rt   rg   Ú	transform)rZ   rk   rl   Ú
import_modÚmod_nameÚnew_nameÚ	bare_names          rL   rz   zFixImports.transformz   sß   € Ø—[‘[ Ó/ˆ
ÙØ!×'Ñ'ˆHØ—|‘| HÑ-ˆHØ×Ñœt H°Z×5FÑ5FÔGÔHØ Ñ'ð *2�—‘˜XÑ&Ø! WÑ,ð
 Ÿ*™* TÓ*�ÙØ—N‘N 4¨Õ1ð ð -ð  Ð 0Ñ1°!Ñ4ˆIØ—|‘|×'Ñ'¨	¯©Ó8ˆHÙØ×!Ñ!¤$ x¸	×8HÑ8HÔ"IÕJð rN   )Ú__name__Ú
__module__Ú__qualname__ÚBM_compatibleÚkeep_line_orderÚMAPPINGrQ   Ú	run_orderrU   r_   rg   rn   rz   Ú__classcell__)r`   s   @rL   rW   rW   U   s3   ø„ à€MØ€Oà€Gð €Iò5ô2ô
ôöKrN   rW   N)Ú__doc__Ú r   Ú
fixer_utilr   r   r„   rM   rU   ÚBaseFixrW   rd   rN   rL   Ú<module>r‹      s  ðÙ 5õ ß )ð2ˆ:˜ð 2Ø˜ð2à�hð2ð ˜:ð2ð �yð	2ð
 �Gð2ð ˜>ð2ð ˜>ð2ð �9ð2ð Ð-ð2ð Ð/ð2ð Ð1ð2ð Ð3ð2ð Ð3ð2ð Ð3ð2ð Ð%ð2ð  �Mñ!2ð" �^ð#2ð$ Ð/ð%2ð& Ð1ð'2ð( Ð-ð)2ð* �-ð+2ð, �-ð-2ð. �ið/2ð0 ˜ð12ð2 �hð32ð4 �Yð52ð6 ˜?ð72ð: �Yð;2ð< �jð=2ð> �*ð?2ð@ �9ðA2ðB ˜ðC2ðD ˜oñE2ðF "1Ø#Ø-Ø'Ø#Ø(Ø*Ø,Ø)à#Ø'Ø%Ø&Ø/òc2€òj4ð "ó Mô(<K�×#Ñ#õ <KrN   