
    daf                     J    d Z ddlmZ ddlmZ  G d dej
                        Zy)aT   Fixer for itertools.(imap|ifilter|izip) --> (map|filter|zip) and
    itertools.ifilterfalse --> itertools.filterfalse (bugs 2360-2363)

    imports from itertools are fixed in fix_itertools_import.py

    If itertools is imported as something else (ie: import itertools as it;
    it.izip(spam, eggs)) method calls will not get fixed.
       )
fixer_base)Namec                   2    e Zd ZdZdZd e       z  ZdZd Zy)FixItertoolsTz7('imap'|'ifilter'|'izip'|'izip_longest'|'ifilterfalse')z
              power< it='itertools'
                  trailer<
                     dot='.' func=%(it_funcs)s > trailer< '(' [any] ')' > >
              |
              power< func=%(it_funcs)s trailer< '(' [any] ')' > >
                 c                 P   d }|d   d   }d|v r_|j                   dvrQ|d   |d   }}|j                  }|j                          |j                          |j                  j	                  |       |xs |j                  }|j	                  t        |j                   dd  |             y )Nfunc    it)ifilterfalseizip_longestdot   )prefix)valuer   removeparentreplacer   )selfnoderesultsr   r	   r   r   s          6/root/Python-3.12.4/Lib/lib2to3/fixes/fix_itertools.py	transformzFixItertools.transform   s    vq!GOJJ>>u~wt}CYYFIIK JJLKK%&4;;T$**QR.89    N)	__name__
__module____qualname__BM_compatibleit_funcslocalsPATTERN	run_orderr    r   r   r   r      s+    MHH HG I:r   r   N)__doc__ r   
fixer_utilr   BaseFixr   r#   r   r   <module>r(      s$     ::%% :r   