§
    ZQdf  ã                   ó~   — d Z ddlmZ ddlmZ ddlmZ ddlm	Z	m
Z
mZ dZ G d„ dej        ¦  «        Zd	„ Zd
„ Zd„ ZdS )z.Fixer for it.next() -> next(it), per PEP 3114.é   )Útoken)Úpython_symbols)Ú
fixer_base)ÚNameÚCallÚfind_bindingz;Calls to builtin next() possibly shadowed by global bindingc                   ó0   ‡ — e Zd ZdZdZdZˆ fd„Zd„ Zˆ xZS )ÚFixNextTa¾  
    power< base=any+ trailer< '.' attr='next' > trailer< '(' ')' > >
    |
    power< head=any+ trailer< '.' attr='next' > not trailer< '(' ')' > >
    |
    classdef< 'class' any+ ':'
              suite< any*
                     funcdef< 'def'
                              name='next'
                              parameters< '(' NAME ')' > any+ >
                     any* > >
    |
    global=global_stmt< 'global' any* 'next' any* >
    Úprec                 óÔ   •— t          t          | ¦  «                             ||¦  «         t          d|¦  «        }|r$|                      |t
          ¦  «         d| _        d S d| _        d S )NÚnextTF)Úsuperr
   Ú
start_treer   ÚwarningÚbind_warningÚshadowed_next)ÚselfÚtreeÚfilenameÚnÚ	__class__s       €ú-/usr/lib/python3.11/lib2to3/fixes/fix_next.pyr   zFixNext.start_tree$   sj   ø€ Ý�g�tÑÔ×'Ò'¨¨hÑ7Ô7Ð7å˜ Ñ&Ô&ˆØð 	'Ø�LŠL˜�LÑ)Ô)Ð)Ø!%ˆDÔÐÐà!&ˆDÔÐÐó    c                 ód  — |sJ ‚|                      d¦  «        }|                      d¦  «        }|                      d¦  «        }|r„| j        r+|                     t          d|j        ¬¦  «        ¦  «         d S d„ |D ¦   «         }d|d         _        |                     t          t          d	|j        ¬¦  «        |¦  «        ¦  «         d S |r-t          d|j        ¬¦  «        }|                     |¦  «         d S |r�t          |¦  «        rZ|d
         }d                     d„ |D ¦   «         ¦  «                             ¦   «         dk    r|  	                    |t          ¦  «         d S |                     t          d¦  «        ¦  «         d S d|v r$|  	                    |t          ¦  «         d| _        d S d S )NÚbaseÚattrÚnameÚ__next__)Úprefixc                 ó6   — g | ]}|                      ¦   «         ‘ŒS © )Úclone©Ú.0r   s     r   ú
<listcomp>z%FixNext.transform.<locals>.<listcomp>9   s    € Ð0Ð0Ð0 a˜Ÿš™	œ	Ð0Ð0Ð0r   Ú é    r   Úheadc                 ó,   — g | ]}t          |¦  «        ‘ŒS r!   )Ústrr#   s     r   r%   z%FixNext.transform.<locals>.<listcomp>E   s   € Ð1Ð1Ð1 q�C ™FœFÐ1Ð1Ð1r   Ú__builtin__ÚglobalT)Úgetr   Úreplacer   r   r   Úis_assign_targetÚjoinÚstripr   r   )r   ÚnodeÚresultsr   r   r   r   r(   s           r   Ú	transformzFixNext.transform.   sº  € Øˆˆˆà�{Š{˜6Ñ"Ô"ˆØ�{Š{˜6Ñ"Ô"ˆØ�{Š{˜6Ñ"Ô"ˆàð 	&ØÔ!ð KØ—’�T *°T´[ÐAÑAÔAÑBÔBÐBÐBÐBà0Ð0¨4Ð0Ñ0Ô0�Ø!#��Q””Ø—’�T¥$ v°d´kÐ"BÑ"BÔ"BÀDÑIÔIÑJÔJÐJÐJÐJØð 	&Ý�Z¨¬Ð4Ñ4Ô4ˆAØ�LŠL˜‰OŒOˆOˆOˆOØð 	&õ   Ñ%Ô%ð Ø˜v”�Ø—7’7Ð1Ð1¨DÐ1Ñ1Ô1Ñ2Ô2×8Ò8Ñ:Ô:¸mÒKÐKØ—L’L ¥|Ñ4Ô4Ð4Ø�Ø�LŠL�˜jÑ)Ô)Ñ*Ô*Ð*Ð*Ð*Ø˜Ð Ð Ø�LŠL˜�|Ñ,Ô,Ð,Ø!%ˆDÔÐÐð !Ð r   )	Ú__name__Ú
__module__Ú__qualname__ÚBM_compatibleÚPATTERNÚorderr   r4   Ú__classcell__)r   s   @r   r
   r
      sZ   ø€ € € € € Ø€Mð€Gð €Eð'ð 'ð 'ð 'ð 'ð&ð &ð &ð &ð &ð &ð &r   r
   c                 ó–   — t          | ¦  «        }|€dS |j        D ]-}|j        t          j        k    r dS t          || ¦  «        r dS Œ.dS )NFT)Úfind_assignÚchildrenÚtyper   ÚEQUALÚ
is_subtree)r2   ÚassignÚchilds      r   r/   r/   Q   sc   € Ý˜ÑÔ€FØ€~Øˆuà”ð ð ˆØŒ:�œÒ$Ð$Ø�5�5Ý˜˜tÑ$Ô$ð 	Ø�4�4ð	àˆ5r   c                 ó”   — | j         t          j        k    r| S | j         t          j        k    s| j        €d S t          | j        ¦  «        S ©N)r?   ÚsymsÚ	expr_stmtÚsimple_stmtÚparentr=   )r2   s    r   r=   r=   ]   sB   € Ø„y•D”NÒ"Ð"ØˆØ„y•DÔ$Ò$Ð$¨¬Ð(;ØˆtÝ�t”{Ñ#Ô#Ð#r   c                 óT   ‡— | ‰k    rdS t          ˆfd„| j        D ¦   «         ¦  «        S )NTc              3   ó8   •K  — | ]}t          |‰¦  «        V — Œd S rE   )rA   )r$   Úcr2   s     €r   ú	<genexpr>zis_subtree.<locals>.<genexpr>g   s-   øè è € Ð:Ð: q�z˜!˜TÑ"Ô"Ð:Ð:Ð:Ð:Ð:Ð:r   )Úanyr>   )Úrootr2   s    `r   rA   rA   d   s6   ø€ Øˆt‚|€|ØˆtÝÐ:Ð:Ð:Ð:¨D¬MÐ:Ñ:Ô:Ñ:Ô:Ð:r   N)Ú__doc__Úpgen2r   Úpygramr   rF   r&   r   Ú
fixer_utilr   r   r   r   ÚBaseFixr
   r/   r=   rA   r!   r   r   ú<module>rU      sË   ðØ 4Ð 4ð Ð Ð Ð Ð Ð Ø +Ð +Ð +Ð +Ð +Ð +Ø Ð Ð Ð Ð Ð Ø 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1Ð 1àL€ð:&ð :&ð :&ð :&ð :&ˆjÔ ñ :&ô :&ð :&ð@
ð 
ð 
ð$ð $ð $ð;ð ;ð ;ð ;ð ;r   