Ñò §ÚêLc@s_dZddklZddklZlZlZddklZdeifd„ƒYZ dS(s/Fixer that changes xrange(...) into range(...).i(t fixer_base(tNametCalltconsuming_calls(tpatcompt FixXrangecBsneZdZd„Zd„Zd„Zd„Zd„ZdZe i eƒZ dZ e i e ƒZ d„ZRS( sˆ power< (name='range'|name='xrange') trailer< '(' args=any ')' > rest=any* > cCs)tt|ƒi||ƒtƒ|_dS(N(tsuperRt start_treetsetttransformed_xranges(tselfttreetfilename((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyRscCs d|_dS(N(tNoneR (R R R ((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyt finish_treescCsb|d}|idjo|i||ƒS|idjo|i||ƒStt|ƒƒ‚dS(Ntnameuxrangeurange(tvaluettransform_xrangettransform_ranget ValueErrortrepr(R tnodetresultsR((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyt transforms  cCs@|d}|itdd|iƒƒ|iit|ƒƒdS(NRurangetprefix(treplaceRRR taddtid(R RRR((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyR$s cCs•t|ƒ|ijo{|i|ƒ ojttdƒ|diƒgƒ}ttdƒ|gd|iƒ}x|dD]}|i|ƒquW|SdS(NurangetargsulistRtrest(RR tin_special_contextRRtcloneRt append_child(R RRt range_callt list_calltn((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyR*s"  s3power< func=NAME trailer< '(' node=any ')' > any* >sŸfor_stmt< 'for' any 'in' node=any ':' any* > | comp_for< 'for' any 'in' node=any any* > | comparison< any 'in' node=any any*> cCs”|idjotSh}|iidj o?|ii|ii|ƒo#|d|jo|ditjS|ii|i|ƒo|d|jS(NRtfunc(tparentR tFalsetp1tmatchRRtp2(R RR((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyR?s(t__name__t __module__tPATTERNRRRRRtP1Rtcompile_patternR'tP2R)R(((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyR s    N( t__doc__tRt fixer_utilRRRRtBaseFixR(((s0/usr/lib64/python2.6/lib2to3/fixes/fix_xrange.pyts