i f&@sOdZddlmZddlmZmZmZGdddejZdS)zA Fixer for imports of itertools.(imap|ifilter|izip|ifilterfalse) ) fixer_base) BlankLinesymstokenc@s/eZdZdZdeZddZdS)FixItertoolsImportsTzT import_from< 'from' 'itertools' 'import' imports=any > c Cs|d}|jtjks&|j r2|g}n |j}x|dddD]}|jtjkry|j}|}n;|jtjkrdS|jtjkst|jd}|j}|dkrd|_|j qO|dkrO|j |d d kr d nd |_qOqOW|jddp4|g}d } x=|D]5}| ro|jtj kro|j qD| d N} qDWx0|r|djtj kr|j j qW|jpt |dd s|jdkr|j} t}| |_|SdS)Nimportsrimapizipifilter ifilterfalse izip_longestf filterfalse zip_longestTvalue)r r r )r r )typerZimport_as_namechildrenrNAMErSTARAssertionErrorremoveZchangedCOMMApopgetattrparentprefixr) selfZnodeZresultsrrZchildZmemberZ name_nodeZ member_nameZ remove_commapr!H/opt/alt/python34/lib64/python3.4/lib2to3/fixes/fix_itertools_imports.py transformsD                 zFixItertoolsImports.transformN)__name__ __module__ __qualname__Z BM_compatiblelocalsZPATTERNr#r!r!r!r"rs  rN) __doc__Zlib2to3rZlib2to3.fixer_utilrrrZBaseFixrr!r!r!r"s