JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr ]& @sddlmZddlmZddlmZddlmZddlmZmZm Z m Z m Z ej dZ GdddejZd S) )patcomp)pytree)token) fixer_base)NameCallCommaStringis_tuplez"atom< '(' [atom|STRING|NAME] ')' >c@s4eZdZdZdZddZddZdS)FixPrintTzP simple_stmt< any* bare='print' any* > | print_stmt c Cs|jd}|r>|jttdgd|jdS|jdd}t|dkrztj|drzdSd}}}|r|dt kr|dd}d}|r|dt j t j dkr|dj}|dd}d d |D}|r"d |d_|dk sF|dk sF|dk r|dk rq|j|d tt||dk r|j|d tt||dk r|j|d|ttd|} |j| _| S)NZbareprintprefix z>>cSsg|]}|jqS)clone).0argrr./opt/alt/python35/lib64/python3.5/fix_print.py ?s z&FixPrint.transform..sependfiler)getreplacerrr Zchildrenlen parend_exprmatchrrLeafr RIGHTSHIFTr add_kwargr repr) selfZnoderesultsZ bare_printargsrrrZl_argsZn_stmtrrr transform%s8 %% $    zFixPrint.transformcCsod|_tj|jjt|tjtjd|f}|r^|j t d|_|j |dS)Nr=r) r rZNodeZsymsargumentrr"rEQUALappendr)r&Zl_nodesZs_kwdZn_exprZ n_argumentrrrr$Ms    zFixPrint.add_kwargN)__name__ __module__ __qualname__Z BM_compatibleZPATTERNr)r$rrrrr s  (r N)rrrZpgen2rrZ fixer_utilrrrr r Zcompile_patternr ZBaseFixr rrrrs(