ðÕYf&ã@sOdZddlmZddlmZmZmZGdd„dejƒZdS)zA Fixer for imports of itertools.(imap|ifilter|izip|ifilterfalse) é)Ú fixer_base)Ú BlankLineÚsymsÚtokenc@s/eZdZdZdeƒZdd„ZdS)ÚFixItertoolsImportsTzT import_from< 'from' 'itertools' 'import' imports=any > c Csã|d}|jtjks&|j r2|g}n |j}xÂ|ddd…D]­}|jtjkry|j}|}n#|jtjkr�dS|jd}|j}|dkrÇd|_|jƒqO|dkrO|j ƒ|d d kród nd |_qOW|jdd…p|g}d } x=|D]5}| rT|jtj krT|jƒq)| d N} q)Wx0|r”|djtj kr”|j ƒjƒqeW|jp­t |ddƒ sÀ|j dkrß|j} tƒ}| |_|SdS)NÚimportsérÚimapÚizipÚifilterÚ ifilterfalseÚ izip_longestéÚfÚ filterfalseÚ zip_longestTÚvalue)r r r )r r éÿÿÿÿ)ÚtyperZimport_as_nameÚchildrenrÚNAMErÚSTARÚremoveZchangedÚCOMMAÚpopÚgetattrÚparentÚprefixr) ÚselfZnodeZresultsrrZchildZmemberZ name_nodeZ member_nameZ remove_commaÚp©r úH/opt/alt/python35/lib64/python3.5/lib2to3/fixes/fix_itertools_imports.pyÚ transformsB                  zFixItertoolsImports.transformN)Ú__name__Ú __module__Ú __qualname__Z BM_compatibleÚlocalsZPATTERNr"r r r r!rs  rN) Ú__doc__Zlib2to3rZlib2to3.fixer_utilrrrZBaseFixrr r r r!Ús