PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB`  lYlX@s4dZdZddlmZddlmZmZddlZddl m Z ddl m Z ddl Z ddlZddlTe jd e jZe jd e jZddlZejd d d ddddgZ[eZd eed:e?d;e@d<eAd=eBd>eCd?eDd@eEi,ZFGdAddejGddBZHdCdDZIdEdFZJdGdHZKdIZLdJZMeLeJdKeLeKeMZNdLZOdMZPdNZQdOZRdPZSeIePeQeReSZTdQZUeIdRdSeKeUZVdTeUZWeIeVeWZXeIdUeXdVZYeIeYeXeTZZdWZ[dXZ\dYZ]dZZ^d[Z_eIe[d\e[d]Z`eIe[d^e[d_ZaeId`dadbd*dcddded-ZbdfZceIdgdhdiZdeIebecedZeeIeZeeeaeOZfeNefZgeIe[djeIdkdKe[dleIdmdKZheIdneMe`ZieLeIeieZeeeheOZjdodpZkdke\dme]d\e^d]e_dqe^dre_dse^dte_due^dve_dwe^dxe_dye^dze_d{e^d|e_d}e^d~e_de^de_de^de_de^de_de^de_de^de_de^de_de^de_ddddddddddddi&ZliZmxdD]ZnenemenzpGvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, Skip Montanaro, Raymond Hettinger, Trent Nelson, Michael Foord)open)lookupBOM_UTF8N) TextIOWrapper)chain)*z&^[ \t\f]*#.*?coding[:=][ \t]*([-\w.]+)s^[ \t\f]*(?:[#\r\n]|$)COMMENTtokenizedetect_encodingNL untokenizeENCODING TokenInfo()[]:,;+-r/|&<>=.%{}z==z!=z<=z>=~^z<>z**z+=z-=z*=z/=z%=z&=z|=z^=z<<=z>>=z**=z//z//=@z@=c@s.eZdZddZeddZdS)rcCs.d|jt|jf}d|jd|S)Nz%d (%s)z8TokenInfo(type=%s, string=%r, start=%r, end=%r, line=%r)type)r(tok_name_replace)selfannotated_typer-'/opt/python35/lib/python3.5/tokenize.py__repr__cszTokenInfo.__repr__cCs4|jtkr)|jtkr)t|jS|jSdS)N)r(OPstringEXACT_TOKEN_TYPES)r+r-r-r. exact_typehs zTokenInfo.exact_typeN)__name__ __module__ __qualname__r/propertyr3r-r-r-r.rbs  ztype string start end linecGsddj|dS)Nrrr)join)choicesr-r-r.grouposr:cGst|dS)Nr)r:)r9r-r-r.anypsr;cGst|dS)N?)r:)r9r-r-r.maybeqsr=z[ \f\t]*z #[^\r\n]*z\\\r?\nz\w+z0[xX][0-9a-fA-F]+z 0[bB][01]+z 0[oO][0-7]+z(?:0+|[1-9][0-9]*)z[eE][-+]?[0-9]+z[0-9]+\.[0-9]*z\.[0-9]+z[0-9]+z [0-9]+[jJ]z[jJ]z(?:[bB][rR]?|[rR][bB]?|[uU])?z[^'\\]*(?:\\.[^'\\]*)*'z[^"\\]*(?:\\.[^"\\]*)*"z%[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''z%[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""'''"""z'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"z\*\*=?z>>=?z<<=?z//=?z->z[+\-*/%&@|^=<>]=?z[][(){}]z\r?\nz\.\.\.z[:;.,@]z'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"z \\\r?\n|\ZcCstj|tjS)N)recompileUNICODE)exprr-r-r._compilesrFr'''r"""b'''b"""R'''R"""B'''B"""br'''br"""bR'''bR"""Br'''Br"""BR'''BR"""rb'''rb"""Rb'''Rb"""rB'''rB"""RB'''RB"""u'''u"""U'''U"""rRbBuUr'r"R'R"b'b"B'B"br'br"Br'Br"bR'bR"BR'BR"rb'rb"rB'rB"Rb'Rb"RB'RB"u'u"U'U"c@seZdZdS) TokenErrorN)r4r5r6r-r-r-r.rs rc@seZdZdS)StopTokenizingN)r4r5r6r-r-r-r.rs rc@s@eZdZddZddZddZddZd S) UntokenizercCs(g|_d|_d|_d|_dS)Nrr)tokensprev_rowprev_colencoding)r+r-r-r.__init__s   zUntokenizer.__init__cCs|\}}||jks9||jkr]||jkr]tdj|||j|j||j}|r|jjd|d|_||j}|r|jjd|dS)Nz+start ({},{}) precedes previous end ({},{})z\ r )rr ValueErrorformatrappend)r+startrowcol row_offset col_offsetr-r-r.add_whitespaces -    zUntokenizer.add_whitespacec Cst|}g}d}x}|D]u}t|dkrH|j||P|\}}}} } |tkru||_q|tkrP|tkr|j|qn|tkr|j | \|_ |_ qnl|t t fkrd}nQ|r;|r;|d} |dt| kr5|jj| t| |_ d}|j||jj|| \|_ |_ |t t fkr|j d7_ d|_ qWdj|jS)NFrTrr)iterlencompatr r ENDMARKERINDENTrDEDENTpoprrNEWLINEr rrr8) r+iterableitindents startlinettok_typetokenrendlineindentr-r-r.r sF              zUntokenizer.untokenizec CsJg}|jj}|dttfk}d}xt|g|D]}|dd\}} |tkru| |_qA|ttt t fkr| d7} |t kr|rd| } d}nd}|t kr|j| qAnW|t kr|jqAn;|ttfkrd}n |r8|r8||dd}|| qAWdS)NrFrrTrr)rrrr rr rNAMENUMBERASYNCAWAITSTRINGrrr) r+rrr toks_appendr prevstringtoktoknumtokvalr-r-r.rs8             zUntokenizer.compatN)r4r5r6rrr rr-r-r-r.rs   %rcCs=t}|j|}|jdk r9|j|j}|S)N)rr rencode)rutoutr-r-r.r ?s  cCsd|ddjjdd}|dks=|jdrAdS|d ks\|jd r`dS|S)N _rzutf-8zutf-8-latin-1 iso-8859-1 iso-latin-1latin-1- iso-8859-1- iso-latin-1-)rrr)rrr)lowerreplace startswith)orig_encencr-r-r._get_normal_nameZs" rc s1yjjWntk r*dYnXdd}d}fdd}fdd}|}|jtrd|dd}d }|s|gfS||}|r||gfStj|s||gfS|}|s||gfS||}|r!|||gfS|||gfS) NFzutf-8c s(y SWntk r#dSYnXdS)N) StopIterationr-)readliner-r. read_or_stop}s  z%detect_encoding..read_or_stopcs2y|jd}WnBtk rWd}dk rGdj|}t|YnXtj|}|sqdSt|jd}yt|}WnIt k rdkrd|}ndj|}t|YnXr.|dkr$dkr d}ndj}t||d 7}|S) Nzutf-8z'invalid or missing encoding declarationz {} for {!r}rzunknown encoding: zunknown encoding for {!r}: {}zencoding problem: utf-8z encoding problem for {!r}: utf-8z-sig) decodeUnicodeDecodeErrorr SyntaxError cookie_rematchrr:r LookupError)r line_stringmsgrrcodec) bom_foundfilenamer-r. find_cookies6            z$detect_encoding..find_cookieTrz utf-8-sig)__self__nameAttributeErrorrrblank_rer)rrdefaultrrfirstsecondr-)rrrr.r es8  &        c Csst|d}yHt|j\}}|jdt||dd}d|_|SWn|jYnXdS)Nrbrline_bufferingTrc) _builtin_openr rseekrmodeclose)rbufferrlinestextr-r-r.rs   rcCs_ddlm}m}t|\}}t|d}|d}t||||j|S)Nr)rrepeatr) itertoolsrrr r _tokenize__next__)rrrrconsumedrl_genemptyr-r-r.r s  c cs d}}}d}d!\}}d}dg} d} d} d} d} |dk r||dkred}tt|d"d#dVxy |}Wntk rd}YnX|dk r|j|}|d7}dt|}}|r|std ||j|}|rf|jd}}tt||d||||f||Vd$\}}d}q|r|d%dd kr|d&dd krtt ||||t|f|Vd}d}qq||}||}qn|dkr| r|sPd}xv||kr||dkr7|d7}n?||dkr\|t dt }n||dkrud}nP|d7}qW||krP||dkr||dkr=||dj d}|t|}tt |||f||t|f|Vtt ||d||f|t|f|Vqtt t f||dk||d||f|t|f|Vq|| d'kr| j|tt|d||df||f|Vx|| d(kri|| kr tdd|||f| dd)} | rC| | d*krCd} d} d} ttd||f||f|VqW| r| r| | d+krd} d} d} n!|std|dfd}xo||kr- ttj||}|r|jd\}}||f||f|}}}||kr-q|||||}}||ksx|dkr|dkr|dkrtt||||Vq* |dkr| r| Vd} |dkrtt ||||Vqtt||||V| rd} q* |dkr2| r| Vd} tt ||||Vq* |tkrtt|}|j||}|r|jd}|||}tt||||f|Vq||f}||d}|}Pq* |tks|dd tks|dd tkr|d,dkrl||f}tt|pEt|dpEt|d }||dd}}|}Pqtt||||Vq* |jr|d-kr| rt|dkrtnt||||Vqtt||||}|dkr| r|} q|dkrm| rm| jtkrm| jdkrmd} | d.} tt| j| j | j| j!Vd} | r~| Vd} |Vq* |dkrd}q* |dkr|d7}n|d kr|d8}| r| Vd} tt"||||Vqtt ||||f||df|V|d7}qWqW| rC | Vd} x;| ddD])}ttd|df|dfdVqT Wtt#d|df|dfdVdS)/Nr 0123456789rFz utf-8-sigzutf-8rrzEOF in multi-line stringrz\ rz\ r  z# #z z3unindent does not match any outer indentation levelz zEOF in multi-line statementr!z...T asyncawaitdef\z([{z)]})rr)rr)rr)rrrrrrrr)rrr)$rr rrrrrrr ERRORTOKENtabsizerstriprr rrIndentationErrorrrF PseudoTokenspanrr triple_quotedendpats single_quoted isidentifierrrrr(r1rrr0r) rrlnumparenlev continuednumcharscontstrneedcontcontlinerstashed async_defasync_def_indent async_def_nlrposmaxstrstartendprogendmatchrcolumn comment_tokennl_pos pseudomatchrsposeposrinitialrrr-r-r.rsh           2       $#'  - '    $                        'rcCs t|dS)N)r)rr-r-r.generate_tokenssrc sddl}ddddfdd}|jdd}|jdd d d d d dd|jdddddddd|j}y|jr|j}t|d}tt|j}WdQRXnd}t t j jd}x[|D]S}|j }|j r|j}d|j|j} td| t||jfqWWnbtk r} z?| jddd\} } || jd|| | fWYdd} ~ Xntk r} z5| jd\} } || jd|| | fWYdd} ~ Xntk r8} z|| |WYdd} ~ Xntk rf} z|| WYdd} ~ XnQtk rtdYn6tk r} zd| WYdd} ~ XnXdS)NrcSst|dtjdS)Nfile)printsysstderr)messager-r-r.perrorszmain..perrorcsg|r+|f||f}d|n+|rHd||fnd|tjddS)Nz%s:%d:%d: error: %sz %s: error: %sz error: %sr)rexit)rrlocationargs)r r-r.errorszmain..errorprogzpython -m tokenizedestrnargsr<metavarz filename.pyhelpz'the file to tokenize; defaults to stdinz-ez--exactexactaction store_truez(display token names using the exact typerzz %d,%d-%d,%d:z%-20s%-15s%-15rrrz interrupted zunexpected error: %s)argparseArgumentParser add_argument parse_argsrrlistr rrrstdinr(r*r3rrrr)r1rr#rrOSErrorKeyboardInterrupt Exception) r-r$parserr#rfrr token_type token_rangeerrrrr-)r r.mainsN           // r;__main__)r>r?rGrHrKrLrIrJrMrNrOrPrSrTrQrRrUrVrWrXr[r\rYrZr]r^r_r`rarb)r@rArirjrkrlrmrnrorprqrrrsrtrurvrwrxryrzr{r|r}r~rrrrrr)} __author__ __credits__builtinsrrcodecsrr collectionsiorrrrBrrrCASCIIrr__all__N_TOKENSrr)r r LPARRPARLSQBRSQBCOLONCOMMASEMIPLUSMINUSSTARSLASHVBARAMPERLESSGREATEREQUALDOTPERCENTLBRACERBRACEEQEQUALNOTEQUAL LESSEQUAL GREATEREQUALTILDE CIRCUMFLEX LEFTSHIFT RIGHTSHIFT DOUBLESTAR PLUSEQUALMINEQUAL STAREQUAL SLASHEQUAL PERCENTEQUAL AMPEREQUAL VBAREQUALCIRCUMFLEXEQUALLEFTSHIFTEQUALRIGHTSHIFTEQUALDOUBLESTAREQUAL DOUBLESLASHDOUBLESLASHEQUALATATEQUALr2 namedtuplerr:r;r= WhitespaceCommentIgnoreName Hexnumber Binnumber Octnumber Decnumber IntnumberExponent PointfloatExpfloat Floatnumber ImagnumberNumber StringPrefixSingleDoubleSingle3Double3TripleStringOperatorBracketSpecialFunny PlainTokenTokenContStr PseudoExtrasrrFrrrrrr5rrrr rr r rrr;r4r-r-r-r.sB            "                             _  ]    <