403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/lib/python3/dist-packages/parso/python/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3/dist-packages/parso/python/__pycache__/errors.cpython-311.pyc
�

���cX����ddlZddlZddlZddlmZddlmZmZmZm	Z	ddl
mZdZdZ
dZdZd	Zd
Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZGd�d��ZGd�de��Z Gd�de	��Z!e �"d���Gd �d!e!����Z#Gd"�d#e��Z$Gd$�d%e	��Z%e �"d���Gd&�d'e%����Z&e �"d(�)��Gd*�d+e%����Z'e �"d,�)��Gd-�d.e%����Z(e �"d/�)��Gd0�d1e%����Z)e �"d2�)��Gd3�d4e%����Z*e �"d5���Gd6�d7e%����Z+e �"d8���Gd9�d:e%����Z,e �"d;�)��Gd<�d=e%����Z-e �"d>�)��Gd?�d@e%����Z.e �"dA�)��e �"dB�)��GdC�dDe%������Z/e �"dE���GdF�dGe%����Z0e �"dH���GdI�dJe%����Z1e �"dK���GdL�dMe%����Z2e �"dK���GdN�dOe%����Z3e �"dP���GdQ�dRe%����Z4e �"e
�S��GdT�dUe%����Z5e �"dV���GdW�dXe%����Z6e �"dY���GdZ�d[e%����Z7e �"d\���Gd]�d^e%����Z8e �"d_���Gd`�dae%����Z9e �"db���e �"dc���Gdd�dee%������Z:e �"df���Gdg�dhe%����Z;e �"di���Gdj�dke%����Z<Gdl�dme%��Z=e �"dn���Gdo�dpe=����Z>e �"dq���Gdr�dse=����Z?e �"dt���Gdu�dve=����Z@e �"dw���Gdx�dye=����ZAe �"dz���Gd{�d|e=����ZBe �"d}���Gd~�de=����ZCe �"d����Gd��d�e=����ZDdS)��N)�contextmanager)�
Normalizer�NormalizerConfig�Issue�Rule)�_get_token_collection)�if_stmt�
while_stmt�for_stmt�try_stmt�	with_stmt)�testlist_star_expr�
testlist_comp�exprlist��d)�
nested_scopes�
generators�division�absolute_import�with_statement�print_function�unicode_literals�generator_stop)�comp_for�
sync_comp_forc��|j}|dkrdS|dkr�t|��}|jdd�\}}|�|S|jdkr.|dkrdS|jdd	ks|jd
dkrdSd
S|dkr6|dks.t|j��dkr|jdjdkrdS|dkrt	t|��|���S|dkrdS|dkr|dkrdS|dkrt|j��dkrd
Sn�|dkr'd|jvrdS|dkrdSt|j��S|dkr
|jdkrdS|dkrdS|dvrdS|d krdS|d!krd"S|d#vrp|jd
d$krd%S|jd&jd'krF|jd&}|jd
dkrd(S|jd
dkrd)S|jd
d*krd+Sn*d,|vrd-|vsd.|vs|d/vrd0S|d-krd1S|d2krdS|d3krd4S|S)5N�lambdef�lambda�atom��dictorsetmaker����literal��:r�**�dict literal�set display�(�)r$r�tuple)�version�[�list�{�}�keyword�yield�yield expression�operator�...�ellipsis�
comparison��string�number�strings�
yield_expr�test�conditional expression��	atom_expr�power�await�await expression����trailer�
function call�	subscript�.�	attribute�expr�	star_expr�_test��term�factor�
expression�starredr�fstring�f-string expression)�type�_get_comprehension_type�children�len�
_get_rhs_name�_remove_parens�value�str)�noder/�type_�
comprehension�first�secondrHs       �5/usr/lib/python3/dist-packages/parso/python/errors.pyr[r[s����I�E��	����x�	�&���/��5�5�
��
�b�q�b�)�
��v��$� � �
�[�,�
,�
,����� �y��?�1�%��,�,����0B�d�0J�0J�)�>�(�=��S�L�L��3������'�'�1�,�,���q�1A�1F�/�1Y�1Y��7�
�c�\�\� ���!5�!5�w�G�G�G�G�
�c�\�\��6�
�c�\�\�f��m�m�!�>�
�c�\�\�c�$�-�0�0�1�4�4� �=��	�)�	�	��d�j� � �%�%��V����9��t�z�?�?�"�	�*�	�	���u�!4�!4��z�	�,�	�	��|�	�1�	1�	1��y�	�,�	�	�!�!�	�&���'�'�	�(�	(�	(��=���w�&�&�%�%�
�]�2�
�
#�y�
0�
0��m�B�'�G����"�c�)�)�&���!�!�$��+�+�"�{��!�!�$��+�+�"�{��	�5���[��5�5��e����&�&�&��|�	�+�	�	��y�	�&�	&�	&��w�	�)�	�	�$�$��L�c#�~K�|jD]2}|jdkr!|jD]}|jdks|dkr�|V���.|V��3dS)zB
    Iterates over all statements and splits up  simple_stmt.
    �simple_stmt�newline�;N�rYrW)�scope�child�child2s   rd�_iter_stmtsrn`sv����������:��&�&��.�
�
���;�)�+�+�v��}�}�������
�
�K�K�K�K��rec��|jdd�\}}|jdkr#|jdjtvr
|dkrdSdS|jdkr.|jdjtvr|jdd	krd
SdSdS)Nr!rr'r0zlist comprehensionzgenerator expressionr"rGr(zdict comprehensionzset comprehension�rYrW�_COMP_FOR_TYPES)r rbrcs   rdrXrXns����M�"�1�"�%�M�E�6�
�{�o�%�%�&�/�!�*<�*A�_�*T�*T��C�<�<�'�'�)�)�	��(�	(�	(�V�_�R�-@�-E��-X�-X��?�1���$�$�'�'�&�&��4rec�L�|���}d�|D��dgkS)Nc��g|]	}|j��
S��r]��.0�ns  rd�
<listcomp>z%_is_future_import.<locals>.<listcomp>�s��(�(�(��A�G�(�(�(re�
__future__)�get_from_names)�import_from�
from_namess  rd�_is_future_importr~}s0��
�+�+�-�-�J�(�(�Z�(�(�(�\�N�:�:rec��	|j}t|��dkr&|ddkrt|jd��Sn#t$rYnwxYw|S)z_
    Returns the inner part of an expression like `(foo)`. Also removes nested
    parens.
    r$rr,r')rYrZr\�AttributeError)r rYs  rdr\r\�sn��
4��=���x�=�=�A���(�1�+��"4�"4�!�$�-��"2�3�3�3���	�
�
�
���
����
�Ks�A�
A�Ac�l�|j�,|j}|jdks|jddkr|S|j�,dS)za
    Returns an ancestor node of an expression, skipping all levels of parens
    bottom-up.
    Nr rr,��parentrWrY�r_s rd�_skip_parens_bottom_upr��sG��
�+�
!��{���9����$�-��"2�c�"9�"9��K��+�
!��4rec�$�d�|jD��S)Nc3�FK�|]}|jdks|jdk�|V��dS)�paramr7N�rWrvs  rd�	<genexpr>z_iter_params.<locals>.<genexpr>�s:����Y�Y�!�q�v��/@�/@�A�F�j�DX�DX�A�DX�DX�DX�DX�Y�Yre)rY)�parent_nodes rd�_iter_paramsr��s��Y�Y�{�+�Y�Y�Y�Yrec��d}t|�����D]8}|jdkr|s�d}||krdS|jdkrt|��r�6dSdS)z@
    Checks if the import is the first statement of a file.
    Fr<Tr|N)rn�
