
    iaI                    
   d Z ddlmZ ddlmZ ddlmZmZmZ ddl	m
Z
mZ erddlZddlZ ed          Ze e
d	           G d
 dee                                           Ze e
d	           G d dee                                           Ze e
d	           G d dee                                           Ze e
d	           G d dee         ee         ee         ee                                           ZdS )z)Generic abstract syntax tree node visitor    )annotations)abstractmethod)TYPE_CHECKINGGenericTypeVar)
mypyc_attrtraitNTT)allow_interpreted_subclassesc                  ^   e Zd Zedad            Zedbd            Zedcd	            Zeddd            Zeded            Zedfd            Z	edgd            Z
edhd            Zedid            Zedjd            Zedkd            Zedld            Zedmd            Zednd            Zedod!            Zedpd#            Zedqd%            Zedrd'            Zedsd)            Zedtd+            Zedud-            Zedvd/            Zedwd1            Zedxd3            Zedyd5            Zedzd7            Zed{d9            Zed|d;            Zed}d=            Z ed~d?            Z!eddA            Z"eddC            Z#eddE            Z$eddG            Z%eddI            Z&eddK            Z'eddM            Z(eddO            Z)eddQ            Z*eddS            Z+eddU            Z,eddW            Z-eddY            Z.edd[            Z/edd]            Z0edd_            Z1d`S )ExpressionVisitoromypy.nodes.IntExprreturnr
   c                   d S N selfr   s     K/root/projects/qq-shell/venv/lib64/python3.11/site-packages/mypy/visitor.pyvisit_int_exprz ExpressionVisitor.visit_int_expr           mypy.nodes.StrExprc                   d S r   r   r   s     r   visit_str_exprz ExpressionVisitor.visit_str_expr   r   r   mypy.nodes.BytesExprc                   d S r   r   r   s     r   visit_bytes_exprz"ExpressionVisitor.visit_bytes_expr   r   r   mypy.nodes.FloatExprc                   d S r   r   r   s     r   visit_float_exprz"ExpressionVisitor.visit_float_expr"   r   r   mypy.nodes.ComplexExprc                   d S r   r   r   s     r   visit_complex_exprz$ExpressionVisitor.visit_complex_expr&   r   r   mypy.nodes.EllipsisExprc                   d S r   r   r   s     r   visit_ellipsisz ExpressionVisitor.visit_ellipsis*   r   r   mypy.nodes.StarExprc                   d S r   r   r   s     r   visit_star_exprz!ExpressionVisitor.visit_star_expr.   r   r   mypy.nodes.NameExprc                   d S r   r   r   s     r   visit_name_exprz!ExpressionVisitor.visit_name_expr2   r   r   mypy.nodes.MemberExprc                   d S r   r   r   s     r   visit_member_exprz#ExpressionVisitor.visit_member_expr6   r   r   mypy.nodes.YieldFromExprc                   d S r   r   r   s     r   visit_yield_from_exprz'ExpressionVisitor.visit_yield_from_expr:   r   r   mypy.nodes.YieldExprc                   d S r   r   r   s     r   visit_yield_exprz"ExpressionVisitor.visit_yield_expr>   r   r   mypy.nodes.CallExprc                   d S r   r   r   s     r   visit_call_exprz!ExpressionVisitor.visit_call_exprB   r   r   mypy.nodes.OpExprc                   d S r   r   r   s     r   visit_op_exprzExpressionVisitor.visit_op_exprF   r   r   mypy.nodes.ComparisonExprc                   d S r   r   r   s     r   visit_comparison_exprz'ExpressionVisitor.visit_comparison_exprJ   r   r   mypy.nodes.CastExprc                   d S r   r   r   s     r   visit_cast_exprz!ExpressionVisitor.visit_cast_exprN   r   r   mypy.nodes.TypeFormExprc                   d S r   r   r   s     r   visit_type_form_exprz&ExpressionVisitor.visit_type_form_exprR   r   r   mypy.nodes.AssertTypeExprc                   d S r   r   r   s     r   visit_assert_type_exprz(ExpressionVisitor.visit_assert_type_exprV   r   r   mypy.nodes.RevealExprc                   d S r   r   r   s     r   visit_reveal_exprz#ExpressionVisitor.visit_reveal_exprZ   r   r   mypy.nodes.SuperExprc                   d S r   r   r   s     r   visit_super_exprz"ExpressionVisitor.visit_super_expr^   r   r   mypy.nodes.UnaryExprc                   d S r   r   r   s     r   visit_unary_exprz"ExpressionVisitor.visit_unary_exprb   r   r   mypy.nodes.AssignmentExprc                   d S r   r   r   s     r   visit_assignment_exprz'ExpressionVisitor.visit_assignment_exprf   r   r   mypy.nodes.ListExprc                   d S r   r   r   s     r   visit_list_exprz!ExpressionVisitor.visit_list_exprj   r   r   mypy.nodes.DictExprc                   d S r   r   r   s     r   visit_dict_exprz!ExpressionVisitor.visit_dict_exprn   r   r   mypy.nodes.TemplateStrExprc                   d S r   r   r   s     r   visit_template_str_exprz)ExpressionVisitor.visit_template_str_exprr   r   r   mypy.nodes.TupleExprc                   d S r   r   r   s     r   visit_tuple_exprz"ExpressionVisitor.visit_tuple_exprv   r   r   mypy.nodes.SetExprc                   d S r   r   r   s     r   visit_set_exprz ExpressionVisitor.visit_set_exprz   r   r   mypy.nodes.IndexExprc                   d S r   r   r   s     r   visit_index_exprz"ExpressionVisitor.visit_index_expr~   r   r   mypy.nodes.TypeApplicationc                   d S r   r   r   s     r   visit_type_applicationz(ExpressionVisitor.visit_type_application   r   r   mypy.nodes.LambdaExprc                   d S r   r   r   s     r   visit_lambda_exprz#ExpressionVisitor.visit_lambda_expr   r   r   mypy.nodes.ListComprehensionc                   d S r   r   r   s     r   visit_list_comprehensionz*ExpressionVisitor.visit_list_comprehension   r   r   mypy.nodes.SetComprehensionc                   d S r   r   r   s     r   visit_set_comprehensionz)ExpressionVisitor.visit_set_comprehension   r   r   "mypy.nodes.DictionaryComprehensionc                   d S r   r   r   s     r   visit_dictionary_comprehensionz0ExpressionVisitor.visit_dictionary_comprehension   r   r   mypy.nodes.GeneratorExprc                   d S r   r   r   s     r   visit_generator_exprz&ExpressionVisitor.visit_generator_expr   r   r   mypy.nodes.SliceExprc                   d S r   r   r   s     r   visit_slice_exprz"ExpressionVisitor.visit_slice_expr   r   r   mypy.nodes.ConditionalExprc                   d S r   r   r   s     r   visit_conditional_exprz(ExpressionVisitor.visit_conditional_expr   r   r   mypy.nodes.TypeVarExprc                   d S r   r   r   s     r   visit_type_var_exprz%ExpressionVisitor.visit_type_var_expr   r   r   mypy.nodes.ParamSpecExprc                   d S r   r   r   s     r   visit_paramspec_exprz&ExpressionVisitor.visit_paramspec_expr   r   r   mypy.nodes.TypeVarTupleExprc                   d S r   r   r   s     r   visit_type_var_tuple_exprz+ExpressionVisitor.visit_type_var_tuple_expr   r   r   mypy.nodes.TypeAliasExprc                   d S r   r   r   s     r   visit_type_alias_exprz'ExpressionVisitor.visit_type_alias_expr   r   r   mypy.nodes.NamedTupleExprc                   d S r   r   r   s     r   visit_namedtuple_exprz'ExpressionVisitor.visit_namedtuple_expr   r   r   mypy.nodes.EnumCallExprc                   d S r   r   r   s     r   visit_enum_call_exprz&ExpressionVisitor.visit_enum_call_expr   r   r   mypy.nodes.TypedDictExprc                   d S r   r   r   s     r   visit_typeddict_exprz&ExpressionVisitor.visit_typeddict_expr   r   r   mypy.nodes.NewTypeExprc                   d S r   r   r   s     r   visit_newtype_exprz$ExpressionVisitor.visit_newtype_expr   r   r   mypy.nodes.PromoteExprc                   d S r   r   r   s     r   visit__promote_exprz%ExpressionVisitor.visit__promote_expr   r   r   mypy.nodes.AwaitExprc                   d S r   r   r   s     r   visit_await_exprz"ExpressionVisitor.visit_await_expr   r   r   mypy.nodes.TempNodec                   d S r   r   r   s     r   visit_temp_nodez!ExpressionVisitor.visit_temp_node   r   r   Nr   r   r   r
   r   r   r   r
   r   r   r   r
   r   r    r   r
   r   r#   r   r
   r   r&   r   r
   r   r)   r   r
   r   r,   r   r
   r   r/   r   r
   r   r2   r   r
   r   r5   r   r
   r   r8   r   r
   r   r;   r   r
   r   r>   r   r
   r   rA   r   r
   r   rD   r   r
   r   rG   r   r
   r   rJ   r   r
   r   rM   r   r
   r   rP   r   r
   r   rS   r   r
   r   rV   r   r
   r   rY   r   r
   r   r\   r   r
   r   r_   r   r
   r   rb   r   r
   r   re   r   r
   r   rh   r   r
   r   rk   r   r
   r   rn   r   r
   r   rq   r   r
   r   rt   r   r
   r   rw   r   r
   r   rz   r   r
   r   r}   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   )2__name__
