� c��jBT� �R� dZdZddlmZddlmZmZddlZddl Z ddl m Z ddl Z ddlZddlZddl�ddlmZddlZej&d ej(�Zej&d ej(�ZddlZej.gd �zZ[Gd �d ej0d d��Zd�Zd�Zd�ZdZdZeedez�zee�zZdZ dZ!dZ"dZ#dZ$ee!e"e#e$�Z%dZ&edd�ee&�zZ'de&zZ(ee'e(�Z)ede)dz�Z*ee*e)e%�Z+d �Z,e jZd!��Z.ee,��Z/d"Z0d#Z1d$Z2d%Z3ee/d&ze/d'z�Z4ee/d(ze/d)z�Z5ee6ejne8ed*�+���Z9ed,e9�Z:ee+e:e5e �Z;ee;zZ<ee/d-zed.d�ze/d/zed0d�z�Z=ed1ee4�Z>eee>e+e:e=e �zZ?iZ@e,�D]"[email protected]<e1e@eAd0z<e2e@eAd&z<e3e@eAd'z<�$[AeB�ZCeB�ZDe,�D]BZEeEd0zeEd.zfD]ZFeCj�eF��eEd'zeEd&zfD]ZFeDj�eF���D[E[Fd2ZHGd3�d4eI�ZJGd5�d6eI�ZKGd7�d8�ZLd9�ZMd:�ZNd;�ZOd<�Zd=�ZPd>�ZQd?�ZRd@�ZSdCdA�ZTeUdBk(reR�yy)DzKa-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�"�eZdZd�Zed��Zy)r c�p�d|jt|jfz}d|j|��zS)Nz%d (%s)z8TokenInfo(type=%s, string=%r, start=%r, end=%r, line=%r))�type)r�tok_name�_replace)�self�annotated_types �!/usr/lib64/python3.12/tokenize.py�__repr__zTokenInfo.__repr__0s9��"�d�i�i��$�)�)�1D�%E�E��J�� � �>� �2�3� 4�c��|jtk(r%|jtvrt|jS|jS�N)r�OP�stringr�rs r� exact_typezTokenInfo.exact_type5s2�� �9�9��?�t�{�{�.?�?�$�T�[�[�1� 1��9�9� rN)�__name__� __module__� __qualname__r�propertyr�rrr r /s��4� ���rr ztype string start end linec�0�ddj|�zdzS)N�(�|�))�join��choicess r�groupr*<s��C�#�(�(�7�"3�3�c�9�9rc��t|�dzS)Nr�r*r(s r�anyr-=s��%��/�C�/�/rc��t|�dzS)N�?r,r(s r�mayber0>s��E�7�O�c�1�1rz[ \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]c � �gd�}dh}|D]q}tj|�D]W}tj|D�cgc]}||j�f��c}�D]"}|j dj |���$�Y�s|Scc}w)N)�b�r�u�f�br�fr�)� _itertools� permutations�product�upper�addr')�_valid_string_prefixes�result�prefix�t�cr4s r�_all_string_prefixesrCUs���>���T�F�(���(�(��0�A� �'�'�!�)D�!�Q�1�a�g�g�i�.�!�)D�E��� � �2�7�7�1�:�&�F�1�)� �M��*Es�B c�J�tj|tj�Sr)�re�compile�UNICODE)�exprs r�_compilerIds�� �:�:�d�B�J�J� '�'rz[^'\\]*(?:\\.[^'\\]*)*'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� �eZdZy)� TokenErrorN�rrr r"rrrOrO���rrOc� �eZdZy)�StopTokenizingNrPr"rrrSrS�rQrrSc�0�eZdZd�Zd�Zd�Zd�Zd�Zd�Zy)� Untokenizerc�X�g|_d|_d|_d|_d|_d|_y)N�rr8)�tokens�prev_row�prev_col� prev_type� prev_line�encodingrs r�__init__zUntokenizer.__init__�s,���� ��� ��� ��������� rc�L�|\}}||jks||jk(r@||jkr1tdj|||j|j���|j |�||jz }|r|j j d|z�yy)Nz+start ({},{}) precedes previous end ({},{})� )rYrZ� ValueError�format�add_backslash_continuationrX�append)r�start�row�col� col_offsets r�add_whitespacezUntokenizer.add_whitespace�s������S� ���� �#����"6�3����;N��J�$�f�S�#�t�}�}�d�m�m�L�N� N� �'�'��.��4�=�=�(� � � �K�K� � �s�Z�/� 0� rc�|� |d}||jz }|dk(ry|jjd�rdnd}|jjd�}dj t j tjt|���}|jj|d|��|zz�d|_ y)Nrz � z\ r8�\) rYr\�endswith�rstripr'r9� takewhile�str�isspace�reversedrXrdrZ)rrerf� row_offset�newline�line�wss rrcz&Untokenizer.add_backslash_continuation�s��� � �A�h���4�=�=�(� � ��?� � �N�N�3�3�F�;�&����~�~�$�$�X�.�� �W�W�Z�)�)�#�+�+�x��~�F� G�� � � ���2�"�W�I��� ;�;�<��� rc �P�g}d}|D]�}|dk(r|rd}n|j|�|dk(rZtd�tjdj|ddd��D��}|dzd k(s|dd k7r|j|�nd }|j|���d j |�S) NF�}�{c3� K�|]}d���y�w)rWNr")�.0�chars r� z.Untokenizer.escape_brackets..�s����$�#�$�A�#�s� rl�����������r�NTr8)rd�sumr9ro�__eq__r')r�token� characters�consume_until_next_bracket� character� n_backslashess r�escape_bracketszUntokenizer.escape_brackets�s���� �%*�"��I��C��-�16�.��%�%�i�0��C�� #�$�",�"6�"6�� � �"�2�6�r�6�*�#�$�!� � !�1�$��)�Z��^�s�-B��%�%�i�0�15�.� � � �i� (�#�$�w�w�z�"�"rc���t|�}g}d}|D�]�}t|�dk(r|j||��n�|\}}}} } |tk(r||_�@|t k(r�nx|t k(r|j|��g|tk(r |j�| \|_ |_ ��|ttfvrd}n�|rF|rD|d} |dt| �k\r+|jj| �t| �|_ d}ne|tk(r\d|vsd|vrT|j!|�}|j"�d} | \} }| j%d�| j%d �z}| ||zf} |j'|�|jj|�| \|_ |_ |ttfvr|xjdz c_ d |_ ||_| |_���d j-|j�S) NFr�TrrWryrxz{{z}}rr8)�iter�len�compat�ENCODINGr]� ENDMARKER�INDENTrd�DEDENT�poprYrZ�NEWLINE�NLrX�FSTRING_MIDDLEr�� splitlines�countrir[r\r')r�iterable�it�indents� startlinerA�tok_typer�re�endru�indent� last_line�end_line�end_col� extra_charss rr zUntokenizer.untokenize�s��� �(�^����� ��A��1�v��{�� � �A�r�"��01� -�H�e�U�C���8�#� %�� ���9�$���6�!����u�%���V�#�� � � �/2�,�� �t�}���g�r�]�*� � ��w� ������8�s�6�{�*��K�K�&�&�v�.�$'��K�D�M�!� ��^�+��%�<�3�%�<� �0�0��7�E� 0�� 0� 0� 2�2� 6�I�(+�%�H�g�"+�/�/�$�"7�)�/�/�$�:O�"O�K�#�W�{�%:�;�C� � � �� &� �K�K� � �u� %�+.� (�D�M�4�=��G�R�=�(�� � ��"� � !�� �%�D�N�!�D�N�Q�R�w�w�t�{�{�#�#rc�,�g}|jj}|dttfv}d}d}t j |g|�D�]L}|dd\} } | t k(r| |_�| ttfvr| dz } | tk(r |rd| z} d}nd}| tk(r|dz }n| tk(r|dz}| tk(r|j| ��}| tk(r|j���| ttfvrd}n,|r|r||d�d}n| t k(r|j#| �} | dvr%|jr|jd| k(r|rd| z} | ttfvr3|j$ttfvr|jjd�|| �| |_��Oy) NrFr�r`TrWr>ryrx)rXrdr�r�r9�chainr�r]�NAME�NUMBER�STRING� FSTRING_START� FSTRING_ENDr�r�r�r�r�r[) rr�r�r�� toks_appendr�� prevstring� in_fstring�tok�toknum�tokvals rr�zUntokenizer.compats������k�k�(�(� ��!�H��"� �-� �� �� ��#�#�U�G�X�6�C� ��!�W�N�F�F���!� &�� ���$���'��#� ������ �6�\�F�!� �"� ���&��a�� ��;�&��a�� �������v�&���6�!�� � � ���G�R�=�(� � ��w��G�B�K�(�!� ��>�)��-�-�f�5����#�� � �� � �B��6�8Q�V`��v����&�-�0�0�T�^�^��P[�G\�5\�� � �"�"�3�'� �� �#�D�N�Y7rN) rrr r^rircr�r r�r"rrrUrU�s!���1��"#�.-$�^3$rrUc�� t�}|j|�}|j�|j|j�}|Sr)rUr r]�encode)r��ut�outs rr r Hs?�� � ��B� �-�-�� !�C� �{�{���j�j����%�� �Jrc�� |ddj�jdd�}|dk(s|jd�ry|dvs|jd�ry|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�encs r�_get_normal_namer�]sY��2� �3�B�-� � � � '� '��S� 1�C� �g�~�����1�� �6�6� �~�~�A�B�� �Orc�l���� �jj�d�d}d}�fd�}��fd�}|�}|jt�r d�|dd}d}|s|gfS||�}|r||gfSt j |�s||gfS|�}|s||gfS||�}|r|||gfS|||gfS#t$rd�Y��wxYw)NFr�c�2�� ��S#t$rYywxYw)Nr)� StopIteration��readlines�r� read_or_stopz%detect_encoding..read_or_stop�s"��� ��:� ��� �� �s � � �c���� |jd�}tj |�}|syt |jd��} t|�}�r5|dk7r+�� d}t|��dj��}t|��|d z }|S#t$r"d}��dj|��}t|��wxYw#t$r0��d|z}t|��dj�|�}t|��wxYw) Nr�z'invalid or missing encoding declarationz {} for {!r}rWzunknown encoding: zunknown encoding for {!r}: {}zencoding problem: utf-8z encoding problem for {!r}: utf-8z-sig) �decode�UnicodeDecodeErrorrb� SyntaxError� cookie_re�matchr�r*r� LookupError)ru� line_string�msgr�r]�codec� bom_found�filenames ��r� find_cookiez$detect_encoding..find_cookie�s(��� #��+�+�g�.�K���� �,����#�E�K�K��N�3�� #��8�$�E� ��7�"��#�3�C�"�#�&�&�=�C�C�H�M�C�!�#�&�&� �� �H����="� #�;�C��#�#�*�*�3��9���c�"� "�  #��� #���*�X�5���c�"� "�6�<�<�X� �"���c�"� "� #�s�B � B9� +B6�99C2T�� utf-8-sig)�__self__�name�AttributeErrorr�r�blank_rer�) r�r]�defaultr�r��first�secondr�r�s ` @@rr r hs����� ��$�$�)�)���I��H��G�� $�L �N�E� ����!�� ��a�b� ���� ���{���5�!�H���%�� � � �>�>�%� ������ �^�F� �������6�"�H���%���(�(� �U�F�O� #�#��O �����s�B%�% B3�2B3c��� t|d�} t|j�\}}|jd�t ||d��}d|_|S#|j ��xYw)N�rbrT)�line_bufferingr3)� _builtin_openr r��seekr�mode�close)r��bufferr]�lines�texts rrr�sd����8�T� *�F��)�&�/�/�:���%�� � �A���V�X�d�C���� �� ���� � �� �s �?A�A"c#��K� t|�\}}tj|t|d��}|�|dk(rd}t t |ddd���t |j|d��Ed{���y7��w)Nrr�r�)rrr8T�� extra_tokens)r r9r�r�r r��!_generate_tokens_from_c_tokenizer�__next__)r�r]�consumed�rl_gens rr r �sr�����$)��2��H�h� � � �h��X�s�(;� <�F��� �{� "��H���(�F�F�B�?�?�0����(�Y]�^�^�^�s�A)A3�+A1�,A3c�� t|d��S)NTr�)r�r�s rr r �s��� -�X�D� I�Irc�R� �ddl}d�� d� fd� }|jd��}|jdddd � �|jd d d dd��|j�} |jr@|j}t |d�5}t t|j��}ddd�n'd}ttjjd��}D]g}|j}|jr |j}d|j|j zz} t#| d�t$|d�|j&d����iy#1swY�vxYw#t($r8} | j*ddd\} } || j*d| | f�Yd} ~ yd} ~ wt,$r5} | j*d\} } || j*d| | f�Yd} ~ yd} ~ wt.$r} || �Yd} ~ yd} ~ wt0$r} || �Yd} ~ yd} ~ wt2$rt#d�Yyt4$r} � d| z��d} ~ wwxYw)Nrc��tjj|�tjjd�y)Nrk)�sys�stderr�write)�messages r�perrorzmain..perror�s&�� � � ����!� � � ����rc���|r|f|z|fz}�d|z�n|r�|�d|���n �d|z�tjd�y)Nz%s:%d:%d: error: %sz : error: z error: %srW)r��exit)r�r��location�argsr�s �r�errorzmain..errorsO��� ��;��)�W�J�6�D� �(�4�/� 0� � �h��8� 9� �;��(� )� ���� rzpython -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�zTr�z %d,%d-%d,%d:�20�15rWr�z interrupted zunexpected error: %s)NN)�argparse�ArgumentParser� add_argument� parse_argsr�r��listr r�r�r��stdinrr�rrer��printrr�IndentationErrorr�rOr��OSError�KeyboardInterrupt� Exception)rr��parserr�r�r5rXr�� token_type� token_range�errru�columnr�s @r�mainr�s������� $� $�*>� $� ?�F� ���Z�s� -�F��H� ����i�g�l�G��I� � � � �D�"� �=�=��}�}�H��x��.�!��h�q�z�z�2�3��/�.�!�H�6�� � �"�"��7�F� �E����J��z�z�"�-�-� �(�E�K�K�%�)�)�,C�D�K� ���� 4�e�l�l�D� E� �/�.�� �5��x�x��{�1�Q�'� ��f� �c�h�h�q�k�8�d�F�^�4�4�� �5��x�x��{� ��f� �c�h�h�q�k�8�d�F�^�4�4�� �� �c�8���� �� �c� � �� �� �o�� ���%��+�,� ���sg�$E �D=� BE �=E�E � H&�.F� H&�+G� H&� G� H&�'G4�4H&� H&� H!�!H&c�� d|vry|S)Nz)unterminated triple-quoted string literalzEOF in multi-line stringr")r�s r�_transform_msgr7s��� 3�c�9�)� �Jrc#�lK� |�tj||��}ntj|||��} |D]}tj|����y#t$rR}t |�tk7r|d�t |j�}t||j|jf�d�d}~wwxYw�w)Nr�)r]r�) � _tokenize� TokenizerIterr �_maker�rrr�rO�lineno�offset)�sourcer]r�r��info�er�s rr�r�As�����a��� � $� $�V�,� G�� � $� $�V�h�\� Z��>��D��/�/�$�'� '��� �>� ��7�k� !��� ��Q�U�U�#����q�x�x����2�3��=�� >�s)�4B4�A�B4� B1�A B,�,B1�1B4�__main__)NF)V� __author__� __credits__�builtinsrr��codecsrr� collections� functools�ior� itertoolsr9rEr�r�rrrF�ASCIIr�r��__all__� namedtupler r*r-r0� Whitespace�Comment�Ignore�Name� Hexnumber� Binnumber� Octnumber� Decnumber� Intnumber�Exponent� Pointfloat�Expfloat� Floatnumber� Imagnumber�NumberrC� lru_cacherI� StringPrefix�Single�Double�Single3�Double3�Triple�String�map�escape�sorted�Special�Funny� PlainToken�Token�ContStr� PseudoExtras� PseudoToken�endpats�_prefix�set� single_quoted� triple_quotedrAr4r=�tabsizerrOrSrUr r�r r r rrr�rr"rr�rSs����,*� �� �+�#����� � ��#�� �B�J�J�@�"�(�(� K� � �2�:�:�0�"�(�(� ;�� � �-�-�6� 6�� � �&� �&�&�{�4P�Q� �:�/�1�� � �� �c�*�z�1�2� 2�U�7�^� C�� �� &� � � � � � .� � �)�Y� �9� =� � (�� �?�)�+�-2�8�_�=� � �(� *���J��)� � �+�[�7�-B� C� � �z�;� � 2�� � ���(��(� �*�,�-� � $�� #�� 2�� 2�� �|�e�#�\�E�%9� :�� �|�=�=��=�=� ?�� ��R�Y�Y��'8�$� G�H� I�� �h�� �� �6�5�&�$� /� ����� � �=�=��c�:�&�'��=�=��c�:�&�'� (���]�G�V�4� ��5��v�u�g�t�L�L� � ��#�%�G�#�G�G�c�M��#�G�G�c�M��&�G�G�e�O��&�G�G�e�O�� &�  ��� ��� � � �A��#�g�q�3�w� �����!�� ��%�i��U�� #�����!��$� � �q� ��!��!�&�Y�%�^$�^$�B�* �Z$�z �_�8J�=�~� >�  �z���F�r