grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026a ´ieã@s>dZdZddlmZddlmZmZddlZddl m Z ddl Z ddl Z ddlZddlTddlmZe  d e j¡Ze  d e j¡ZddlZejgd ¢Z[Gd d „d e d d¡ƒZdd„Zdd„Zdd„ZdZdZeedeƒeeƒZdZdZdZ dZ!dZ"eee e!e"ƒZ#dZ$eddƒee$ƒZ%d e$Z&ee%e&ƒZ'ed!e'd"ƒZ(ee(e'e#ƒZ)d#d$„Z*d%d&„Z+ee*ƒŽZ,d'Z-d(Z.d)Z/d*Z0ee,d+e,d,ƒZ1ee,d-e,d.ƒZ2ee3e j4e5ed/d0�ƒŽZ6ed1e6ƒZ7ee)e7e2eƒZ8ee8Z9ee,d2ed3dƒe,d4ed5dƒƒZ:ed6ee1ƒZ;eee;e)e7e:eƒZe-e=e>d3<e.e=e>d5<e/e=e>d+<e0e=e>d,<�q"e?ƒZ@e?ƒZAe*ƒD]JZBeBd5eBd3fD]ZCe@ DeC¡�q€eBd,eBd+fD]ZCeA DeC¡�q¢�qld7ZEGd8d9„d9eFƒZGGd:d;„d;eFƒZHGdd?„ZJd@dA„ZKdBdC„ZLdDdE„ZdFdG„ZMdHdI„ZNdJdK„ZOdLdM„ZPeQdNk�r:ePƒdS)OzKa-Ping Yee zpGvR, ESR, Tim Peters, Thomas Wouters, Fred Drake, Skip Montanaro, Raymond Hettinger, Trent Nelson, Michael Foordé)Úopen)ÚlookupÚBOM_UTF8N)Ú TextIOWrapper)Ú*)ÚEXACT_TOKEN_TYPESz&^[ \t\f]*#.*?coding[:=][ \t]*([-\w.]+)s^[ \t\f]*(?:[#\r\n]|$))ÚtokenizeÚgenerate_tokensÚdetect_encodingÚ untokenizeÚ TokenInfoc@s eZdZdd„Zedd„ƒZdS)r cCs$d|jt|jf}d|j|d�S)Nz%d (%s)z8TokenInfo(type=%s, string=%r, start=%r, end=%r, line=%r))Útype)r Útok_nameÚ_replace)ÚselfÚannotated_type©rú /usr/lib64/python3.9/tokenize.pyÚ__repr__.s ÿzTokenInfo.__repr__cCs(|jtkr|jtvrt|jS|jSdS©N)r ÚOPÚstringr©rrrrÚ exact_type3s zTokenInfo.exact_typeN)Ú__name__Ú __module__Ú __qualname__rÚpropertyrrrrrr -sr ztype string start end linecGsdd |¡dS)Nú(ú|ú))Újoin©ÚchoicesrrrÚgroup:ór$cGs t|ŽdS)Nr©r$r"rrrÚany;r%r'cGs t|ŽdS)Nú?r&r"rrrÚmaybe<r%r)z[ \f\t]*z #[^\r\n]*z\\\r?\nz\w+z0[xX](?:_?[0-9a-fA-F])+z0[bB](?:_?[01])+z0[oO](?:_?[0-7])+z(?:0(?:_?0)*|[1-9](?:_?[0-9])*)z[eE][-+]?[0-9](?:_?[0-9])*z)[0-9](?:_?[0-9])*\.(?:[0-9](?:_?[0-9])*)?z\.[0-9](?:_?[0-9])*z[0-9](?:_?[0-9])*z[0-9](?:_?[0-9])*[jJ]z[jJ]cCsVgd¢}dh}|D]>}t |¡D].}tjdd„|DƒŽD]}| d |¡¡q8q q|S)N)ÚbÚrÚuÚfÚbrÚfrÚcSsg|]}|| ¡f‘qSr)Úupper)Ú.0ÚcrrrÚ ^r%z(_all_string_prefixes..)Ú _itertoolsÚ permutationsÚproductÚaddr!)Ú_valid_string_prefixesÚresultÚprefixÚtr,rrrÚ_all_string_prefixesSsr=cCst |tj¡Sr)ÚreÚcompileÚUNICODE)ÚexprrrrÚ_compilebsrBz[^'\\]*(?:\\.[^'\\]*)*'z[^"\\]*(?:\\.[^"\\]*)*"z%[^'\\]*(?:(?:\\.|'(?!''))[^'\\]*)*'''z%[^"\\]*(?:(?:\\.|"(?!""))[^"\\]*)*"""z'''z"""z'[^\n'\\]*(?:\\.[^\n'\\]*)*'z"[^\n"\\]*(?:\\.[^\n"\\]*)*"T)Úreversez\r?\nz'[^\n'\\]*(?:\\.[^\n'\\]*)*ú'z"[^\n"\\]*(?:\\.[^\n"\\]*)*ú"z \\\r?\n|\Zéc@s eZdZdS)Ú TokenErrorN©rrrrrrrrG�r%rGc@s eZdZdS)ÚStopTokenizingNrHrrrrrIŸr%rIc@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) Ú UntokenizercCsg|_d|_d|_d|_dS)Nér)ÚtokensÚprev_rowÚprev_colÚencodingrrrrÚ__init__¤szUntokenizer.__init__cCs„|\}}||jks&||jkr>||jkr>td |||j|j¡ƒ‚||j}|rb|j d|¡d|_||j}|r€|j d|¡dS)Nz+start ({},{}) precedes previous end ({},{})ú\ rú )rMrNÚ ValueErrorÚformatrLÚappend)rÚstartÚrowÚcolÚ row_offsetÚ col_offsetrrrÚadd_whitespaceªs ÿ  zUntokenizer.add_whitespacec Cs6t|ƒ}g}d}|D�]}t|ƒdkr8| ||¡�q*|\}}}} } |tkrV||_q|tkrd�q*|tkrz| |¡qnl|tkrš|  ¡| \|_ |_ qnL|t t fvr¬d}n:|ræ|ræ|d} |dt| ƒkrâ|j | ¡t| ƒ|_ d}| |¡|j |¡| \|_ |_ |t t fvr|j d7_ d|_ qd |j¡S)NFéTéÿÿÿÿrKrr0)ÚiterÚlenÚcompatÚENCODINGrOÚ ENDMARKERÚINDENTrUÚDEDENTÚpoprMrNÚNEWLINEÚNLrLr[r!) rÚiterableÚitÚindentsÚ startliner<Útok_typeÚtokenrVÚendÚlineÚindentrrrr ·sF            zUntokenizer.untokenizec Csæg}|jj}|dttfv}d}t |g|¡D]²}|dd…\}} |tkrR| |_q.|tt fvrf| d7} |t kr€|rzd| } d}nd}|t krš| | ¡q.n>|t kr®|  ¡q.n*|ttfvrÀd}n|rØ|rØ||dƒd}|| ƒq.dS)NrFr\rRTr])rLrUrfrgr5ÚchainrarOÚNAMEÚNUMBERÚSTRINGrcrdre) rrmrhrjÚ toks_appendrkÚ prevstringÚtokÚtoknumÚtokvalrrrr`Üs8    zUntokenizer.compatN)rrrrPr[r r`rrrrrJ¢s %rJcCs*tƒ}| |¡}|jdur&| |j¡}|Sr)rJr rOÚencode)rhÚutÚoutrrrr s    r cCsH|dd… ¡ dd¡}|dks*| d¡r.dS|dvs@| d¡rDdS|S) Né Ú_ú-úutf-8zutf-8-)zlatin-1ú iso-8859-1z iso-latin-1)zlatin-1-z iso-8859-1-z iso-latin-1-r�)ÚlowerÚreplaceÚ startswith)Úorig_encÚencrrrÚ_get_normal_namesÿr‡csÜz ˆjj‰Wnty"d‰Yn0d‰d}d}‡fdd„}‡‡fdd„}|ƒ}| t¡rnd‰|dd…}d }|sz|gfS||ƒ}|r�||gfSt |¡s¤||gfS|ƒ}|s¸||gfS||ƒ}|rÐ|||gfS|||gfS) NFr€cs"zˆƒWStyYdS0dS©Nr%)Ú StopIterationr©ÚreadlinerrÚ read_or_stop?s z%detect_encoding..read_or_stopcsàz| d¡}Wn2ty@d}ˆdur4d |ˆ¡}t|ƒ‚Yn0t |¡}|sTdSt| d¡ƒ}z t|ƒ}Wn8t y¦ˆdurŽd|}n d ˆ|¡}t|ƒ‚Yn0ˆrÜ|dkrÔˆdurÂd}n d ˆ¡}t|ƒ‚|d 7}|S) Nr€z'invalid or missing encoding declarationz {} for {!r}rKzunknown encoding: zunknown encoding for {!r}: {}zencoding problem: utf-8z encoding problem for {!r}: utf-8z-sig) ÚdecodeÚUnicodeDecodeErrorrTÚ SyntaxErrorÚ cookie_reÚmatchr‡r$rÚ LookupError)roÚ line_stringÚmsgr‘rOÚcodec)Ú bom_foundÚfilenamerrÚ find_cookieEs8      ÿ z$detect_encoding..find_cookieTéú utf-8-sig)Ú__self__ÚnameÚAttributeErrorr„rÚblank_rer‘)r‹rOÚdefaultrŒr˜ÚfirstÚsecondr)r–r—r‹rr 's8    &       r cCsXt|dƒ}z2t|jƒ\}}| d¡t||dd�}d|_|WS| ¡‚Yn0dS)NÚrbrT)Úline_bufferingr+)Ú _builtin_openr r‹ÚseekrÚmodeÚclose)r—ÚbufferrOÚlinesÚtextrrrr„s  rcCs6t|ƒ\}}t d¡}t |t|dƒ|¡}t|j|ƒSrˆ)r r5Úrepeatrqr^Ú _tokenizeÚ__next__)r‹rOÚconsumedÚemptyÚrl_genrrrr”s  rccszd}}}d}d\}}d}dg} |durH|dkr6d}tt|dddƒVd} d} z| } |ƒ} Wntytd} Yn0|durˆ|  |¡} |d 7}dt| ƒ} } |�rn| s²td |ƒ‚| | ¡}|�r| d¡} }tt|| d|…|||f|| ƒVd\}}d}nf|�rX| d d…d k�rX| d d…dk�rXtt || ||t| ƒf|ƒVd}d}qPn|| }|| }qP�n¾|dk�r|�s| �sˆ�qÜd}| | k�rò| | dk�r®|d 7}n8| | dk�rÎ|t d t }n| | dk�ròd}n�qò| d 7} �qŒ| | k�r�qÜ| | dv�r„| | dk�r\| | d…  d¡}tt ||| f|| t|ƒf| ƒV| t|ƒ7} tt | | d…|| f|t| ƒf| ƒVqP|| dk�r¾|  |¡tt| d| …|df|| f| ƒV|| dk�r,|| v�rètdd|| | fƒ‚| dd…} ttd|| f|| f| ƒV�q¾n| �s(td|dfƒ‚d}| | krPttƒ | | ¡}|�r¬| d ¡\}}||f||f|}}} ||k�r~�q,| ||…| |}}||v�s¼|dk�rÒ|dk�rÒ|dk�rÒtt|||| ƒV�qÖ|dv�r|dk�rútt |||| ƒVntt|||| ƒV�qÖ|dk�r0tt |||| ƒV�qÖ|tv�r¤tt|ƒ}| | | ¡}|�r†| d¡} | || …}tt|||| f| ƒVn||f}| |d…}| }qP�qÖ|tv�sÒ|dd…tv�sÒ|dd…tv�rD|ddk�r0||f}tt |¡�pt |d ¡�pt |d¡ƒ}| |d…d }}| }qPntt|||| ƒVnf| ¡�rbtt|||| ƒVnH|dk�rrd }n8|dv�r†|d 7}n|d v�r˜|d 8}tt|||| ƒVn*tt | | || f|| d f| ƒV| d 7} �q,qP| �r.| ddv�r.|  ¡ d¡�s.ttd|d t| ƒf|d t| ƒd fdƒV| d d…D] }ttd|df|dfdƒV�q:tt d|df|dfdƒVdS)!NrÚ 0123456789)r0rršr€)rrr0r%rKzEOF in multi-line stringéþÿÿÿrQéýÿÿÿz\ rRú ú z# ú#z r]z3unindent does not match any outer indentation levelz zEOF in multi-line statementÚ.z...r\r™Ú ú\z([{z)]})!r rar‰r�r_rGr‘rnrtÚ ERRORTOKENÚtabsizeÚrstripÚCOMMENTrgrUrcÚIndentationErrorrdrBÚ PseudoTokenÚspanrsrfÚ triple_quotedÚendpatsÚ single_quotedÚgetÚ isidentifierrrrÚstripr„rb)r‹rOÚlnumÚparenlevÚ continuedÚnumcharsÚcontstrÚneedcontÚcontlinerjÚ last_lineroÚposÚmaxÚstrstartÚendprogÚendmatchrnÚcolumnÚ comment_tokenÚ pseudomatchrVÚsposÚeposrmÚinitialrprrrr¬­s&       ÿ* ÿ     ÿ ÿ "  þ    ÿÿÿ          ÿþ ÿ þ      ÿ$.r¬cCs t|dƒSr)r¬rŠrrrr dsr c s@ddl}dd„‰d‡fdd„ }|jdd�}|jdd d d d �|jd ddddd�| ¡}z¢|jr |j}t|dƒ�}tt|jƒƒ}Wdƒq²1s”0Ynd}t t j jdƒ}|D]>}|j }|j rÌ|j}d|j|j} td| t||jfƒq¶W�n@t�yL} z8| jddd…\} } || jd|| | fƒWYd} ~ nød} ~ 0t�y”} z0| jd\} } || jd|| | fƒWYd} ~ n°d} ~ 0t�yÂ} z|| |ƒWYd} ~ n‚d} ~ 0t�yî} z|| ƒWYd} ~ nVd} ~ 0t�ytdƒYn4t�y:} zˆd| ƒ‚WYd} ~ n d} ~ 00dS)NrcSstj |¡tj d¡dS)Nr¸)ÚsysÚstderrÚwrite)ÚmessagerrrÚperrorps zmain..perrorcsR|r"|f||f}ˆd|ƒn"|r8ˆd||fƒn ˆd|ƒt d¡dS)Nz%s:%d:%d: error: %sz %s: error: %sz error: %srK)rÚÚexit)rÝr—ÚlocationÚargs©rÞrrÚerrorts zmain..errorzpython -m tokenize)Úprogr—r(z filename.pyz'the file to tokenize; defaults to stdin)ÚdestÚnargsÚmetavarÚhelpz-ez--exactÚexactÚ store_truez(display token names using the exact type)råÚactionrèr¢zz %d,%d-%d,%d:z%-20s%-15s%-15rrKr™z interrupted zunexpected error: %s)NN)ÚargparseÚArgumentParserÚ add_argumentÚ parse_argsr—r¤Úlistrr‹r¬rÚÚstdinr rérrVrnÚprintrrr¾rárGr�ÚOSErrorÚKeyboardInterruptÚ Exception) rìrãÚparserrár—r-rLrmÚ token_typeÚ token_rangeÚerrrorÔrrârÚmainlsT þ ÿ .ÿ**  rúÚ__main__)RÚ __author__Ú __credits__Úbuiltinsrr¤ÚcodecsrrÚ collectionsÚiorÚ itertoolsr5r>rÚrmrr?ÚASCIIr�ržÚ__all__Ú namedtupler r$r'r)Ú WhitespaceÚCommentÚIgnoreÚNameÚ HexnumberÚ BinnumberÚ OctnumberÚ DecnumberÚ IntnumberÚExponentÚ PointfloatÚExpfloatÚ FloatnumberÚ ImagnumberÚNumberr=rBÚ StringPrefixÚSingleÚDoubleÚSingle3ÚDouble3ÚTripleÚStringÚmapÚescapeÚsortedÚSpecialÚFunnyÚ PlainTokenÚTokenÚContStrÚ PseudoExtrasr¿rÂÚ_prefixÚsetrÃrÁr<r,r8r»rõrGrIrJr r‡r rr¬r rúrrrrrÚs´    ÿÿ   ÿ ÿÿþ      _ ]8=