__module____qualname__r   r   r   r   r"   r%   r(   r+   r.   r1   r4   r7   r:   r=   r@   rC   rF   rI   rL   rO   rR   rU   rX   r[   r^   ra   rd   rg   rj   rm   rp   rs   rv   ry   r|   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s           ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^  r   r   c                     e Zd Zed;d            Zed<d            Zed=d	            Zed>d            Zed?d            Zed@d            Z	edAd            Z
edBd            ZedCd            ZedDd            ZedEd            ZedFd            ZedGd            ZedHd            ZedId!            ZedJd#            ZedKd%            ZedLd'            ZedMd)            ZedNd+            ZedOd-            ZedPd/            ZedQd1            ZedRd3            ZedSd5            ZedTd7            ZedUd9            Zd:S )VStatementVisitorr   mypy.nodes.AssignmentStmtr   r
   c                   d S r   r   r   s     r   visit_assignment_stmtz&StatementVisitor.visit_assignment_stmt   r   r   mypy.nodes.ForStmtc                   d S r   r   r   s     r   visit_for_stmtzStatementVisitor.visit_for_stmt   r   r   mypy.nodes.WithStmtc                   d S r   r   r   s     r   visit_with_stmtz StatementVisitor.visit_with_stmt   r   r   mypy.nodes.DelStmtc                   d S r   r   r   s     r   visit_del_stmtzStatementVisitor.visit_del_stmt   r   r   mypy.nodes.FuncDefc                   d S r   r   r   s     r   visit_func_defzStatementVisitor.visit_func_def   r   r   mypy.nodes.OverloadedFuncDefc                   d S r   r   r   s     r   visit_overloaded_func_defz*StatementVisitor.visit_overloaded_func_def   r   r   mypy.nodes.ClassDefc                   d S r   r   r   s     r   visit_class_defz StatementVisitor.visit_class_def   r   r   mypy.nodes.GlobalDeclc                   d S r   r   r   s     r   visit_global_declz"StatementVisitor.visit_global_decl   r   r   mypy.nodes.NonlocalDeclc                   d S r   r   r   s     r   visit_nonlocal_declz$StatementVisitor.visit_nonlocal_decl   r   r   mypy.nodes.Decoratorc                   d S r   r   r   s     r   visit_decoratorz StatementVisitor.visit_decorator   r   r   mypy.nodes.Importc                   d S r   r   r   s     r   visit_importzStatementVisitor.visit_import   r   r   mypy.nodes.ImportFromc                   d S r   r   r   s     r   visit_import_fromz"StatementVisitor.visit_import_from  r   r   mypy.nodes.ImportAllc                   d S r   r   r   s     r   visit_import_allz!StatementVisitor.visit_import_all  r   r   mypy.nodes.Blockc                   d S r   r   r   s     r   visit_blockzStatementVisitor.visit_block  r   r   mypy.nodes.ExpressionStmtc                   d S r   r   r   s     r   visit_expression_stmtz&StatementVisitor.visit_expression_stmt  r   r   !mypy.nodes.OperatorAssignmentStmtc                   d S r   r   r   s     r   visit_operator_assignment_stmtz/StatementVisitor.visit_operator_assignment_stmt  r   r   mypy.nodes.WhileStmtc                   d S r   r   r   s     r   visit_while_stmtz!StatementVisitor.visit_while_stmt  r   r   mypy.nodes.ReturnStmtc                   d S r   r   r   s     r   visit_return_stmtz"StatementVisitor.visit_return_stmt  r   r   mypy.nodes.AssertStmtc                   d S r   r   r   s     r   visit_assert_stmtz"StatementVisitor.visit_assert_stmt   r   r   mypy.nodes.IfStmtc                   d S r   r   r   s     r   visit_if_stmtzStatementVisitor.visit_if_stmt$  r   r   mypy.nodes.BreakStmtc                   d S r   r   r   s     r   visit_break_stmtz!StatementVisitor.visit_break_stmt(  r   r   mypy.nodes.ContinueStmtc                   d S r   r   r   s     r   visit_continue_stmtz$StatementVisitor.visit_continue_stmt,  r   r   mypy.nodes.PassStmtc                   d S r   r   r   s     r   visit_pass_stmtz StatementVisitor.visit_pass_stmt0  r   r   mypy.nodes.RaiseStmtc                   d S r   r   r   s     r   visit_raise_stmtz!StatementVisitor.visit_raise_stmt4  r   r   mypy.nodes.TryStmtc                   d S r   r   r   s     r   visit_try_stmtzStatementVisitor.visit_try_stmt8  r   r   mypy.nodes.MatchStmtc                   d S r   r   r   s     r   visit_match_stmtz!StatementVisitor.visit_match_stmt<  r   r   mypy.nodes.TypeAliasStmtc                   d S r   r   r   s     r   visit_type_alias_stmtz&StatementVisitor.visit_type_alias_stmt@  r   r   Nr   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r   r   r
   r   r  r   r
   r   r  r   r
   r   r  r   r
   r   r
  r   r
   r   r  r   r
   r   r  r   r
   r   r  r   r
   r   r  r   r
   r   r  r   r
   r   r  r   r
   r   r  r   r
   r   r"  r   r
   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r	  r  r  r  r  r  r  r  r!  r$  r   r   r   r   r      st       
    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^
    ^    ^    ^
    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^    ^  r   r   c                      e Zd Zedd            Zedd            Zedd	            Zedd            Zedd            Zedd            Z	edd            Z
edd            ZdS )PatternVisitorr   mypy.patterns.AsPatternr   r
   c                   d S r   r   r   s     r   visit_as_patternzPatternVisitor.visit_as_patternH  r   r   mypy.patterns.OrPatternc                   d S r   r   r   s     r   visit_or_patternzPatternVisitor.visit_or_patternL  r   r   mypy.patterns.ValuePatternc                   d S r   r   r   s     r   visit_value_patternz"PatternVisitor.visit_value_patternP  r   r   mypy.patterns.SingletonPatternc                   d S r   r   r   s     r   visit_singleton_patternz&PatternVisitor.visit_singleton_patternT  r   r   mypy.patterns.SequencePatternc                   d S r   r   r   s     r   visit_sequence_patternz%PatternVisitor.visit_sequence_patternX  r   r   mypy.patterns.StarredPatternc                   d S r   r   r   s     r   visit_starred_patternz$PatternVisitor.visit_starred_pattern\  r   r   mypy.patterns.MappingPatternc                   d S r   r   r   s     r   visit_mapping_patternz$PatternVisitor.visit_mapping_pattern`  r   r   mypy.patterns.ClassPatternc                   d S r   r   r   s     r   visit_class_patternz"PatternVisitor.visit_class_patternd  r   r   Nr   rB  r   r
   r   rE  r   r
   r   rH  r   r
   r   rK  r   r
   r   rN  r   r
   r   rQ  r   r
   r   rT  r   r
   r   rW  r   r
   )r   r   r   r   rD  rG  rJ  rM  rP  rS  rV  rY  r   r   r   rA  rA  E  s           ^    ^    ^    ^    ^    ^    ^    ^  r   rA  c                     e Zd ZdZddZddZdd
