ó o®¸Qc@sÑdZddlmZmZd„Zdd d„ƒYZddd„ƒYZd„Zed krÍdd l Z dd lm Z mZxHe j d D]6Z e GHe e ƒZ eƒZee eƒejGHHqWnd S(sParser for future statements iÿÿÿÿ(tasttwalkcCs1t|tjƒsdS|jdkr)dSdSdS(s:Return true if statement is a well-formed future statementit __future__iN(t isinstanceRtFromtmodname(tstmt((s%/sys/lib/python2.7/compiler/future.pyt is_futures t FutureParsercBs2eZd Zd„Zd„Zd „Zd „ZRS( t nested_scopest generatorstdivisiontabsolute_importtwith_statementtprint_functiontunicode_literalscCs i|_dS(N(tfound(tself((s%/sys/lib/python2.7/compiler/future.pyt__init__scCs4|j}x$|jD]}|j|ƒsPqqWdS(N(tnodetnodest check_stmt(RRRts((s%/sys/lib/python2.7/compiler/future.pyt visitModules cCsct|ƒr_xC|jD]8\}}||jkrAd|j|s