get_root_noderWr~)r|�found_docstring�stmts   rd�_is_future_import_firstr��s����O��K�5�5�7�7�8�8�	�	���9�� � �� �����;����4�4��9�
�%�%�*;�D�*A�*A�%���u�u�	�	rec#��K��fd��|jtvr&|jddd�D]}�|��Ed{V���dS�|��Ed{V��dS)Nc3��K�|jdkrj|jddkrB|jd}|jdkrt|��Ed{V��dS�|��Ed{V��dS|jddkr|V�dS|V�dS)Nr rr,r'rr0)rWrY�!_iter_definition_exprs_from_lists)rlr�
check_exprs  �rdr�z5_iter_definition_exprs_from_lists.<locals>.check_expr�s�������:�����~�a� �C�'�'� %��q� 1�
� �%��8�8�@��O�O�O�O�O�O�O�O�O��F� *�z�-�8�8�8�8�8�8�8�8�8��F����"�c�)�)�#�#�#�#��������rer!)rW�_STAR_EXPR_PARENTSrY)rrlr�s  @rdr�r��s����������� �}�*�*�*��&�s�s��s�+�	)�	)�E�!�z�%�(�(�(�(�(�(�(�(�(�(�	)�	)��:�h�'�'�'�'�'�'�'�'�'�'�'rec��g}|jddd�D]3}|jdvr|t|��z
}�|�|���4|S)N���r!)r�testlist)rYrWr��append)�	expr_stmt�exprs�list_s   rd�_get_expr_stmt_definition_exprsr��sa���E��#�E�R��E�*� � ���:�;�;�;��6�u�=�=�=�E�E��L�L�������Lrec�T�|jd}tt|����S�Nr')rYr1r�)rrs  rd�_get_for_stmt_definition_exprsr��s&��� ��#�H��1�(�;�;�<�<�<rec�4�|jdjtvSr�rp)�arguments rd�_is_argument_comprehensionr��s����Q��$��7�7rec��|dks|�dS|jdkrtd�|jD����S|jdkrdS|�d��S)N�r$�	F�
error_nodec3�,K�|]}|jdkV��dS)�
fstring_startNr��rwrls  rdr�z%_any_fstring_error.<locals>.<genexpr>�s)����L�L�U�5�:��0�L�L�L�L�L�LrerUT)rW�anyrY�search_ancestor)r/r_s  rd�_any_fstring_errorr��sh������4�<��u��y�L� � ��L�L�d�m�L�L�L�L�L�L�	
��i�	�	��t��#�#�I�.�.�.rec�V�eZdZdd�Zd�Zd�Zd�Zd�Zd�Ze	d���Z
d	�Zd
�ZdS)�_ContextNc��||_g|_||_i|_g|_g|_g|_g|_||_dS�N)	r_�blocks�parent_context�_used_name_dict�
_global_names�_local_params_names�_nonlocal_names�_nonlocal_names_in_subscopes�_add_syntax_error)�selfr_�add_syntax_errorr�s    rd�__init__z_Context.__init__�sN����	����,���!������#%�� �!���,.��)�!1����rec�P�|���o|jjjdvS)N)�
async_funcdef�
async_stmt)�is_functionr_r�rW�r�s rd�is_async_funcdefz_Context.is_async_funcdef�s0�����!�!�I��	� �%�)H�H�	Irec�"�|jjdkS)N�funcdef)r_rWr�s rdr�z_Context.is_function�s���y�~��*�*rec��|jj}|dkrdS|dkr|j�|��dS|dkr|j�|��dS|dkr=|j�d�|j���D����dS|j�	|j
g���|��dS)NrH�global_stmt�
nonlocal_stmtr�c�&�g|]}|jj��Srt)�namer])rwr�s  rdryz%_Context.add_name.<locals>.<listcomp>
s��H�H�H�e���!�H�H�Hre)r�rWr�r�r�r��extend�
get_paramsr��
setdefaultr])r�r��parent_types   rd�add_namez_Context.add_names����k�&���)�#�#��F��-�'�'���%�%�d�+�+�+�+�+�
�O�
+�
+�� �'�'��-�-�-�-�-�
�I�
%�
%��$�+�+�H�H�t�{�/E�/E�/G�/G�H�H�H�
�
�
�
�
�
� �+�+�D�J��;�;�B�B�4�H�H�H�H�Hrec�`�|�|jd��|�|jd��d�|jD��}|jD]V}	||j}n#t$rY�wxYwd|jz}|j|jkr|}n|}|�||���Wg}|jD]v}|j}||jvr�||vs|j	�!d|jz}|�||���?|�
��r|j|jvr|�|���w|j|zS)zV
        Returns a list of nonlocal names that need to be part of that scope.
        �global�nonlocalc��i|]
}|j|��Srtrurvs  rd�
<dictcomp>z%_Context.finalize.<locals>.<dictcomp>s��C�C�C�1�A�G�Q�C�C�Crez name '%s' is nonlocal and globalNz"no binding for nonlocal '%s' found)
�_analyze_namesr�r�r]�KeyError�	start_posr�r�r�r�r�r�r�)r��global_name_strs�
nonlocal_name�global_name�message�
error_name�nonlocals_not_handled�searchs        rd�finalizez_Context.finalizes���	
���D�.��9�9�9����D�0�*�=�=�=�C�C��0B�C�C�C��!�1�	8�	8�M�
�.�}�/B�C�����
�
�
���
����9�;�;L�L�G��$�}�'>�>�>�(�
�
�*�
��"�"�:�w�7�7�7�7� "��!�>�		<�		<�M�"�(�F���1�1�1���)�)�)�T�-@�-H�>��AT�T���&�&�}�g�>�>�>�>��%�%�'�'�
<�!�'�t�/C�C�C�%�,�,�]�;�;�;���#�&;�;�;s�
A � 
A-�,A-c�>���
��
��fd�}g}�jjdkr�j���}|D]�
d}t�j��
jg����D]�}|j�
jkrd}|j}|jdkr|j	|kr�2|�
��r5|jdkr'|jdjdkr|r|�
|d	��nd
}nd}|s
||��n��|D]#}	|	j	j�
jkr|d��f�$��dS)
Nc�H�����|�j�fz��dSr�)r�r])r��	base_namer�r`s ���rd�raise_z'_Context._analyze_names.<locals>.raise_5s+����"�"�9�g���%�8P�.P�Q�Q�Q�Q�Qrer�FTr�r�r'�	annassignzannotated name '%s' can't be %sz.name '%s' is assigned to before %s declarationz)name '%s' is used prior to %s declarationzname '%s' is parameter and %s)r_rWr��reversedr��getr]r�r�r��
is_definitionrY)r��globals_or_nonlocalsr`r��params�found_global_or_nonlocalr�r�r�r�r�s` `       @rdr�z_Context._analyze_names4s������	R�	R�	R�	R�	R�	R�	R����9�>�Y�&�&��Y�)�)�+�+�F�-�#	=�#	=�I�',�$� ��!5�!9�!9�)�/�2�!N�!N�O�O�
�
���>�I�$7�7�7�/3�,�����;�'�)�)�f�k�T�.A�.A���%�%�'�'�J��{�k�1�1� &��� 2� 7�;� F� F�3�-�)-�I���@�A�A�A���"R���I�G�/���F�7�O�O�O��E��
 �
=�
=���:�#�y��6�6��F�:�;�;�<�<��
=�C#	=�#	=rec#�xK�|j�|��dV�|j���dSr�)r�r��pop�r�r_s  rd�	add_blockz_Context.add_blockas=��������4� � � �
������������rec�0�t||j|���S)N)r�)r�r�r�s  rd�add_contextz_Context.add_contextgs����d�4�T�J�J�J�Jrec�J�|xj|���z
c_dSr�)r�r�)r��
child_contexts  rd�close_child_contextz_Context.close_child_contextjs(���)�)�]�-C�-C�-E�-E�E�)�)�)�)rer�)
�__name__�
__module__�__qualname__r�r�r�r�r�r�rr�r�r�rtrerdr�r��s�������	2�	2�	2�	2�I�I�I�+�+�+�I�I�I�" <� <� <�D+=�+=�+=�Z����^��
K�K�K�F�F�F�F�Frer�c�j��eZdZdZ�fd�Zd�Z�fd�Zed���Z�fd�Z	d�Z
d�Zd	�Zd
�Z
�xZS)�ErrorFinderz1
    Searches for errors in the syntax tree.
    c�j��t��j|i|��i|_|jj|_dSr�)�superr��_error_dict�grammar�version_infor/)r��args�kwargs�	__class__s   �rdr�zErrorFinder.__init__rs7��������$�)�&�)�)�)�����|�0����rec�n�����fd���|��pt|�j���_d�_dS)Nc�n��|�dS�|j��}|jdvrt|�j|��S|S)N)�classdefr��
file_input)r�rWr�r�)r_r��create_contextr�s  ��rdrz.ErrorFinder.initialize.<locals>.create_contextxsG����|��t�+�^�D�K�8�8�N��y�A�A�A���d�&<�n�M�M�M�!�!rer)r�r��context�_indentation_count)r�r_rs` @rd�
initializezErrorFinder.initializewsU����	"�	"�	"�	"�	"�	"�&�~�d�+�+�U�x��d�>T�/U�/U���"#����rec���|jdkr/|�|��5	ddd��dS#1swxYwYt���|��S)Nr��)rW�
visit_noder��visit)r�r_rs  �rdrzErrorFinder.visit�s�����9��$�$�����&�&�
�
��	
�
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�
�w�w�}�}�T�"�"�"s�1�5�5c#�zK�|�|��|jtvrp|j�|��5t|jj��tkr|�|d��dV�ddd��n#1swxYwYdS|jdkrA|xj	dz
c_	|j	tkr!|�|jdd��dV�|jdkr|xj	dzc_	dS|jdvr/|j}|j
|_|j�|��dSdS)Nz!too many statically nested blocks�suiter'ztoo many levels of indentation�rr�)�_check_type_rulesrW�_BLOCK_STMTSrr�rZr��_MAX_BLOCK_SIZEr�r�_MAX_INDENT_COUNT�_add_indentation_errorrYr�r�)r�r_rs   rdrzErrorFinder.visit_node�s��������t�$�$�$��9��$�$���'�'��-�-�
�
��t�|�*�+�+��>�>��*�*�4�1T�U�U�U�����
�
�
�
�
�
�
�
�
�
�
����
�
�
�
�
�F�
�Y�'�
!�
!��#�#�q�(�#�#��&�*;�;�;��+�+�D�M�!�,<�>^�_�_�_�
�����9�����#�#�q�(�#�#�#�#�
�Y�1�
1�
1��l�G�"�1�D�L��L�,�,�W�5�5�5�5�5�2�
1s�=B	�	B
�B
c���|jdk�r|jdvr`t|��������d}|jdkrd}nd}|�||��n�|j�d��rd}nztj	d	|j��}|�3d
}|j
dkr%|jt|j
��jvrd|z}n+t|�d
����d
krd}nd}|�||��dS|jdkr/|j}|jdvr|j�|��|_t'���|��S)N�
error_leaf)�INDENT�ERROR_DEDENTrGrzunexpected indentz3unindent does not match any outer indentation level�\z6unexpected character after line continuation characterz\w{,2}("{1,3}|'{1,3})�invalid syntaxr��
f-string: r'z!EOL while scanning string literalz/EOF while scanning triple-quoted string literalr
r(r)rW�
token_typer1�
get_next_leaf�
_split_prefixrr]�
startswith�re�matchr/r�always_break_tokensrZ�groupr�r�rr�r��
visit_leaf)r��leaf�spacingr�r!r�rs      �rdr$zErrorFinder.visit_leaf�s�����9��$�$���"<�<�<��t�1�1�3�3�A�A�C�C�D�D�R�H���?�h�.�.�1�G�G�S�G��+�+�G�W�=�=�=�=��:�(�(��.�.�X�V�G�G��H�%>��
�K�K�E��}�"2�� �L�F�2�2� $�
�.C� $��/�/�1�!2�!2�'3�W�&<�G���u�{�{�1�~�~�.�.�!�3�3�&I�G�G�&W�G��&�&�t�W�5�5�5��2�
�Z�3�
�
��[�F��{�5�5�5�#�|�7�7��?�?����w�w�!�!�$�'�'�'rec�:�|�|dd|z��dS)N��IndentationError: ��	add_issue)r�r&r�s   rdrz"ErrorFinder._add_indentation_error�s$�����w��%9�G�%C�D�D�D�D�Drec�:�|�|dd|z��dS)N��
SyntaxError: r*)r�r_r�s   rdr�zErrorFinder._add_syntax_error�s#�����t�S�/�G�";�<�<�<�<�<rec�`�|jd}|||f}|j�||��dS)Nr)r�r�r�)r�r_�coder��liner�s      rdr+zErrorFinder.add_issue�s;���~�a� ���g�t�$����#�#�D�$�/�/�/�/�/rec���|j���|j���D]/\}}}|j�t
|||�����0dSr�)rr�r��values�issuesr�r)r�r0r�r_s    rdr�zErrorFinder.finalize�sj���������#'�#3�#:�#:�#<�#<�	;�	;��D�'�4��K���u�T�4��9�9�:�:�:�:�	;�	;re)r�r�r��__doc__r�rrrrr$rr�r+r��
__classcell__�rs@rdr�r�ns����������1�1�1�1�1�
$�$�$�#�#�#�#�#��6�6��^�6�.'(�'(�'(�'(�'(�RE�E�E�=�=�=�0�0�0�;�;�;�;�;�;�;rer�c�"��eZdZdZ�fd�Z�xZS)�IndentationRuler(c�R��t���||��}d|zS)Nr))r��_get_message�r�r�r_rs   �rdr;zIndentationRule._get_message�s'����'�'�&�&�w��5�5��#�g�-�-re�r�r�r�r0r;r6r7s@rdr9r9�s=��������D�.�.�.�.�.�.�.�.�.rer9r�r�c��eZdZdZd�Zd�ZdS)�_ExpectIndentedBlockzexpected an indented blockc�x�|���}t|�����dS)NrG)rr1r)r�r_r%s   rd�get_nodez_ExpectIndentedBlock.get_node�s2���!�!�#�#���D�&�&�(�(�)�)�"�-�-rec�.�|jdjdkS)NrGrhrjr�s  rd�is_issuez_ExpectIndentedBlock.is_issue�s���}�R� �%��2�2reN�r�r�r�r�rArCrtrerdr?r?�s7������*�G�.�.�.�3�3�3�3�3rer?c��eZdZeZdS)�ErrorFinderConfigN)r�r�r�r��normalizer_classrtrerdrFrF�s������"���rerFc�"��eZdZdZ�fd�Z�xZS)�
SyntaxRuler-c���t���||��}d|vrt|jj|��rd|z}d|zS)Nzf-stringrr.)r�r;r��_normalizerr/r<s   �rdr;zSyntaxRule._get_message�sV����'�'�&�&�w��5�5���g�%�%�"�4�#3�#;�T�B�B�
&�#�W�,�G���(�(rer=r7s@rdrIrI�s=��������D�)�)�)�)�)�)�)�)�)rerIc�"�eZdZdZdZd�Zd�ZdS)�_InvalidSyntaxRulerzf-string: invalid syntaxc�*�|���Sr�)rr�s  rdrAz_InvalidSyntaxRule.get_node
s���!�!�#�#�#rec��|���jdk}|r8t|jj|��r|�||j���dS|S)Nr�r�)rrWr�rKr/r+�fstring_message)r�r_�errors   rdrCz_InvalidSyntaxRule.is_issuesc���"�"�$�$�)�\�9���	�"�4�#3�#;�T�B�B�	�
�N�N�4��)=�N�>�>�>�>�>��LreN)r�r�r�r�rQrArCrtrerdrMrMs<�������G�0�O�$�$�$�	�	�	�	�	rerMrEruc��eZdZdZd�Zd�ZdS)�_AwaitOutsideAsyncz'await' outside async functionc�@�|jj���Sr�)rKrr��r�r%s  rdrCz_AwaitOutsideAsync.is_issue s���#�+�<�<�>�>�>�>rec��|jSr��r�r�s  rd�get_error_nodez!_AwaitOutsideAsync.get_error_node#s
���{�reN)r�r�r�r�rCrYrtrerdrTrTs7������.�G�?�?�?�����rerT�breakc��eZdZdZd�ZdS)�_BreakOutsideLoopz'break' outside loopc�J�d}|jjjD]
}|jdvrd}�|S)NF�rr
T)rKrr�rW)r�r%�in_loop�blocks    rdrCz_BreakOutsideLoop.is_issue,s;�����%�-�4�	�	�E��z�7�7�7�����{�reN�r�r�r�r�rCrtrerdr\r\(s(������$�G�����rer\�continuec��eZdZdZdZd�ZdS)�_ContinueChecksz'continue' not properly in loopz0'continue' not supported inside 'finally' clausec�
�d}|jjjD]j}|jdvrd}|jdkrR|jd}|dkr?|j|jkr/|jjdkr|�||j���dS�k|sdSdS)	NFr^Tr����finallyr#rP)	rKrr�rWrYr�r/r+�message_in_finally)r�r%r_r`�
last_blocks     rdrCz_ContinueChecks.is_issue9s������%�-�4�	!�	!�E��z�7�7�7����z�Z�'�'�"�^�B�/�
��)�+�+����)=�=�=��(�0�6�9�9��N�N�4��1H�N�I�I�I� �5�5���	��4�	�	reN)r�r�r�r�rhrCrtrerdrdrd4s.������/�G�K������rerd�fromc��eZdZdZd�Zd�ZdS)�_YieldFromCheckz"'yield from' inside async functionc��|jjSr�rXrVs  rdrAz_YieldFromCheck.get_nodeOs
���{�!�!rec�^�|jjdko|jj���S)N�	yield_arg)r�rWrKrr�rVs  rdrCz_YieldFromCheck.is_issueRs.���{��;�.�<�� �(�9�9�;�;�	<reNrDrtrerdrlrlKs7������2�G�"�"�"�<�<�<�<�<rerlr�c��eZdZdZdZd�ZdS)�_NameCheckszcannot assign to __debug__zcannot assign to Nonec��|jj�|��|jdkr|���rdSdSdS)N�	__debug__T)rKrr�r]r�rVs  rdrCz_NameChecks.is_issue\sM���� �)�)�$�/�/�/��:��$�$��);�);�)=�)=�$��4�%�$�$�$reN)r�r�r�r��message_nonerCrtrerdrqrqWs-������*�G�*�L�����rerqr<c��eZdZdZd�ZdS)�
_StringChecksz/bytes can only contain ASCII literal charactersc��|j���}d|vr td�|jD����rdSd|v�r
|���}d|vr"|�d��}tj}ntj}	tj
��5tjd��||��ddd��dS#1swxYwYdS#t$r2}|�
|dt|��z���Yd}~dSd}~wt$r2}|�
|d	t|��z���Yd}~dSd}~wwxYwdS)
N�bc3�@K�|]}t|��dk�|V��dS)�N)�ord�rw�cs  rdr�z)_StringChecks.is_issue.<locals>.<genexpr>js,����>�>�a��Q���#��������>�>reT�rzutf-8�ignorez(unicode error) rPz(value error) )�
string_prefix�lowerr�r]�_get_payload�encode�codecs�
escape_decode�unicode_escape_decode�warnings�catch_warnings�filterwarnings�UnicodeDecodeErrorr+r^�
ValueError)r�r%r��payload�func�es      rdrCz_StringChecks.is_issuegs����*�0�0�2�2�
��-����>�>�4�:�>�>�>�>�>� ��4��m�#�#��'�'�)�)�G��m�#�#�!�.�.��1�1���+����3��
H��,�.�.�"�"��+�H�5�5�5��D��M�M�M�"�"�"�"�"�"�"�"�"�"�"�"����"�"�"�"�"�"��&�
J�
J�
J����t�-?�#�a�&�&�-H��I�I�I�I�I�I�I�I�I������
H�
H�
H����t�-=��A���-F��G�G�G�G�G�G�G�G�G�����
H����%$�#sH�
C� C
�=C�
C�C�C�C�
E
�!'D�
E
�'E�E
Nrartrerdrvrvcs-������?�G�H�H�H�H�Hrerv�*c��eZdZdZd�ZdS)�
_StarCheckz"named arguments must follow bare *c���|j}|jdkrK|rK|j|j�|��dzd�}d�|D��}t	|��dkSdSdS)N�
parametersr'c�(�g|]}|dv�|j�
|��S))�,r-)�
star_countr�s  rdryz'_StarCheck.is_issue.<locals>.<listcomp>�s7��J�J�J�u��Z�/�/��8H�/��/�/�/rer)r�rWrY�indexrZ)r�r%r��afters    rdrCz_StarCheck.is_issue�s�������;�,�&�&�6�&��O�F�O�$9�$9�$�$?�$?�!�$C�$D�$D�E�E�J�J��J�J�J�E��u�:�:��?�"�	'�&�&�&reNrartrerdr�r��s(������2�G�#�#�#�#�#rer�r)c��eZdZdZd�ZdS)�_StarStarCheckz3dict unpacking cannot be used in dict comprehensionc��|jjdkr8|������}|duo
|jtvSdS)Nr")r�rW�get_next_siblingrq)r�r%rs   rdrCz_StarStarCheck.is_issue�sO���;��/�/�/��,�,�.�.�?�?�A�A�H��4�'�L�H�M�_�,L�L�0�/reNrartrerdr�r��s0������
D�G�M�M�M�M�Mrer�r5�returnc�"�eZdZdZdZd�Zd�ZdS)�_ReturnAndYieldChecksz&'return' with value in async generatorz'yield' inside async functionc��|jSr�rXrVs  rdrAz_ReturnAndYieldChecks.get_node��
���{�rec��|jjjjdkr4|�|�|��d|jz���dS|jj���rMt|jjj�	����r|jdkr|j
jdkrdSdSdSdSdS)Nr�z'%s' outside functionrPr��return_stmtT)rKrr_rWr+rAr]r�r��iter_yield_exprsr�rVs  rdrCz_ReturnAndYieldChecks.is_issue�s�����#�(�-��:�:��N�N�4�=�=��.�.�8O�RV�R\�8\�N�]�]�]�]�]�
�
�
%�
6�
6�
8�
8�	���(�0�5�F�F�H�H�I�I�	��z�X�%�%�$�+�*:�m�*K�*K��t�	�	�	�	�%�%�*K�*KreN)r�r�r�r��message_async_yieldrArCrtrerdr�r��s?������7�G�9���������rer�r>c��eZdZdZd�Zd�ZdS)�_BytesAndStringMixz&cannot mix bytes and nonbytes literalsc�R�|jdkrdSd|j���vS)NrUFrx)rWr�r�)r�r<s  rd�_is_bytes_literalz$_BytesAndStringMix._is_bytes_literal�s.���;�)�#�#��5��f�*�0�0�2�2�2�2rec��|jd}|�|��}|jdd�D]}||�|��krdS�dS)Nrr'T)rYr�)r�r_rb�first_is_bytesr<s     rdrCz_BytesAndStringMix.is_issue�sk���
�a� ���/�/��6�6���m�A�B�B�'�	�	�F���!7�!7��!?�!?�?�?��t�t�@�	�	reN)r�r�r�r�r�rCrtrerdr�r��s9������7�G�3�3�3�
����rer��import_as_namesc��eZdZdZd�ZdS)�_TrailingImportCommaz:trailing comma not allowed without surrounding parenthesesc�\�|jddkr|jjddkrdSdSdS)NrGr�r-T)rYr�r�s  rdrCz_TrailingImportComma.is_issue�s;���=����#�#���(<�R�(@�C�(G�(G��4�$�#�(G�(GreNrartrerdr�r��s+������K�G�����rer�r|c��eZdZdZd�ZdS)�_ImportStarInFunctionz%import * only allowed at module levelc�P�|���o|jjjduSr�)�is_star_importrKrr�r�s  rdrCz_ImportStarInFunction.is_issue�s(���"�"�$�$�\��)9�)A�)P�X\�)\�\reNrartrerdr�r��s-������5�G�]�]�]�]�]rer�c��eZdZdZd�ZdS)�_FutureImportRulez?from __future__ imports must occur at the beginning of the filec��t|��r�t|��sdS|���D]�\}}|j}t	t
��}|jjdkr|�d��|dkr|�	|d����c|dkrd}|�	||�����||vrd	|z}|�	||�����dSdS)
NT�r$��annotations�bracesznot a chancerP�barry_as_FLUFLz-Seriously I'm not implementing this :) ~ Davez future feature %s is not defined)
r~r��	get_pathsr]r1�ALLOWED_FUTURESrKr/r�r+)r�r_�	from_name�future_namer��allowed_futures�mr�s        rdrCz_FutureImportRule.is_issue�s
���T�"�"�	:�*�4�0�0�
��t�*.�.�.�*:�*:�
:�
:�&�	�;�"�(��"&��"7�"7���#�+�v�5�5�#�*�*�=�9�9�9��8�#�#��N�N�4��N�@�@�@�@��-�-�-�G�A��N�N�4��N�3�3�3�3���0�0�@�4�G�G��N�N�4��N�9�9�9��!	:�	:�
:�
:reNrartrerdr�r��s(������O�G�:�:�:�:�:rer�rNc��eZdZdZd�ZdS)�
_StarExprRulez2iterable unpacking cannot be used in comprehensionc��d�}|jjdkr|j}nt|��}|jgt
�d�Rvr5|jdkr|jddks|�|d���dS||��rA|jjdkr|�|d	���n|�|d���dS|jjd
kr<|jjdjtvr |�||j	���dSdSdS)Nc�t�|j�0|j}|jdkrdS|jgt�d�RvrdS|j�0dS)N�del_stmtTr F)r�rWr�r�s rd�check_delete_starredz4_StarExprRule.is_issue.<locals>.check_delete_starred�sU���+�)��{���9�
�*�*��4��9�$A�&8�$A�&�$A�$A�A�A� �5��+�)��5rer�r"r rr,�!can't use starred expression hererPzcannot delete starredrr')
rKr/r�r�rWr�rYr+rq�message_iterable_unpacking)r�r_r��ancestors    rdrCz_StarExprRule.is_issue�sA��	�	�	���#�v�-�-��{�H�H�-�d�3�3�H��=� G�"4� G�6F� G� G�G�G�!��&�0�0�X�5F�q�5I�S�5P�5P��N�N�4�)L�N�M�M�M��F����%�%�	���'�6�1�1����t�-D��E�E�E�E����t�-P��Q�Q�Q��F��;���.�.��{�#�A�&�+��>�>����t�T�-L��M�M�M�M�M�/�.�>�>reN)r�r�r�r�rCrtrerdr�r��s.������!U��N�N�N�N�Nrer�)�typesc��eZdZd�ZdS)�_StarExprParentRulec����fd���||j��r�d�|jD��}d�|D��}t|��dkr4|jjdkrd}nd}|�|d|���dS|rD|�|d	��}|d
kr%d}|�|d	|���dSdSdSdS)Nc���|�dS|j}|dkrdS|dkr|j|jdjkS�||j��S)NFrHr�rG)rWr�rYr�)r_r�r`r�s   �rdr�z3_StarExprParentRule.is_issue.<locals>.is_definitions\������u��M�E��	�!�!��u���#�#��~��(9�"�(=�(G�G�G� �=��x��7�7�7rec��g|]
}|dk�|��S)r�rtr|s  rdryz0_StarExprParentRule.is_issue.<locals>.<listcomp>"s��9�9�9�!��S���A���rec�(�g|]}|jdk�
|��S)rNr�r|s  rdryz0_StarExprParentRule.is_issue.<locals>.<listcomp>#s$��@�@�@�Q�!�&�K�*?�*?�q�*?�*?�*?rer'r�z%two starred expressions in assignmentz*multiple starred expressions in assignmentrPr�z1too many expressions in star-unpacking assignment)r�rYrZrKr/r+r�)r�r_r�rTr��countr�s      @rdrCz_StarExprParentRule.is_issues���	8�	8�	8�	8�	8��=��t�{�+�+�
	@�9�9�t�}�9�9�9�D�@�@�$�@�@�@�G��7�|�|�a����#�+�f�4�4�E�G�G�J�G����w�q�z�7��;�;�;�;�;��
@��
�
�7�1�:�.�.���C�<�<�Q�G��N�N�7�1�:�w�N�?�?�?�?�?�
	@�
	@�
@�
@��<reN�r�r�r�rCrtrerdr�r�s(������@�@�@�@�@rer�r�c��eZdZdZd�Zd�ZdS)�_AnnotatorRulezillegal target for annotationc��|jSr�rXr�s  rdrAz_AnnotatorRule.get_node7r�rec��d}|jjd}t|��}	|j}d|vs|jdkr|ddkrd}n|jdkr|ddkrd}|d}n#t$rYnwxYw|�6|jd	ks'|jd
vr|jdkr|jddksdSdSdSd
}|�|j||z���dS)Nrr�r r,r.r0r1rGr�rBrHTz,only single target (not %s) can be annotatedrP)r�rYr\rWr�r+)r�r_r`�lhsrYrHr�s       rdrCz_AnnotatorRule.is_issue:s)�����k�"�1�%���S�!�!��		#��|�H��h���#�(�f�"4�"4��!���9K�9K������V�#�#����s�(:�(:����r�l�G�G���	�	�	��D�	�����=��H��&�&��x�#9�9�9���	�1�1��(��+�s�2�2��t�'�&�3�2�E�G��N�N�3�:�w���N�?�?�?�?�?s�A,�,
A9�8A9NrDrtrerdr�r�1s>������.�G����@�@�@�@�@rer�r�c��eZdZd�ZdS)�
_ArgumentRulec��|jd}|jjdkrt|��}|jddkrX|jdkrM|jdkr|jjdkrd}nd}n|jjdkrd	}nd}|�||�
��t
|��r)|jjdkr|�|d�
��dSdSdS)
Nrr#r'�=r�rz lambda cannot contain assignmentz=expression cannot contain assignment, perhaps you meant "=="?zkeyword can't be an expressionrPrr)rYrKr/r\rWr+r�r�)r�r_rbr�s    rdrCz_ArgumentRule.is_issueXs����
�a� ����#�f�,�,�"�5�)�)�E��=���s�"�"�u�z�V�';�';��z�Y�&�&��#�+�f�4�4�@�G�G�]�G�G��#�+�f�4�4�>�G�G�]�G��N�N�5�'�N�2�2�2�%�d�+�+�	;���0@�J�0N�0N��N�N�4�)9�N�:�:�:�:�:�	;�	;�0N�0NreNr�rtrerdr�r�Vs#������;�;�;�;�;rer�r�c��eZdZdZd�ZdS)�_NonlocalModuleLevelRulez0nonlocal declaration not allowed at module levelc�(�|jjjduSr�)rKrr�r�s  rdrCz!_NonlocalModuleLevelRule.is_issuets����'�6�$�>�>reNrartrerdr�r�ps(������@�G�?�?�?�?�?rer��arglistc�*�eZdZed���Zd�ZdS)�_ArglistRulec�*�|jjdkrdSdS)Nr�z?Generator expression must be parenthesized if not sole argumentz*Generator expression must be parenthesized)rKr/r�s rdr�z_ArglistRule.messagezs����#�f�,�,�T�T�?�?rec��t��}d}d}|jD�]%}|dkr�
|jdkr�|jd}t|��rt	|j��dkrdS|dvr%|dkr|rd	}|�||�
���rd}�ud}|jdkrj|j|vrGd}|jjd
kr|d�	|j��z
}|�||�
����|�
|j����|rd}|�||�
����
|rd}|�||�
����'dS)NFr�r�rr!T)r�r)r�z>iterable argument unpacking follows keyword argument unpackingrPr�zkeyword argument repeatedr�z: {}z6positional argument follows keyword argument unpackingz,positional argument follows keyword argument)�setrYrWr�rZr+r]rKr/�format�add)r�r_�arg_set�kw_only�kw_unpacking_onlyr�rbr�s        rdrCz_ArglistRule.is_issue�s����%�%����!���
�&	>�&	>�H��3�����}�
�*�*� �)�!�,��-�h�7�7� �C��
�<N�<N�RS�<S�<S��4�4��K�'�'���|�|�,�F�'K�G� �N�N�8�W�N�E�E�E��,0�)�)�"�G��z�V�+�+� �;�'�1�1�&A�G�#�/�7�6�A�A� '�6�=�=���+E�+E� E�� �N�N�5�'�N�B�B�B�B�#�K�K���4�4�4��$�>�V�G��N�N�8�W�N�=�=�=�=��>�L�G��N�N�8�W�N�=�=�=��M&	>�&	>reN)r�r�r��propertyr�rCrtrerdr�r�xs?������
�@�@��X�@�*>�*>�*>�*>�*>rer�r�rc��eZdZdZd�ZdS)�_ParameterRulez-non-default argument follows default argumentc�|�t��}d}d}t|��D]�}|jdkr|jdkrd}d}�|jj|vr+d}|�|j||jjz���|�|jj��|s"|j�
|js|rdS��|jrd}d}��d}��dS)NFr7r�Tz.duplicate argument '%s' in function definitionrP)	r�r�rWr]r�r+r��defaultr�)r�r_�param_names�default_only�	star_seen�pr�s       rdrCz_ParameterRule.is_issue�s����e�e�����	��d�#�#�	(�	(�A��v��#�#��7�c�>�>� $�I�#(�L���v�|�{�*�*�J�����q�v�w����/E��F�F�F��O�O�A�F�L�)�)�)��
(��9�$�Q�\�$�#�$�#�t�t�$��\�(� $�I�#(�L�L�#'�L��)	(�	(reNrartrerdr�r��s*������>�G�(�(�(�(�(rer�rc��eZdZdZd�ZdS)�_TryStmtRulezdefault 'except:' must be lastc��d}|jddd�D]0}|dvrdS|dkr|}�|�|�||j����1dS)Nr$)�elserg�exceptrP)rYr+r�)r�r�default_except�
except_clauses    rdrCz_TryStmtRule.is_issue�sv����%�.�q�t�!�t�4�	E�	E�M�� 3�3�3������(�(�!.����+����~�t�|��D�D�D��
	E�	EreNrartrerdr�r��s-������.�G�E�E�E�E�Erer�rUc�8�eZdZdZdZdZdZd�Zd�Zd�Z	d
d	�Z
dS)�_FStringRuleNz3f-string expression part cannot include a backslashz'f-string: expressions nested too deeplyzAf-string: invalid conversion character: expected 's', 'r', or 'a'c�L�|�|jdd�|��dSr���_check_fstring_contentsrY)r��format_spec�depths   rd�_check_format_specz_FStringRule._check_format_spec�s*���$�$�[�%9�!�"�"�%=�u�E�E�E�E�Erec��|dkr|�||j���|jd}d|���vr|�||j���|jd}|jdkr|jdkr|jd}n|}|jdkr2|jd}|jd	vr|�||j���|jd
}|jdkr|�||dz��dSdS)Nr!rPr'rr7r�r$�fstring_conversion)�sr~�ar��fstring_format_spec)	r+�message_nestedrY�get_code�message_exprrWr]�message_conversionr)r��fstring_exprrrM�
children_2�
conversionr�rs        rd�_check_fstring_exprz _FStringRule._check_fstring_expr�s���A�:�:��N�N�<��1D�N�E�E�E��$�Q�'���4�=�=�?�?�"�"��N�N�4��):�N�;�;�;�!�*�1�-�
��?�j�(�(�Z�-=��-D�-D�%�.�q�1�J�J�#�J��?�2�2�2��&�q�)�D��z��0�0����t�T�-D��E�E�E�"�+�B�/����4�4�4��#�#�K����;�;�;�;�;�5�4rec�J�|�|jdd���dS)Nr'rGr�)r�rUs  rdrCz_FStringRule.is_issue�s(���$�$�W�%5�a��d�%;�<�<�<�<�<rerc�R�|D]#}|jdkr|�||���$dS)Nr
)rWr)r�rYr�fstring_contents    rdrz$_FStringRule._check_fstring_contentssD��'�	A�	A�O��#�~�5�5��(�(��%�@�@�@��	A�	Are)r)r�r�r��_fstring_grammarrr	rrrrCrrtrerdr�r��st��������H�L�>�N�\��F�F�F�<�<�<�,=�=�=�A�A�A�A�A�Arer�c��eZdZdd�ZdS)�_CheckAssignmentRuleFc��d}|j}|dkrd}�ns|dk�r.|jdd�\}}t|��}|��|jdkr-|jjdkrd}�n)|jdd	krd
}�nd}�n|dkr|d
kr|jjdkrd}�n�d
}�n�|dkr0t|j��dkr|jjdkrd}�n�d}�n�|dvrr|jdkrd}�n�|jdkr@|r|dkrd}n|dkrd}|jddd�D]}	|�|	|||����nX|�||||���n>|dkr9|jdkrd}�n)|jjdkrd}�nt|j��}�n�|dkr|jdkrd}�n�|dkrd}�n�|dvrd}�n�|dkrd}
|�	||
����n�|dkrd }�n�|d!vr�|jd"d#krd$}�n�|jd%d&krd'}�n|jd(}|jd)ksJ�|jd"dkrd*}�nP|r|jd"dkrd+}�n9|r|jd"d,krd-}�n"|d.kr|jjdkrd}�nd/}�n|d0vr,|jddd�D]}	|�|	|||���n�d1|vr|d2ksd3|vs|d4vrd'}n�|d2kr�|r+|jjd5krd6}n�|�	|d7���nl|jjd5kr|j
}nt|��}|jtvr7|s5|jdkr|jd"dksd8}
|�	||
���|�|jd��|�Q|rd9|z}
n0|jjdkrd:nd;}
d<�
|
|rd=nd>|g��}
|�	||
���dSdS)?Nrrr r!r"r#r&r'r(r*r+r2r3)r,r0r?r6rr,r.r0r1r4r5r7r8r9r:r;z+assignment to yield expression not possiblerPr@rArBrrErFr�r)rSrGrHrIrJrKrLrUrV)rrr�rMrNrOrPr�rTr�z4starred assignment target must be in a list or tuplez)cannot use assignment expressions with %szcan't�cannot� �deletez	assign to)rWrYrXrKr/rZ�_check_assignmentr]r^r+r�r�r��join)r�r_�is_deletion�is_namedexpr�
is_aug_assignrRr`rbrcrlr�rHr�rs              rdrz&_CheckAssignmentRule._check_assignments*�����	���I����E�E�
�f�_�_� �M�"�1�"�-�M�E�6�+�D�1�1�E��}��;�"2�2�2��'�/�&�8�8� )���!�?�1�-��4�4�$2�E�E�$1�E�E��c�\�\�f��m�m��'�/�&�8�8� )��� .����c�\�\�c�$�-�&8�&8�1�&<�&<��'�/�&�8�8� )��� -����j�(�(��{�l�2�2� 2������7�7�(�/�$��|�|�(/���!&�#���(.��&,�_�S�S�q�S�%9�d�d�E� �2�2�5�+�|�Ub�c�c�c�c�d��.�.�v�{�L�R_�`�`�`��
�i�
�
��z�W�$�$�*����!�)�F�2�2�!����D�J�����
�j�
 �
 ��z�U�"�"�"���
�l�
"�
"� �E�E�
�5�
5�
5��E�E�
�l�
"�
"�C�G��N�N�4��N�1�1�1�1�
�f�_�_�,�E�E�
�,�
,�
,��}�Q��7�*�*�*�����r�"�d�*�*�$����-��+���|�y�0�0�0�0��#�A�&�#�-�-�+�E�E�!�(�g�&6�q�&9�S�&@�&@�'�E�E�!�(�g�&6�q�&9�S�&@�&@�'�E��
�i�
�
���'�&�0�0�!���-���
�D�
D�
D���s�s��s�+�
X�
X���&�&�u�k�<��W�W�W�W�
X���o�o�%�;�"6�"6��E�!�!��,�,�,� �E�E�
�k�
!�
!��

:��#�+�v�5�5�%�E�E��N�N�4�1T�N�U�U�U�U��#�+�v�5�5�#�{�H�H�5�d�;�;�H��=�(:�:�:�=�:�!)��&�!8�!8�X�=N�q�=Q�UX�=X�=X�T�G��N�N�4��N�9�9�9��"�"�4�=��#3�4�4�4����
^�E��M���$(�$4�$<�v�$E�$E���8���(�(�F��,T�H�H��V[�#\�]�]���N�N�4��N�1�1�1�1�1�
�reN)FFF)r�r�r�rrtrerdrrs.������t2�t2�t2�t2�t2�t2rerrc��eZdZdZd�ZdS)�_CompForRulez>asynchronous comprehension outside of an asynchronous functionc���|jd}|jdkr|�|��|jjddko|jj���S)Nr'�	expr_listr�async)rYrWrr�rKrr�)r�r_r#s   rdrCz_CompForRule.is_issue�se���M�!�$�	��>�[�(�(��"�"�9�-�-�-��{�#�A�&�'�1�@��$�,�=�=�?�?�?�	@reNrartrerdr!r!s-������N�G�@�@�@�@�@rer!r�c�"�eZdZdZdezZd�ZdS)�
_ExprStmtRulez+illegal expression for augmented assignmentz'{target}' is an c	�P�|jd}|dko
|jdk}|jjdks|s*|jddd�D]}|�||����|r�t|jd��}|jd	ks;|jd
vr4|jdjdkr|jdjdd
krdS|jjdkrdS|�||j�t|jd|jj��������dSdS)Nr'r�r�r#r�r!)rrr�rBrHrGr,FT)�targetrP)
rYrWrKr/rr\r+�extended_messager�r[)r�r_�	augassignr�before_equalr(s      rdrCz_ExprStmtRule.is_issue�s^���M�!�$�	�!�S�(�J�Y�^�{�-J�
���#�v�-�-�]�-� $�
�e�r�!�e� 4�
R�
R���&�&�|�=�&�Q�Q�Q�Q��	�#�D�M�!�$4�5�5�F��{�f�$�$���5�5�5��O�A�&�+�y�8�8��O�B�'�0��3�s�:�:��u���'�6�1�1��t����� �1�8�8�,�T�]�1�-=�t�?O�?W�X�X�9���������	�	reN)r�r�r�r�r)rCrtrerdr&r&�s3������;�G�*�W�4������rer&�	with_itemc��eZdZd�ZdS)�
_WithItemRulec�F�|�|jd��dS�Nr!)rrY)r�r,s  rdrCz_WithItemRule.is_issue�s$�����y�1�!�4�5�5�5�5�5reNr�rtrerdr.r.�s#������6�6�6�6�6rer.r�c��eZdZd�ZdS)�_DelStmtRulec�h�|jd}|jdkr|�|d���dSdS)Nr'r#T)r�rYrWr)r�r�rls   rdrCz_DelStmtRule.is_issue�sC���!�!�$���:��$�$��"�"�5�d�"�;�;�;�;�;�%�$reNr�rtrerdr2r2�s#������<�<�<�<�<rer2r#c��eZdZd�ZdS)�
_ExprListRulec�V�|jddd�D]}|�|���dSr0)rYr)r�r#rMs   rdrCz_ExprListRule.is_issue�s@���&�s�s��s�+�	)�	)�D��"�"�4�(�(�(�(�	)�	)reNr�rtrerdr6r6�s#������)�)�)�)�)rer6rc��eZdZd�ZdS)�_ForStmtRulec�d�|jd}|jdkr|�|��dSdS)Nr'r#r4)r�rr#s   rdrCz_ForStmtRule.is_issue�s>���%�a�(�	��>�[�(�(��"�"�9�-�-�-�-�-�)�(reNr�rtrerdr9r9�s#������.�.�.�.�.rer9�namedexpr_testc��eZdZd�ZdS)�_NamedExprRulec����	�|jd}d�}||��rd}|�||���t����fd��	�	fd�}||��}|rt|jjjjdkrd}|�||���d	��D��}|jd
kr*|j|vr!d|jz}|�||���|�|d�
��dS)Nrc�\�	|j}|�|S|jdkr|jd|kr|S|}�,)NTrr$r�)r_r�s  rd�search_namedexpr_in_comp_forz=_NamedExprRule.is_issue.<locals>.search_namedexpr_in_comp_for�sE��
�����>�!�M��;�/�1�1�f�o�a�6H�D�6P�6P�!�M���

rezKassignment expression cannot be used in a comprehension iterable expressionrPc���|jdkr|}n|jdkr
|jd}��t|����dS)Nrrr')rWrYr�r�)r�comprs  �rd�process_comp_forz1_NamedExprRule.is_issue.<locals>.process_comp_for�sR����}��/�/������*�,�,��(��+���O�O�:�4�@�@�A�A�A�A�Arec���d}	|�dd��}|�n(|jD]}|jtvr�|��d}n� �A|S)NFTrr")r�rYrWrq)r_�
has_ancestorsrlrCs   �rd�search_all_comp_ancestorsz:_NamedExprRule.is_issue.<locals>.search_all_comp_ancestors�sv���!�M�
��+�+�O�=M�N�N���<��!�]���E��z�_�4�4�(�(��/�/�/�(,�
���5�
�!� rerzKassignment expression within a comprehension cannot be used in a class bodyc�2�g|]}|jdk�
|j��S)r�)rWr])rwrMs  rdryz+_NamedExprRule.is_issue.<locals>.<listcomp>s&��O�O�O�t�4�9��;N�;N��
�;N�;N�;Nrer�zGassignment expression cannot rebind comprehension iteration variable %rT)r)	rYr+r1rKrr_rWr]r)
r�r;rbr@r�rF�
search_all�namelistrrCs
        @@rdrCz_NamedExprRule.is_issue�sX�����'��*��	�	�	�(�'��7�7�	<�d�G��N�N�>�7�N�;�;�;��6�6��	B�	B�	B�	B�	B�	!�	!�	!�	!�	!�/�.�~�>�>�
��	@���'�,�1�Z�?�?�;�����~�w��?�?�?�O�O�x�O�O�O�H��z�V�#�#���x�(?�(?�
@�BG�+�N�����~�w��?�?�?����u�4��8�8�8�8�8reNr�rtrerdr=r=�s#������=9�=9�=9�=9�=9rer=)Er�r�r �
contextlibr�parso.normalizerrrrr�parso.python.tokenizerrr�rrr�rqr[rnrXr~r\r�r�r�r�r�r�r�r�r�r�r9�
register_ruler?rFrIrMrTr\rdrlrqrvr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rr!r&r.r2r6r9r=rtrerd�<module>rNs���
�
�
�
�����	�	�	�	�%�%�%�%�%�%�F�F�F�F�F�F�F�F�F�F�F�F�7�7�7�7�7�7�M��H��������0��G�G�G�T������;�;�;����	�	�	�Z�Z�Z����"(�(�(�0���=�=�=�
8�8�8�/�/�/�F�F�F�F�F�F�F�F�Dq;�q;�q;�q;�q;�*�q;�q;�q;�h.�.�.�.�.�d�.�.�.�
�����-�-�	3�	3�	3�	3�	3�?�	3�	3�.�-�	3�#�#�#�#�#�(�#�#�#�
)�
)�
)�
)�
)��
)�
)�
)�
�����-�-���������.�-��&
�����)�)���������*�)��
�����)�)������
���*�)��
�����,�,������j���-�,��,
�����(�(�<�<�<�<�<�j�<�<�)�(�<�
�����'�'������*���(�'��
�����)�)�H�H�H�H�H�J�H�H�*�)�H�@
�����%�%�	#�	#�	#�	#�	#��	#�	#�&�%�	#�
�����&�&�	M�	M�	M�	M�	M�Z�	M�	M�'�&�	M�
�����)�)������*�*�
�
�
�
�
�J�
�
�+�*�*�)�
� 
���	��*�*���������+�*��"
��� 1��2�2������:���3�2��
���
��.�.�]�]�]�]�]�J�]�]�/�.�]�
���
��.�.�:�:�:�:�:�
�:�:�/�.�:�.
�����,�,�!N�!N�!N�!N�!N�J�!N�!N�-�,�!N�H
���!3��4�4�@�@�@�@�@�*�@�@�5�4�@�>
�����,�,�!@�!@�!@�!@�!@�Z�!@�!@�-�,�!@�H
���
��+�+�;�;�;�;�;�J�;�;�,�+�;�2
�����0�0�?�?�?�?�?�z�?�?�1�0�?�
���	��*�*�2>�2>�2>�2>�2>�:�2>�2>�+�*�2>�j
�����-�-����	��*�*�(�(�(�(�(�Z�(�(�+�*�.�-�(�>
���
��+�+�E�E�E�E�E�:�E�E�,�+�E�
���	��*�*�%A�%A�%A�%A�%A�:�%A�%A�+�*�%A�Pu2�u2�u2�u2�u2�:�u2�u2�u2�p
�����0�0�	@�	@�	@�	@�	@�'�	@�	@�1�0�	@�
�����,�,������(���-�,��D
�����,�,�6�6�6�6�6�(�6�6�-�,�6�

���
��+�+�<�<�<�<�<�'�<�<�,�+�<�
�����,�,�)�)�)�)�)�(�)�)�-�,�)�
���
��+�+�.�.�.�.�.�'�.�.�,�+�.�
��� 0��1�1�@9�@9�@9�@9�@9�)�@9�@9�2�1�@9�@9�@9re

Youez - 2016 - github.com/yon3zu
LinuXploit