ZddZddZddZ	ddZ
ddZddZddZddZddZddZdd Zdd"Zdd$Zdd&Zdd(Zdd*Zdd,Zdd.Zdd0Zdd2Zdd4Zdd6Zdd8Zdd:Zdd<Zdd>Z dd@Z!ddBZ"ddDZ#ddFZ$ddHZ%ddJZ&ddLZ'ddNZ(ddPZ)ddRZ*ddTZ+ddVZ,ddXZ-ddZZ.dd\Z/dd^Z0dd`Z1ddbZ2dddZ3ddfZ4ddhZ5ddjZ6ddlZ7ddnZ8ddpZ9ddrZ:ddtZ;ddvZ<ddxZ=ddzZ>dd|Z?dd~Z@ddZAddZBddZCddZDddZEddZFddZGddZHddZIddZJddZKddZLddZMddZNddZOddZPddZQddZRddZSd dZTddZUddZVddZWddZXdS (  NodeVisitorzEmpty base class for parse tree node visitors.

    The T type argument specifies the return type of the visit
    methods. As all methods defined here raise by default,
    subclasses do not always need to override all the methods.
    r   mypy.nodes.MypyFiler   r
   c                   t                      r   NotImplementedErrorr   s     r   visit_mypy_filezNodeVisitor.visit_mypy_fileu      !###r   mypy.nodes.Varc                   t                      r   rf  r   s     r   	visit_varzNodeVisitor.visit_var{  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_import  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_import_from  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_import_all  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_func_def  ri  r   r   c                   t                      r   rf  r   s     r   r   z%NodeVisitor.visit_overloaded_func_def  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_class_def  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_global_decl  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_nonlocal_decl  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_decorator  ri  r   mypy.nodes.TypeAliasc                   t                      r   rf  r   s     r   visit_type_aliaszNodeVisitor.visit_type_alias  ri  r   mypy.nodes.PlaceholderNodec                   t                      r   rf  r   s     r   visit_placeholder_nodez"NodeVisitor.visit_placeholder_node  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_block  ri  r   r   c                   t                      r   rf  r   s     r   r   z!NodeVisitor.visit_expression_stmt  ri  r   r   c                   t                      r   rf  r   s     r   r   z!NodeVisitor.visit_assignment_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  z*NodeVisitor.visit_operator_assignment_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_while_stmt  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_for_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r	  zNodeVisitor.visit_return_stmt  ri  r   r
  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_assert_stmt  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_del_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_if_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_break_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_continue_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_pass_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_raise_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r  zNodeVisitor.visit_try_stmt  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_with_stmt  ri  r   r  c                   t                      r   rf  r   s     r   r!  zNodeVisitor.visit_match_stmt  ri  r   r"  c                   t                      r   rf  r   s     r   r$  z!NodeVisitor.visit_type_alias_stmt  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_int_expr  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_str_expr  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_bytes_expr  ri  r   r    c                   t                      r   rf  r   s     r   r"   zNodeVisitor.visit_float_expr  ri  r   r#   c                   t                      r   rf  r   s     r   r%   zNodeVisitor.visit_complex_expr  ri  r   r&   c                   t                      r   rf  r   s     r   r(   zNodeVisitor.visit_ellipsis  ri  r   r)   c                   t                      r   rf  r   s     r   r+   zNodeVisitor.visit_star_expr  ri  r   r,   c                   t                      r   rf  r   s     r   r.   zNodeVisitor.visit_name_expr  ri  r   r/   c                   t                      r   rf  r   s     r   r1   zNodeVisitor.visit_member_expr  ri  r   r2   c                   t                      r   rf  r   s     r   r4   z!NodeVisitor.visit_yield_from_expr  ri  r   r5   c                   t                      r   rf  r   s     r   r7   zNodeVisitor.visit_yield_expr  ri  r   r8   c                   t                      r   rf  r   s     r   r:   zNodeVisitor.visit_call_expr  ri  r   r;   c                   t                      r   rf  r   s     r   r=   zNodeVisitor.visit_op_expr  ri  r   r>   c                   t                      r   rf  r   s     r   r@   z!NodeVisitor.visit_comparison_expr  ri  r   rA   c                   t                      r   rf  r   s     r   rC   zNodeVisitor.visit_cast_expr  ri  r   rD   c                   t                      r   rf  r   s     r   rF   z NodeVisitor.visit_type_form_expr
  ri  r   rG   c                   t                      r   rf  r   s     r   rI   z"NodeVisitor.visit_assert_type_expr  ri  r   rJ   c                   t                      r   rf  r   s     r   rL   zNodeVisitor.visit_reveal_expr  ri  r   rM   c                   t                      r   rf  r   s     r   rO   zNodeVisitor.visit_super_expr  ri  r   rS   c                   t                      r   rf  r   s     r   rU   z!NodeVisitor.visit_assignment_expr  ri  r   rP   c                   t                      r   rf  r   s     r   rR   zNodeVisitor.visit_unary_expr  ri  r   rV   c                   t                      r   rf  r   s     r   rX   zNodeVisitor.visit_list_expr  ri  r   rY   c                   t                      r   rf  r   s     r   r[   zNodeVisitor.visit_dict_expr  ri  r   r\   c                   t                      r   rf  r   s     r   r^   z#NodeVisitor.visit_template_str_expr"  ri  r   r_   c                   t                      r   rf  r   s     r   ra   zNodeVisitor.visit_tuple_expr%  ri  r   rb   c                   t                      r   rf  r   s     r   rd   zNodeVisitor.visit_set_expr(  ri  r   re   c                   t                      r   rf  r   s     r   rg   zNodeVisitor.visit_index_expr+  ri  r   rh   c                   t                      r   rf  r   s     r   rj   z"NodeVisitor.visit_type_application.  ri  r   rk   c                   t                      r   rf  r   s     r   rm   zNodeVisitor.visit_lambda_expr1  ri  r   rn   c                   t                      r   rf  r   s     r   rp   z$NodeVisitor.visit_list_comprehension4  ri  r   rq   c                   t                      r   rf  r   s     r   rs   z#NodeVisitor.visit_set_comprehension7  ri  r   rt   c                   t                      r   rf  r   s     r   rv   z*NodeVisitor.visit_dictionary_comprehension:  ri  r   rw   c                   t                      r   rf  r   s     r   ry   z NodeVisitor.visit_generator_expr=  ri  r   rz   c                   t                      r   rf  r   s     r   r|   zNodeVisitor.visit_slice_expr@  ri  r   r}   c                   t                      r   rf  r   s     r   r   z"NodeVisitor.visit_conditional_exprC  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_type_var_exprF  ri  r   r   c                   t                      r   rf  r   s     r   r   z NodeVisitor.visit_paramspec_exprI  ri  r   r   c                   t                      r   rf  r   s     r   r   z%NodeVisitor.visit_type_var_tuple_exprL  ri  r   r   c                   t                      r   rf  r   s     r   r   z!NodeVisitor.visit_type_alias_exprO  ri  r   r   c                   t                      r   rf  r   s     r   r   z!NodeVisitor.visit_namedtuple_exprR  ri  r   r   c                   t                      r   rf  r   s     r   r   z NodeVisitor.visit_enum_call_exprU  ri  r   r   c                   t                      r   rf  r   s     r   r   z NodeVisitor.visit_typeddict_exprX  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_newtype_expr[  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit__promote_expr^  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_await_expra  ri  r   r   c                   t                      r   rf  r   s     r   r   zNodeVisitor.visit_temp_noded  ri  r   rB  c                   t                      r   rf  r   s     r   rD  zNodeVisitor.visit_as_patterni  ri  r   rE  c                   t                      r   rf  r   s     r   rG  zNodeVisitor.visit_or_patternl  ri  r   rH  c                   t                      r   rf  r   s     r   rJ  zNodeVisitor.visit_value_patterno  ri  r   rK  c                   t                      r   rf  r   s     r   rM  z#NodeVisitor.visit_singleton_patternr  ri  r   rN  c                   t                      r   rf  r   s     r   rP  z"NodeVisitor.visit_sequence_patternu  ri  r   rQ  c                   t                      r   rf  r   s     r   rS  z!NodeVisitor.visit_starred_patternx  ri  r   rT  c                   t                      r   rf  r   s     r   rV  z!NodeVisitor.visit_mapping_pattern{  ri  r   rW  c                   t                      r   rf  r   s     r   rY  zNodeVisitor.visit_class_pattern~  ri  r   N)r   rd  r   r
   )r   rj  r   r
   r/  r0  r1  r)  r*  r+  r,  r-  r.  )r   rv  r   r
   )r   ry  r   r
   r2  r3  r%  r4  r5  r&  r6  r7  r(  r8  r9  r:  r;  r<  r=  r'  r>  r?  r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rZ  r[  r\  r]  r^  r_  r`  ra  )Yr   r   r   __doc__rh  rl  r   r   r   r   r   r   r   r   r   rx  r{  r   r   r   r  r  r   r	  r  r   r  r  r  r  r  r  r   r!  r$  r   r   r   r"   r%   r(   r+   r.   r1   r4   r7   r:   r=   r@   rC   rF   rI   rL   rO   rU   rR   rX   r[   r^   ra   rd   rg   rj   rm   rp   rs   rv   ry   r|   r   r   r   r   r   r   r   r   r   r   r   r   rD  rG  rJ  rM  rP  rS  rV  rY  r   r   r   rc  rc  i  s        $ $ $ $$ $ $ $
$ $ $ $$ $ $ $$ $ $ $
$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $
$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $
$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $
$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $$ $ $ $ $ $r   rc  )r  
__future__r   abcr   typingr   r   r   mypy_extensionsr   r	   
mypy.nodesmypymypy.patternsr
   r   r   rA  rc  r   r   r   <module>r     s   / / " " " " " "       2 2 2 2 2 2 2 2 2 2 - - - - - - - -  GCLL ...w w w w w
 w w /. wt ...q q q q qwqz q q /. qh ...    WQZ   /. D ...T$ T$ T$ T$ T$'!*/24DQ4GXYIZ T$ T$ /. T$ T$ T$r   