KMa&@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 |_qOW|jddp1|g}d } x=|D]5}| rl|jtj krl|j qA| d N} qAWx0|r|djtj kr|j j q}W|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/python35/lib64/python3.5/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