Edit File: rebuilder.cpython-311.pyc
� ����r�ds7���������������������2����U�d�Z�ddlmZ�ddlZddlZddlZddlmZmZ�ddl m Z �ddlmZm Z �ddlmZmZmZmZmZ�ddlmZ�dd lmZmZmZ�dd lmZmZmZmZmZ�ddl m!Z!�ddl"m#Z#�dd l$m%Z%�ddl&m'Z'�ej(��������dk����rddlm)Z)�nddl*m)Z)�dddddddd�Z+de,d<����eddded���������������������Z-�edej.��������ej/��������������������Z0�edej1��������ej2��������������������Z3�edej4��������ej5��������������������Z6eej7��������ej8��������ej.��������f���������Z9�G�d ��d!������������Z:dS�)"zlThis module contains utilities for rebuilding an _ast tree in order to get a single Astroid representation. �����)�annotationsN)�Callable� Generator)�StringIO)� TokenInfo�generate_tokens)� TYPE_CHECKING�TypeVar�Union�cast�overload)�nodes)�ParserModule�get_parser_module�parse_function_type_comment)�IS_PYPY�PY38� PY38_PLUS� PY39_PLUS�Context)�AstroidManager)�NodeNG)�Position)�SuccessfulInferenceResult���������)�Final� Arguments� Comprehension� ExceptHandler�Keyword� MatchCase)� arguments� comprehension�ListCompFor� GenExprFor� excepthandler�keyword� match_casezFinal[dict[str, str]]�REDIRECT�T_Doc� ast.Module�ast.ClassDef)�ast.FunctionDef�ast.AsyncFunctionDef� _FunctionT�_ForT�_WithTc�����������������������e�Zd�ZdZ � ��d��d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z �d�d$�Z e�r2e�d�d(���������������Z e�d�d+���������������Z e�d�d.���������������Z e�d�d1���������������Z e�d�d4���������������Z e�d�d7���������������Z e�d�d:���������������Z e�d�d=���������������Z e�d�d@���������������Z e�d�dC���������������Z e�d�dF���������������Z e�d�dI���������������Z e�d�dL���������������Z e�d�dO���������������Z e�d�dR���������������Z e�d�dU���������������Z e�d�dX���������������Z e�d�d[���������������Z e�d�d^���������������Z e�d�da���������������Z e�d�dd���������������Z e�d�dg���������������Z e�d�dj���������������Z e�d�dm���������������Z e�d�dp���������������Z e�d�ds���������������Z e�d�dv���������������Z e�d�dy���������������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 ej��������d�k����r e�d�d����������������Z ej��������d�k�����re�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 ej��������d�k�����rAe�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 e�d�d����������������Z e�d�d����������������Z e�d�dĄ��������������Z e�d�dDŽ��������������Z e�d�dɄ��������������Z e�d�d̄��������������Z e�d�dτ��������������Z ej��������d�k����r 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 ej��������d�k����r�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 e�dِd����������������Z e�dڐd���������������Z e�dېd���������������Z e�dܐd���������������Z e�dݐd ���������������Z �dސd�Z �dߐd�Z�d��d�Z�d��d�Z�d��d�Z�d�d�Z�d�d�Z�d��d�Z�d��d�Z�d��d�Z�d��d�Z�d��d�Z�d��d�Ze�d�d���������������Ze�d�d ���������������Z�d�d"�Z�d��d#�Z�d��d$�Z�d��d%�Z�d��d&�Z �d��d'�Z! ��d�d�d*�Z"�d��d+�Z#�d��d,�Z$�d��d-�Z%�d�d/�Z&�d��d0�Z'�d�d2�Z(�d��d3�Z)�d��d4�Z*�d��d5�Z+�d��d6�Z,e�d�d9���������������Z-e�d�d;���������������Z-�d�d?�Z-�d��d@�Z.�d��dA�Z/e�d�dC���������������Z0e�d�dE���������������Z0�d�dH�Z0�d��dI�Z1�d��dJ�Z2�d�dL�Z3�d��dM�Z4�d��dN�Z5�d��dO�Z6�d��dP�Z7�d��dQ�Z8�d��dR�Z9ej��������d�k����r�d��dS�Z:ej��������d�k�����r�d��dT�Z;�d��dU�Z<�d��dV�Z=�d��dW�Z>�d��dX�Z?�d��dY�Z@�d�d[�ZA�d��d\�ZB�d��d]�ZCej��������d�k�����r�d��d^�ZD�d��d_�ZE�d�da�ZFeFZG�d��db�ZH�d��dc�ZI�ddd�ZJ�dÐde�ZK�dĐdf�ZL�dŐdg�ZM�dƐdh�ZN�dǐdi�ZO�dȐdj�ZP�d�dl�ZQ�d�dn�ZR�dʐdo�ZS�dːdp�ZT�d̐dq�ZU�d͐dr�ZVe�d�dt���������������ZWe�d��dv���������������ZW�d��dz�ZW�d��d{�ZX�d��d|�ZY�d��d}�ZZej��������d�k����r>�dѐd~�Z[�dҐd�Z\�dӐd��Z]�dԐd��Z^�dՐd��Z_�dd��Z`�dאd��Za�dؐd��Zb�dِd��Zc�dڐd��ZddS�dS�(���� TreeRebuilderz1Rebuilds the _ast tree to become an Astroid tree.N�managerr���� parser_module�ParserModule | None�data� str | None�return�Nonec�����������������������||�_���������|r|���������������������d������������nd�|�_��������g�|�_��������g�|�_��������g�|�_��������i�|�_��������|�t������������������������|�_��������n||�_��������|�j��������j ��������|�_ ��������d�S�)N� )�_manager�split�_data� _global_names�_import_from_nodes�_delayed_assattr�_visit_methsr����_parser_module�module�_module)�selfr6���r7���r9���s��� �b/builddir/build/BUILD/cloudlinux-venv-1.0.2/venv/lib/python3.11/site-packages/astroid/rebuilder.py�__init__zTreeRebuilder.__init__<���sx������� �� �)-�7�T�Z�Z��%�%�%�4�� �BD���:<���8:���VX���� �"3�"5�"5�D���"/�D���*�1����������noder,����+tuple[T_Doc, ast.Constant | ast.Str | None]c��������������������� �|j���������r�t����������|j���������d���������|�j��������j��������������������r�|j���������d���������j��������}t����������||�j��������j��������������������s;t����������r`t����������||�j��������j��������������������rFt����������|j��������t����������������������r,|}|j���������dd����������|_���������|j ��������dk����rd|_ ��������||fS�n#�t����������$�r�Y�nw�xY�w|dfS�)zReturn the doc ast node.r�������N���)�body� isinstancerH����Expr�value�Strr����Constant�str� col_offset� IndexError)rI���rM����first_value�doc_ast_nodes��� rJ����_get_doczTreeRebuilder._get_docO���s������� ��y�� .�Z�� �!��d�l�6G�H�H�� .�"�i��l�0���k�4�<�+;�<�<��.��.�"�;���0E�F�F�.��#�;�#4�c�:�:�.� �$/�L� $� �!�"�"� �D�I��$�.�"�4�4�26��/���-�-����� �� �� ��D� �����T�z�s����B>C�� C�C�Mast.Attribute | ast.List | ast.Name | ast.Subscript | ast.Starred | ast.Tupler���c�����������������z�����|�j���������j�����������������������������t����������|j��������������������t ����������j��������������������S��N)rF����context_classes�get�type�ctxr����Load�rI���rM���s��� rJ����_get_contextzTreeRebuilder._get_contextd���s*��������"�2�6�6�t�D�H�~�~�w�|�T�T�TrL����5ast.ClassDef | ast.FunctionDef | ast.AsyncFunctionDef�parent�;nodes.ClassDef | nodes.FunctionDef | nodes.AsyncFunctionDef�Position | Nonec����������������������|�j���������sdS�t����������|dd������������}|j��������r|j��������d���������j��������}d���������������������|�j���������|j��������dz ��|����������������������}d}t ����������j��������f}t����������|t����������j ��������������������rd}nt����������|t����������j ��������������������rd}nd}t����������t����������|������������j ��������������������D�]N}|�'|j��������t ����������j��������k����r|j��������|j��������k����r�n&|j��������|v�r|j��������|k����r|}�B|j��������d v�r�Ld}�OdS�t#����������|j��������|j��������d���������z���dz ��|j��������d���������|j��������|j��������d���������z���dz ��|j��������d���������� ������������S�)a*��Return position information for ClassDef and FunctionDef nodes. In contrast to AST positions, these only include the actual keyword(s) and the class / function name. >>> @decorator >>> async def some_func(var: int) -> None: >>> ^^^^^^^^^^^^^^^^^^^ N� end_linenor���r>���rP����async�def�class>���ro���)�linenorY���rm����end_col_offset)rA����getattrrR���rq����join�token�NAMErS���r����AsyncFunctionDef�FunctionDefr���r����readlinerc����string�namer����start�end) rI���rM���ri���rm���r9����start_token�keyword_tokens�search_token�ts ��� rJ����_get_position_infoz TreeRebuilder._get_position_infoq���s��������z�� ��4�!(��|�T�!B�!B� ��9�� -���1��,�J��y�y���D�K�!�O�j�$@�A�B�B��(,��+0�:�-���f�e�4�5�5�� #�"�L�L� ��� 1� 2� 2�� #� �L�L�"�L� ��$���!8�9�9�� �� �A��'��F�e�j�(�(��H�� �)�)����v��'�'��8�|�+�+�"#�K���8�w�&�&���K�K��4���;��!2�1�!5�5��9�"�(��+��{�Q�U�1�X�-��1��5��8� �� �� �� rL����NodesWithDocsTypec����������������� ����|�j���������r|j��������r|j���������dS�t����������rdS�|j��������pd}|j��������j��������}t����������r t ����������sd}d���������������������|�j���������|dz ��|����������������������}d\��}}d}t����������j��������t����������j ��������t����������j ��������t����������j��������h}t����������|t����������j��������������������rd}t����������t!����������|������������j��������������������D�]�} |du�r�|du�r!| j��������t����������j��������k����r| j��������dv�rd}nl|du�rh| j��������t����������j��������k����rS| j��������t����������j��������k����r |dk����rd}n5| j��������t����������j��������k����r|dz ��}n| j��������t����������j��������k����r|dz��}��| j��������|v�r��| j��������t����������j��������k����r�n�dS�dS�|| j��������d���������z���dz ��|j��������_��������| j��������d���������|j��������_��������|| j��������d���������z���dz ��|j��������_��������| j��������d���������|j��������_��������dS�) z9Fix start and end position of doc nodes for Python < 3.8.NrP���r>���)FFr���TF>���ro���rp���) rA����doc_noderq���r���r���r���rt���ru����NEWLINE�INDENT�NL�COMMENTrS���r����Moduler���r���ry���rc���rv���rz����OP� exact_type�COLON�LPAR�RPAR�STRINGr|���rY���r}���rm���rr���) rI���rM���rq���� end_ranger9����found_start� found_end� open_brackets� skip_tokenr����s ��� rJ����_fix_doc_node_positionz$TreeRebuilder._fix_doc_node_position����s������z�� ���� �$�+�2E��F��� ��F���!��� $� � 4� ��� �9�� ��I��y�y���F�Q�J��$:�;�<�<��!-���Y�� � %� �u�|�U�X�u�}�U� ��d�E�L�)�)�� ��I� ��$���!8�9�9�� �� �A��E�!�!��5�(�(���%�*�,�,���$4�4�4�"&�K�K� �D�(�(�Q�V�u�x�-?�-?��|�u�{�2�2�}��7I�7I�$(� � �����3�3�%��*� � �����3�3�%��*� ���v��#�#���v���%�%����F�F��F�%���� �2�Q�6�� ��#$�7�1�:�� � �#)�A�E�!�H�#4�q�#8�� � �'(�u�Q�x�� �$�$�$rL����newnode�nodes.NodeNGc�����������������z�����d|_���������d|_��������|�����������������������������������D�]}|����������������������|��������������dS�)a$��Reset end_lineno and end_col_offset attributes for PyPy 3.8. For some nodes, these are either set to -1 or only partially assigned. To keep consistency across astroid and pylint, reset all. This has been fixed in PyPy 3.9. For reference, an (incomplete) list of nodes with issues: - ClassDef - For - FunctionDef - While - Call - If - Decorators - TryExcept - With - TryFinally - Assign N)rm���rr����get_children�_reset_end_lineno)rI���r����� child_nodes��� rJ���r����zTreeRebuilder._reset_end_lineno����sP�������"���!%���!�.�.�0�0�� /�� /�J��"�"�:�.�.�.�.� /�� /rL���r-����modnamerX����modpath�package�bool�nodes.Modulec�����������������X�������������������������������|������������\��}}t����������j��������|||g|d���������������������������������������fd�|j��������D��������������������������������������|����������������������������������������������������������������t����������rt����������r��� �����������������������������������S�)zmVisit a Module node by returning a fresh instance of it. Note: Method not called by 'visit' N)r{����file�pathr����ri���c�����������������<������g�|�]}�����������������������|���������������S�����visit��.0�childr����rI���s��� ��rJ���� <listcomp>z.TreeRebuilder.visit_module.<locals>.<listcomp>�����'�������?�?�?�E�T�Z�Z��w� '� '�?�?�?rL���)r����) r]���r���r�����postinitrR���r����r����r���r���r����)rI���rM���r����r����r����r\���r����s���` @rJ����visit_modulezTreeRebuilder.visit_module����s����������"�]�]�4�0�0���l��,������� �� �� ��� ���?�?�?�?�?�T�Y�?�?�?��Z�Z��g�6�6�� �� �� �� �� �#�#�G�,�,�,��� ,�t�� ,��"�"�7�+�+�+��rL����ast.argr����nodes.AssignNamec����������������������d�S�r`���r�����rI���rM���ri���s��� rJ���r����zTreeRebuilder.visit����������CrL���� ast.arguments�nodes.Argumentsc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���� ast.Assert�nodes.Assertc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���r0����nodes.AsyncFunctionDefc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��� ������� �CrL����ast.AsyncFor�nodes.AsyncForc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���� ast.Await�nodes.Awaitc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���� ast.AsyncWith�nodes.AsyncWithc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit"��r����rL���� ast.Assign�nodes.Assignc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit&��r����rL���� ast.AnnAssign�nodes.AnnAssignc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit*��r����rL���� ast.AugAssign�nodes.AugAssignc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit.��r����rL���� ast.BinOp�nodes.BinOpc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit2��r����rL���� ast.BoolOp�nodes.BoolOpc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit6��r����rL���� ast.Break�nodes.Breakc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit:��r����rL����ast.Call� nodes.Callc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit>��r����rL���r.����nodes.ClassDefc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitB��r����rL����ast.Continue�nodes.Continuec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitF��r����rL����ast.Compare� nodes.Comparec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitJ��r����rL����ast.comprehension�nodes.Comprehensionc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitN��r����rL���� ast.Delete�nodes.Deletec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitR��r����rL����ast.Dict� nodes.Dictc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitV��r����rL����ast.DictComp�nodes.DictCompc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitZ��r����rL����ast.Expr� nodes.Exprc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit^��r����rL����ast.ExceptHandler�nodes.ExceptHandlerc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitb��r����rL����ast.For� nodes.Forc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitf��r����rL����ast.ImportFrom�nodes.ImportFromc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitj��r����rL���r/����nodes.FunctionDefc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitn��r����rL����ast.GeneratorExp�nodes.GeneratorExpc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitr��r����rL���� ast.Attribute�nodes.Attributec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitv��r����rL���� ast.Global�nodes.Globalc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitz��r����rL����ast.If�nodes.Ifc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit~��r����rL���� ast.IfExp�nodes.IfExpc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.Import�nodes.Importc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.JoinedStr�nodes.JoinedStrc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.FormattedValue�nodes.FormattedValuec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���r���� ast.NamedExpr�nodes.NamedExprc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit�����������rL���)r���� ����ast.ExtSlice�nodes.Subscript�nodes.Tuplec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL���� ast.Indexc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL����ast.keyword� nodes.Keywordc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.Lambda�nodes.Lambdac����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.List� nodes.Listc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.ListComp�nodes.ListCompc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Name�;nodes.Name | nodes.Const | nodes.AssignName | nodes.DelNamec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Nonlocal�nodes.Nonlocalc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Ellipsis�nodes.Constc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL����ast.NameConstantc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL����ast.Strc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL���� ast.Bytesc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL����ast.Numc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL����ast.Constantc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Pass� nodes.Passc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.Raise�nodes.Raisec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.Return�nodes.Returnc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Set� nodes.Setc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.SetComp� nodes.SetCompc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.Slice�nodes.Slicec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���� ast.Subscriptc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Starred� nodes.Starredc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL����ast.Try�"nodes.TryExcept | nodes.TryFinallyc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r����rL���)r��������ast.TryStar� nodes.TryStarc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit���r��rL���� ast.Tuplec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL����ast.UnaryOp� nodes.UnaryOpc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���� ast.While�nodes.Whilec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL����ast.With� nodes.Withc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���� ast.Yield�nodes.Yieldc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���� ast.YieldFrom�nodes.YieldFromc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r����rL���)r���� ���� ast.Match�nodes.Matchc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit��r��rL����ast.match_case�nodes.MatchCasec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit"��r��rL����ast.MatchValue�nodes.MatchValuec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit&��r��rL����ast.MatchSingleton�nodes.MatchSingletonc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit*��� ��������rL����ast.MatchSequence�nodes.MatchSequencec����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit0��r|��rL����ast.MatchMapping�nodes.MatchMappingc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit6��r|��rL����ast.MatchClass�nodes.MatchClassc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit<��r��rL���� ast.MatchStar�nodes.MatchStarc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visit@��r��rL����ast.MatchAs� nodes.MatchAsc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitD��r��rL����ast.MatchOr� nodes.MatchOrc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitH��r��rL����ast.pattern� nodes.Patternc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitL��r��rL����ast.ASTc����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitP��r����rL���c����������������������d�S�r`���r����r����s��� rJ���r����zTreeRebuilder.visitT��r����rL����ast.AST | None� NodeNG | Nonec����������������������|�d�S�|j���������}||�j��������v�r|�j��������|���������}nQ|j��������}dt�������������������������������||�����������������������������������������������z���}t ����������|�|������������}||�j��������|<����|||������������S�)N�visit_)� __class__rE����__name__r+���rb����lowerrs���)rI���rM���ri����cls�visit_method�cls_name� visit_names��� rJ���r����zTreeRebuilder.visitX��s��������<��4��n���$�#�#�#��,�S�1�L�L��|�H�!�H�L�L��8�$D�$D�$J�$J�$L�$L�L�J�"�4��4�4�L�%1�D��c�"��|�D�&�)�)�)rL���� nodes.AssignName | nodes.DelNamec����������������������|�j���������rC|j��������|�j���������d���������v�r/|��������������������������������������������������������|j��������|�������������dS�|j��������sJ��|j��������sJ��|j�����������������������������|j��������|�������������dS�)zASave assignment situation since node.parent is not available yet.rQ���N)rB���r{����root� set_localri���rf���s��� rJ����_save_assignmentzTreeRebuilder._save_assignmente��s���������� 3�$�)�t�/A�"�/E�"E�"E��I�I�K�K�!�!�$�)�T�2�2�2�2�2��;�����9�����K�!�!�$�)�T�2�2�2�2�2rL���c�����������������:�����|�����������������������|||j��������������������S�)z8Visit an arg node by returning a fresh AssName instance.)�visit_assignname�argr����s��� rJ���� visit_argzTreeRebuilder.visit_argn��s�������$�$�T�6�4�8�<�<�<rL���c�����������������|�������d}d}t����������j��������|j��������r|j��������j��������nd|j��������r|j��������j��������nd|����������������fd�|j��������D���������������}���fd�|j��������D���������������}d}d}g�} |j��������r,|j��������j��������}�����������������������|j��������j���������������������}|j��������r,|j��������j��������}�����������������������|j��������j���������������������}t����������r3|j ��������D�]+} | j���������"| j��������j��������| _��������| j��������j��������| _���������,���fd�|j ��������D���������������}���fd�|j ��������D���������������}���fd�|j��������D���������������} ���fd�|j ��������D���������������}g�}t����������r(���fd�|j��������D���������������} ���fd �|j��������D���������������}���fd �|j��������D���������������}���fd�|j ��������D���������������}g�}t����������r���fd�|j��������D���������������}����������������������|||| || |||||||� � ��� ����������j��������sJ��|r�j�����������������������������|��������������|r�j�����������������������������|���������������S�)z<Visit an Arguments node by returning a fresh instance of it.Nc�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>{��s'�������B�B�B�u�� � �5�'�*�*�B�B�BrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>|��s'�������J�J�J�5�D�J�J�u�g�.�.�J�J�JrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s'�������N�N�N�U�d�j�j���0�0�N�N�NrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s'�������P�P�P�e�t�z�z�%��1�1�P�P�PrL���c�����������������F������g�|�]}�����������������������|j�����������������������S�r�����r����� annotation�r����r���r����rI���s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s)�������P�P�P�s�t�z�z�#�.�'�:�:�P�P�PrL���c�����������������F������g�|�]}�����������������������|j�����������������������S�r����r���r���s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s6��������" ��" ��" �47�D�J�J�s�~�w�/�/�" ��" ��" rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s'�������T�T�T�%�4�:�:�e�W�5�5�T�T�TrL���c�����������������F������g�|�]}�����������������������|j�����������������������S�r����r���r���s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s6��������'��'��'�8;�� � �3�>�7�3�3�'��'��'rL���c�����������������>������g�|�]}�����������������������|�����������������S���ri�����check_type_commentr����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s9�������� �� �� �?D�D�#�#�E�'�#�:�:� �� �� rL���c�����������������>������g�|�]}�����������������������|�����������������S�r���r���r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s9��������# ��# ��# �?D�D�#�#�E�'�#�:�:�# ��# ��# rL���c�����������������>������g�|�]}�����������������������|�����������������S�r���r���r����s��� ��rJ���r����z1TreeRebuilder.visit_arguments.<locals>.<listcomp>���s<��������(��(��(����'�'��g�'�>�>�(��(��(rL���) �args�defaults� kwonlyargs�posonlyargs�kw_defaultsr����kwonlyargs_annotations�posonlyargs_annotations�varargannotation�kwargannotation�type_comment_args�type_comment_kwonlyargs�type_comment_posonlyargs)r���r����varargr����kwargr���r���r����r���r���r���rm���rr���r���r���r���r����ri���r���)rI���rM���ri���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r����s���` @rJ����visit_argumentszTreeRebuilder.visit_argumentsr��sU�������!�� ���/�#�{�4�D�K�O�O��"�j�2�D�J�N�N�d�� �� �� �C�B�B�B�B�� �B�B�B��J�J�J�J�J�D�M�J�J�J��*.��)-��.0���;�� K��[�_�F�#�z�z�$�+�*@�'�J�J���:�� I��J�N�E�"�j�j���)>��H�H�O��� G����� G�� G���>�-�%(�^�%>�C�N�),��)F�C�&��N�N�N�N�N�d�o�N�N�N� �P�P�P�P�P�t�?O�P�P�P��P�P�P�P�P�d�i�P�P�P��" ��" ��" ��" ��" �;?�?�" ��" ��" ���8:���� �T�T�T�T�T�4�CS�T�T�T�K�'��'��'��'��'�?C�?O�'��'��'�#� �� �� �� �� �HL� � �� �� ��# ��# ��# ��# ��# �HL��# ��# ��# ���9;� ��� �(��(��(��(��(�!�-�(��(��(�$� � �����!�#�#�#�#9�$;�-�+�/�$;�%=�� �� �� �� � ��~������ 6��N�$�$�V�W�5�5�5��� 5��N�$�$�U�G�4�4�4��rL���c����������� ������.����t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}d}|j��������r|����������������������|j��������|������������}|���������������������|����������������������|j��������|������������|�������������|S�)z8Visit a Assert node by returning a fresh instance of it.rm���Nrr����rq���rY���rm���rr���ri���) r����Assertrq���rY���rs����msgr����r�����test)rI���rM���ri���r����r���s��� rJ����visit_assertzTreeRebuilder.visit_assert���s��������,��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ���"���8�� 0��*�*�T�X�w�/�/�C�������D�I�w�7�7��=�=�=��rL����Hast.Assign | ast.arg | ast.For | ast.AsyncFor | ast.With | ast.AsyncWith�Znodes.Assign | nodes.Arguments | nodes.For | nodes.AsyncFor | nodes.With | nodes.AsyncWithc�����������������"����t����������|dd�������������}|sd�S� �|�j�����������������������������|������������}n#�t����������$�r�Y�d�S�w�xY�w|j��������sd�S�|����������������������|j��������d���������|�������������}t ����������|t����������j��������������������sd�S�|j ��������S�)N�type_commentr���r���) rs���rF����parse�SyntaxErrorrR���r����rS���r���rT���rU���)rI���rM���ri���r����type_comment_ast�type_objects��� rJ���r���z TreeRebuilder.check_type_comment���s���������t�^�T�:�:���� ��4� �#�2�8�8��F�F������ �� �� ��4�4� ����� �$�� ��4��j�j�!1�!6�q�!9�&�j�I�I���+�u�z�2�2�� ��4�� � s����2�� A��A��&ast.FunctionDef | ast.AsyncFunctionDef�)tuple[NodeNG | None, list[NodeNG]] | Nonec�������������������������t����������|dd�������������}|sd�S� �t����������|������������}n#�t����������$�r�Y�d�S�w�xY�w|sd�S�d�}���fd�|j��������pg�D���������������}|j��������r�����������������������|j���������������������}||fS�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r����)r�����elemri���rI���s��� ��rJ���r����z=TreeRebuilder.check_function_type_comment.<locals>.<listcomp>��s4��������" ��" ��" �)-�D�J�J�t�V�$�$�" ��" ��" rL���)rs���r���r����argtypes�returnsr����)rI���rM���ri���r���r���r���r���s���` ` rJ����check_function_type_commentz)TreeRebuilder.check_function_type_comment���s�����������t�^�T�:�:���� ��4� �:�<�H�H������ �� �� ��4�4� ����� �� ��4�!%��" ��" ��" ��" ��" �2B�2K�2Q�r�" ��" ��" ����#�� C��j�j�!1�!9�6�B�B�G��� � s����)�� 7�7c�����������������D�����|�����������������������t����������j��������||������������S�r`���)�_visit_functiondefr���rw���r����s��� rJ����visit_asyncfunctiondefz$TreeRebuilder.visit_asyncfunctiondef��s��������&�&�u�'=�t�V�L�L�LrL���c�����������������D�����|�����������������������t����������j��������||������������S�r`���)� _visit_forr����AsyncForr����s��� rJ����visit_asyncforzTreeRebuilder.visit_asyncfor��s���������u�~�t�V�<�<�<rL���c����������� ������������t����������j��������|j��������|j��������t ����������|dd�������������t ����������|dd�������������|�������������}|���������������������|����������������������|j��������|��������������������������|S�)Nrm���rr���r����rU���)r����Awaitrq���rY���rs���r����r����rU����rI���rM���ri���r����s��� rJ����visit_awaitzTreeRebuilder.visit_await��sr�������+��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���t�z�z�$�*�g�>�>��?�?�?��rL���c�����������������D�����|�����������������������t����������j��������||������������S�r`���)�_visit_withr���� AsyncWithr����s��� rJ����visit_asyncwithzTreeRebuilder.visit_asyncwith ��s������������v�>�>�>rL���c����������� ������@�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������������������������������|��������������}�������������������������fd�|j��������D��������������������������������������|j ���������������������|���������������S�)z8Visit a Assign node by returning a fresh instance of it.rm���Nrr���r���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z.TreeRebuilder.visit_assign.<locals>.<listcomp>/��s'�������J�J�J�E�T�Z�Z��w�/�/�J�J�JrL���)�targetsrU����type_annotation) r����Assignrq���rY���rs���r���r����r���r����rU���)rI���rM���ri���r���r����s���` @rJ����visit_assignzTreeRebuilder.visit_assign#��s����������,��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ����1�1�$�w�1�G�G�����J�J�J�J�J�T�\�J�J�J��*�*�T�Z��1�1�+�� �� �� �� � ��rL���c����������� ������Z����t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j��������|������������|j ��������|����������������������|j ��������|��������������������������|S�)z<Visit an AnnAssign node by returning a fresh instance of it.rm���Nrr���r���)�targetr����simplerU���)r���� AnnAssignrq���rY���rs���r����r����r���r���r���rU���r���s��� rJ����visit_annassignzTreeRebuilder.visit_annassign5��s��������/��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����:�:�d�k�7�3�3��z�z�$�/�7�;�;��;��*�*�T�Z��1�1� � �� �� �� ���rL���� node_namec����������������������d�S�r`���r�����rI���rM���ri���r���s��� rJ���r���zTreeRebuilder.visit_assignnameG��� ������� �rL���c����������������������d�S�r`���r����r���s��� rJ���r���zTreeRebuilder.visit_assignnameM��s�������rL����nodes.AssignName | Nonec����������������������|�dS�t����������j��������||j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|����������������������|�������������|S�)z_Visit a node and return a AssignName node. Note: Method not called by 'visit' Nrm���rr����r{���rq���rY���rm���rr���ri���)r���� AssignNamerq���rY���rs���r���)rI���rM���ri���r���r����s��� rJ���r���zTreeRebuilder.visit_assignnameQ��sp����������4��"���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���g�&�&�&��rL���c�����������������d����t����������j��������|�j��������j��������t ����������|j�����������������������������dz���|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|� ��������������������|�� ��������������������|j��������|������������|�� ��������������������|j��������|�������������������������|S�)z;Visit a AugAssign node by returning a fresh instance of it.�=rm���Nrr�����oprq���rY���rm���rr���ri���) r���� AugAssignrF����bin_op_classesrc���r��rq���rY���rs���r����r����r���rU���r���s��� rJ����visit_augassignzTreeRebuilder.visit_augassignf��s��������/��"�1�$�t�w�-�-�@�3�F��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�{�G�,�,�d�j�j���W�.M�.M� �� �� ���rL���c�����������������^����t����������j��������|�j��������j��������t ����������|j�����������������������������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|� ��������������������|�� ��������������������|j��������|������������|�� ��������������������|j��������|�������������������������|S�)z7Visit a BinOp node by returning a fresh instance of it.rm���Nrr���r��) r����BinOprF���r ��rc���r��rq���rY���rs���r����r�����left�rightr���s��� rJ����visit_binopzTreeRebuilder.visit_binopv��s��������+��"�1�$�t�w�-�-�@��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�y�'�*�*�D�J�J�t�z�7�,K�,K� �� �� ���rL���c����������������� �������t����������j����������j��������j��������t ����������|j�����������������������������|j��������|j��������t����������|dd������������t����������|dd������������|���������������� �����������������������fd�|j ��������D�����������������������������S�)z8Visit a BoolOp node by returning a fresh instance of it.rm���Nrr���r��c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z.TreeRebuilder.visit_boolop.<locals>.<listcomp>����'�������N�N�N��$�*�*�U�G�4�4�N�N�NrL���)r����BoolOprF����bool_op_classesrc���r��rq���rY���rs���r�����valuesr���s���` @rJ����visit_boolopzTreeRebuilder.visit_boolop���s����������,��"�2�4���=�=�A��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���N�N�N�N�N�$�+�N�N�N�O�O�O��rL���c����������� �����������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������S�)z7Visit a Break node by returning a fresh instance of it.rm���Nrr���r���)r����Breakrq���rY���rs���r����s��� rJ����visit_breakzTreeRebuilder.visit_break���sG�������{��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� �� rL���c����������� ������6�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�|j��������D������������������fd�|j ��������D������������������������������S�)z:Visit a CallFunc node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z,TreeRebuilder.visit_call.<locals>.<listcomp>����'�������D�D�D��$�*�*�U�G�,�,�D�D�DrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z,TreeRebuilder.visit_call.<locals>.<listcomp>���s'�������L�L�L�U�d�j�j���0�0�L�L�LrL���)�funcr����keywords) r����Callrq���rY���rs���r����r����r��r���r ��r���s���` @rJ���� visit_callzTreeRebuilder.visit_call���s����������*��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ������D�I�w�/�/�D�D�D�D�D�$�)�D�D�D�L�L�L�L�L�d�m�L�L�L�� �� �� �� � ��rL���T�newstylec����������� ������|�������������������������������|������������\��}}t����������j��������|j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|��������������d}|j��������D�]*}|j��������dk����r��� ��������������������|�������������j ��������}�n�+�����������������������|�������������}�������������������������fd�|j ��������D������������������fd�|j��������D���������������|||���fd�|j��������D��������������������������������������|���������������� ��������������������|�������������� ���������������������������������������������������S�) z(Visit a ClassDef node to become astroid.rm���Nrr���r��� metaclassc�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z0TreeRebuilder.visit_classdef.<locals>.<listcomp>���s'�������@�@�@�E�T�Z�Z��w� '� '�@�@�@rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z0TreeRebuilder.visit_classdef.<locals>.<listcomp>���r����rL���c�����������������R������g�|�]#}|j���������d�k����� ����������������������|���������������$S�)r%��)r���r����)r�����kwdr����rI���s��� ��rJ���r����z0TreeRebuilder.visit_classdef.<locals>.<listcomp>���s>�������� �� �� ���7�k�)�)��� � �3��(�(�)�)�)rL���)�positionr����)r]���r����ClassDefr{���rq���rY���rs���r ��r���r����rU����visit_decoratorsr�����basesrR���r����r����) rI���rM���ri���r#��r\���r%��r)���� decoratorsr����s ���` @rJ����visit_classdefzTreeRebuilder.visit_classdef���s���������"�]�]�4�0�0���l��.����;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ���� ��}�� �� �G��{�k�)�)� �J�J�w��8�8�>� ����*���*�*�4��9�9� ����@�@�@�@�@�T�Z�@�@�@�?�?�?�?�?�T�Y�?�?�?���� �� �� �� �� ��=� �� �� � ��,�,�T�7�;�;��Z�Z��g�6�6�� �� �� �� �� �#�#�G�,�,�,��rL���c����������� �����������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������S�)z:Visit a Continue node by returning a fresh instance of it.rm���Nrr���r���)r����Continuerq���rY���rs���r����s��� rJ����visit_continuezTreeRebuilder.visit_continue���sG�������~��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� �� rL���c����������� ������4�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�t����������|j ��������|j ��������������������D�����������������������������S�)z9Visit a Compare node by returning a fresh instance of it.rm���Nrr���r���c�����������������p������g�|�]2\��}}�j���������j��������|j���������������������������������������|�������������f��3S�r����)rF����cmp_op_classesr���r����)r����r���exprr����rI���s��� ��rJ���r����z/TreeRebuilder.visit_compare.<locals>.<listcomp>���sR�������� �� �� � ��R����'�6�r�|�D��J�J�t�W�-�-�� �� �� rL���)r����Comparerq���rY���rs���r����r����r���zip�ops�comparatorsr���s���` @rJ���� visit_comparezTreeRebuilder.visit_compare���s����������-��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�y�'�*�*� �� �� �� �� � �#&�d�h��0@�"A�"A� �� �� � �� �� ���rL���c������������������������t����������j��������|����������������������������������������������������������|j��������������������������������������������|j������������������������fd�|j��������D���������������t����������|j����������������������������������S�)z?Visit a Comprehension node by returning a fresh instance of it.c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z5TreeRebuilder.visit_comprehension.<locals>.<listcomp>���s'�������>�>�>�E�T�Z�Z��w� '� '�>�>�>rL���) r���r ���r����r����r����iter�ifsr�����is_asyncr���s���` @rJ����visit_comprehensionz!TreeRebuilder.visit_comprehension���s�����������%�f�-�-������J�J�t�{�G�,�,��J�J�t�y�'�*�*�>�>�>�>�>�T�X�>�>�>������ �� �� ���rL����nodes.Decorators | Nonec�����������������J�������|j���������sdS�t����������j��������dk����r7|j���������d���������j��������}|j���������d���������j��������}|j���������d���������j��������}n|j��������}d}d}t ����������j��������||j��������|||���������������� �����������������������fd�|j���������D�����������������������������S�)zqVisit a Decorators node by returning a fresh instance of it. Note: Method not called by 'visit' Nr���r���rQ���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z2TreeRebuilder.visit_decorators.<locals>.<listcomp> ��s'�������V�V�V��$�*�*�U�G�4�4�V�V�VrL���) �decorator_list�sys�version_inforq���rm���rr���r���� DecoratorsrY���r����)rI���rM���ri���rq���rm���rr���r����s���` @rJ���r,��zTreeRebuilder.visit_decorators��s�����������"�� ��4����v�%�%��(��+�2�F��,�R�0�;�J�!�0��4�C�N�N��[�F��J�!�N��"����!�)�� �� �� ��� ���V�V�V�V�V�$�BU�V�V�V�W�W�W��rL���c����������� ���������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|���������������������������������������fd�|j��������D�����������������������������S�)z8Visit a Delete node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z.TreeRebuilder.visit_delete.<locals>.<listcomp>-��s'�������O�O�O��$�*�*�U�G�4�4�O�O�OrL���)r����Deleterq���rY���rs���r����r���r���s���` @rJ����visit_deletezTreeRebuilder.visit_delete#��s{���������,��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���O�O�O�O�O�$�,�O�O�O�P�P�P��rL����,Generator[tuple[NodeNG, NodeNG], None, None]c��������������#���6��K����t����������|j��������|j��������������������D�]{\��}}|����������������������||������������}|sBt ����������j��������|j��������|j��������t����������|dd�������������t����������|dd�������������|�������������}n|����������������������||������������}||fV����|d�S��Nrm���rr���r���) r8���keysr��r����r���� DictUnpackrq���rY���rs���)rI���rM���ri���r�����keyrU���� rebuilt_value�rebuilt_keys��� rJ����_visit_dict_itemszTreeRebuilder._visit_dict_items0��s�������������d�i���5�5�� -�� -�J�C�� �J�J�u�g�6�6�M��� 7�#�.�(�/�,�7�&�}�l�D�I�I�#*�=�:J�D�#Q�#Q�!� ��������#�j�j��g�6�6���}�,�,�,�,�,� -�� -rL���c����������� �����������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}t����������|����������������������|||������������������������}|���������������������|�������������|S�)z6Visit a Dict node by returning a fresh instance of it.rm���Nrr���r���)r����Dictrq���rY���rs����listrU��r����)rI���rM���ri���r�����itemss��� rJ���� visit_dictzTreeRebuilder.visit_dictD��s��������*��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ���TX��"�"�4���9�9�T ��T ��� ��������rL���c����������� ������B�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j��������������������������������������������|j������������������������fd�|j ��������D�����������������������������S�)z:Visit a DictComp node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z0TreeRebuilder.visit_dictcomp.<locals>.<listcomp>a���'�������E�E�E�E�T�Z�Z��w� '� '�E�E�ErL���) r����DictComprq���rY���rs���r����r����rR��rU���� generatorsr���s���` @rJ����visit_dictcompzTreeRebuilder.visit_dictcompT��s����������.��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�x��)�)��J�J�t�z�7�+�+�E�E�E�E�E�T�_�E�E�E� �� �� � ��rL���c����������� ������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|���������������������|����������������������|j��������|�������������������������|S�)z6Visit a Expr node by returning a fresh instance of it.rm���Nrr���r���)r���rT���rq���rY���rs���r����r����rU���r���s��� rJ���� visit_exprzTreeRebuilder.visit_expre��so�������*��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ������D�J��8�8�9�9�9��rL���c����������� ������D�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j��������������������������������������������|�|j �����������������������fd�|j ��������D�����������������������������S�)z@Visit an ExceptHandler node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z5TreeRebuilder.visit_excepthandler.<locals>.<listcomp>���r����rL���)r���r!���rq���rY���rs���r����r����rc���r���r{���rR���r���s���` @rJ����visit_excepthandlerz!TreeRebuilder.visit_excepthandlerr��s�����������%��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�y�'�*�*��!�!�$����;�;�?�?�?�?�?�T�Y�?�?�?� �� �� � ��rL���r����type[nodes.For]c����������������������d�S�r`���r�����rI���r���rM���ri���s��� rJ���r���zTreeRebuilder._visit_for���r���rL����type[nodes.AsyncFor]c����������������������d�S�r`���r����rh��s��� rJ���r���zTreeRebuilder._visit_for���r���rL����type[_ForT]�ast.For | ast.AsyncForr2���c����������� ������:�������|j���������}t����������rPt����������sIt����������|t����������j��������������������r/��j��������r(��j��������|j��������dz ��������������������������������d������������}�||j��������|t����������|dd������������t����������|dd������������|����������������� ��������������������|��������������}���������������������������������������������|j ��������������������������������������������|j������������������������fd�|j��������D������������������fd �|j��������D���������������|� ��������������S�)z5Visit a For node by returning a fresh instance of it.rP���rn���rm���Nrr���r���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z,TreeRebuilder._visit_for.<locals>.<listcomp>���r��rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z,TreeRebuilder._visit_for.<locals>.<listcomp>���s'�������H�H�H�5�D�J�J�u�g�.�.�H�H�HrL���)r���r>��rR����orelser���)rY���r���r���rS����astr���rA���rq����indexrs���r���r����r����r���r>��rR���rp��)rI���r���rM���ri���rY���r���r����s���` @rJ���r���zTreeRebuilder._visit_for���s;���������_� ��� D�9�� D��D�#�,�)G�)G�� D�D�J�� D���D�K�!�O�4�:�:�7�C�C�J��#��;�!��t�\�4�8�8�"�4�)9�4�@�@�� �� �� ����1�1�$�w�1�G�G������:�:�d�k�7�3�3����D�I�w�/�/�D�D�D�D�D�$�)�D�D�D�H�H�H�H�H�D�K�H�H�H�+�� �� �� �� ���rL���c�����������������D�����|�����������������������t����������j��������||������������S�r`���)r���r����Forr����s��� rJ���� visit_forzTreeRebuilder.visit_for���s���������u�y�$��7�7�7rL���c����������� �����������d��|j���������D���������������}t����������j��������|j��������pd||j��������pd|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|�j��������� ��������������������|�������������|S�)z=Visit an ImportFrom node by returning a fresh instance of it.c�����������������*�����g�|�]}|j���������|j��������f��S�r�����r{����asname�r�����aliass��� rJ���r����z2TreeRebuilder.visit_importfrom.<locals>.<listcomp>����!������D�D�D��%�*�e�l�+�D�D�DrL�����Nrm���rr���)�fromname�names�levelrq���rY���rm���rr���ri���) r��r���� ImportFromrG���r���rq���rY���rs���rC����append)rI���rM���ri���r��r����s��� rJ����visit_importfromzTreeRebuilder.visit_importfrom���s��������E�D���D�D�D���"��[�&�B���*�$���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ��&�&�w�/�/�/��rL����type[nodes.FunctionDef]c����������������������d�S�r`���r����rh��s��� rJ���r���z TreeRebuilder._visit_functiondef���r���rL����type[nodes.AsyncFunctionDef]c����������������������d�S�r`���r����rh��s��� rJ���r���z TreeRebuilder._visit_functiondef���s ������� �rL����type[_FunctionT]r1���c����������� ������"���������j������������������������������i�������������������������������������|������������\��}}|j��������}t����������r|j��������r|j��������d���������j��������}�||j��������||j��������t����������|dd������������t����������|dd������������|����������������� ��������������������|�������������}|j ��������r�����������������������|j ���������������������}nd}dx}} �����������������������|�������������} | r| \��} }�� �������������������������������������������|j������������������������fd�|j��������D���������������||| |�����������������������|������������������������������������|������������������������������������������������������������������j����������������������������������������������S�)z,Visit an FunctionDef node to become astroid.r���rm���Nrr���r��c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z4TreeRebuilder._visit_functiondef.<locals>.<listcomp>���r��rL���)r���rR���r.��r����type_comment_returnsr���r*��r����)rB���r���r]���rq���r���rE��r{���rY���rs���r,��r���r����r���r����r���rR���r����r�����pop)rI���r���rM���ri���r\���rq���r.��r���r���r����type_comment_annotationr����s���` @rJ���r���z TreeRebuilder._visit_functiondef���s��������� ��!�!�"�%�%�%�!�]�]�4�0�0���l������ 3��,�� 3���(��+�2�F��#�������t�\�4�8�8�"�4�)9�4�@�@�� �� �� ����*�*�4��9�9� ��<�� ��j�j���w�7�7�G�G��G�37�7��0�"&�"B�"B�4��"Q�"Q��"�� N�6M�3� �"3�������D�I�w�/�/�D�D�D�D�D�$�)�D�D�D�!��!5�/��,�,�T�7�;�;��Z�Z��g�6�6�� �� �� �� �� �#�#�G�,�,�,����� � � ��rL���c�����������������D�����|�����������������������t����������j��������||������������S�r`���)r���r���rx���r����s��� rJ����visit_functiondefzTreeRebuilder.visit_functiondef ��s��������&�&�u�'8�$��G�G�GrL���c����������� �������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�|j��������D�����������������������������S�)z>Visit a GeneratorExp node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z4TreeRebuilder.visit_generatorexp.<locals>.<listcomp>��r]��rL���) r����GeneratorExprq���rY���rs���r����r�����eltr_��r���s���` @rJ����visit_generatorexpz TreeRebuilder.visit_generatorexp��s�����������$��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�x��)�)�E�E�E�E�E�T�_�E�E�E� �� �� ���rL����2nodes.Attribute | nodes.AssignAttr | nodes.DelAttrc����������������������|�����������������������|������������}|t����������j��������k����rHt����������j��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}n�|t����������j ��������k����r|t����������j ��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}t����������|t����������j��������������������s|�j �����������������������������|�������������nGt����������j��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|���������������������|����������������������|j��������|�������������������������|S�)z<Visit an Attribute node by returning a fresh instance of it.rm���Nrr���)�attrnamerq���rY���rm���rr���ri���)rg���r����Delr����DelAttr�attrrq���rY���rs����Store� AssignAttrrS���r!���rD���r���� Attributer����r����rU����rI���rM���ri����contextr����s��� rJ����visit_attributezTreeRebuilder.visit_attribute ��si�������#�#�D�)�)���g�k�!�!���m����{��?�"�4��t�<�<�&�t�-=�t�D�D�������G�G���� � %� %��&����{��?�"�4��t�<�<�&�t�-=�t�D�D�������G���f�e�&9�:�:�� 6���%�,�,�W�5�5�5���o����{��?�"�4��t�<�<�&�t�-=�t�D�D�������G�� ������D�J��8�8�9�9�9��rL���c���������������������t����������j��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|�j��������r>|j��������D�]6}|�j��������d������������������������������|g����������������������������������|��������������7|S�)z&Visit a Global node to become astroid.rm���Nrr����r��rq���rY���rm���rr���ri���rQ���) r����Globalr��rq���rY���rs���rB���� setdefaultr���)rI���rM���ri���r����r{���s��� rJ����visit_globalzTreeRebuilder.visit_globalO��s��������,��*��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ������ L�� �� L�� L���"�2�&�1�1�$��;�;�B�B�7�K�K�K�K��rL���c����������� ������4�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�|j��������D������������������fd�|j ��������D�����������������������������S�)z5Visit an If node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z*TreeRebuilder.visit_if.<locals>.<listcomp>k��r����rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z*TreeRebuilder.visit_if.<locals>.<listcomp>l���'�������A�A�A�E�T�Z�Z��w� '� '�A�A�ArL���) r����Ifrq���rY���rs���r����r����r���rR���rp��r���s���` @rJ����visit_ifzTreeRebuilder.visit_if_��s����������(��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�y�'�*�*�?�?�?�?�?�T�Y�?�?�?�A�A�A�A�A�T�[�A�A�A� �� �� � ��rL���c����������� ������L����t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j��������|������������|����������������������|j ��������|�������������������������|S�)z7Visit a IfExp node by returning a fresh instance of it.rm���Nrr���r���) r����IfExprq���rY���rs���r����r����r���rR���rp��r���s��� rJ����visit_ifexpzTreeRebuilder.visit_ifexpp��s��������+��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�y�'�*�*��J�J�t�y�'�*�*��J�J�t�{�G�,�,� �� �� � ��rL���c�����������������,����d��|j���������D���������������}t����������j��������||j��������|j��������t����������|dd������������t����������|dd������������|�������������}|j���������D�]8\��}}|p|}|���������������������|���������������������d������������d���������|��������������9|S�)z8Visit a Import node by returning a fresh instance of it.c�����������������*�����g�|�]}|j���������|j��������f��S�r����rx��rz��s��� rJ���r����z.TreeRebuilder.visit_import.<locals>.<listcomp>���r|��rL���rm���Nrr���r����.r���)r��r����Importrq���rY���rs���r���r@���)rI���rM���ri���r��r����r{���ry��s��� rJ����visit_importzTreeRebuilder.visit_import���s�������D�D���D�D�D���,���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ���$�M�� :�� :�L�D�&��>�T�D����T�Z�Z��_�_�Q�/��9�9�9�9��rL���c����������� ���������������t����������j��������|j��������|j��������t ����������|dd�������������t ����������|dd�������������|���������������������������������������fd�|j��������D�����������������������������S�)Nrm���rr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_joinedstr.<locals>.<listcomp>���r��rL���)r���� JoinedStrrq���rY���rs���r����r��r���s���` @rJ����visit_joinedstrzTreeRebuilder.visit_joinedstr���s{���������/��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���N�N�N�N�N�$�+�N�N�N�O�O�O��rL���c����������� ������&����t����������j��������|j��������|j��������t ����������|dd�������������t ����������|dd�������������|�������������}|���������������������|����������������������|j��������|������������|j��������|����������������������|j ��������|��������������������������|S�)Nrm���rr���r���)rU���� conversion�format_spec) r����FormattedValuerq���rY���rs���r����r����rU���r���r���r���s��� rJ����visit_formattedvaluez"TreeRebuilder.visit_formattedvalue���s���������&��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����*�*�T�Z��1�1���� � �4�#3�W�=�=�� �� �� �� � ��rL���c����������� ����������t����������j��������|j��������|j��������t ����������|dd�������������t ����������|dd�������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j��������|�������������������������|S�rO��) r���� NamedExprrq���rY���rs���r����r����r���rU���r���s��� rJ����visit_namedexprzTreeRebuilder.visit_namedexpr���s���������o��{��?�"�4��t�<�<�&�t�-=�t�D�D�� �����G�� ���� � �4�;��0�0�$�*�*�T�Z��2Q�2Q� �� �� ���NrL���c�������������������������t����������j��������t����������j��������|���������������������������������������fd�|j��������D�����������������������������S�)z>Visit an ExtSlice node by returning a fresh instance of Tuple.)rd���ri���c�����������������<������g�|�]}�����������������������|���������������S�r����r����)r�����dimr����rI���s��� ��rJ���r����z0TreeRebuilder.visit_extslice.<locals>.<listcomp>���s'�������L�L�L�3�d�j�j��g�6�6�L�L�LrL���)r����Tupler���re���r�����dimsr���s���` @rJ����visit_extslicezTreeRebuilder.visit_extslice���sO�������� ��k�g�l�6�B�B�B�G����L�L�L�L�L�$�)�L�L�L�M�M�M��NrL���c�����������������8�����|�����������������������|j��������|������������S�)z;Visit a Index node by returning a fresh instance of NodeNG.)r����rU���r����s��� rJ����visit_indexzTreeRebuilder.visit_index���s�������:�:�d�j�&�1�1�1rL���c���������������������t����������j��������|j��������t����������|dd������������t����������|dd������������t����������|dd������������t����������|dd������������|�������������}|���������������������|����������������������|j��������|�������������������������|S�)z9Visit a Keyword node by returning a fresh instance of it.rq���NrY���rm���rr���)r���rq���rY���rm���rr���ri���)r���r"���r���rs���r����r����rU���r���s��� rJ���� visit_keywordzTreeRebuilder.visit_keyword���s��������-����4��4�0�0��t�\�4�8�8��t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ������D�J��8�8�9�9�9��rL���c����������� ����������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j��������|�������������������������|S�)z8Visit a Lambda node by returning a fresh instance of it.rm���Nrr���r���) r����Lambdarq���rY���rs���r����r����r���rR���r���s��� rJ����visit_lambdazTreeRebuilder.visit_lambda���s��������,��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ������D�I�w�7�7����D�I�w�9W�9W�X�X�X��rL���c������������������������������������������������|������������}t����������j��������||j��������|j��������t����������|dd������������t����������|dd������������|���������������������������������������fd�|j��������D�����������������������������S�)z6Visit a List node by returning a fresh instance of it.rm���Nrr����rd���rq���rY���rm���rr���ri���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z,TreeRebuilder.visit_list.<locals>.<listcomp>����'�������L�L�L��$�*�*�U�G�4�4�L�L�LrL���)rg���r����Listrq���rY���rs���r�����eltsr���s���` @rJ���� visit_listzTreeRebuilder.visit_list���s����������#�#�D�)�)���*���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���L�L�L�L�L�$�)�L�L�L�M�M�M��rL���c����������� �������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�|j��������D�����������������������������S�)z:Visit a ListComp node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z0TreeRebuilder.visit_listcomp.<locals>.<listcomp>��r]��rL���) r����ListComprq���rY���rs���r����r����r���r_��r���s���` @rJ����visit_listcompzTreeRebuilder.visit_listcomp���s����������.��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�x��)�)�E�E�E�E�E�T�_�E�E�E� �� �� ���rL����-nodes.Name | nodes.AssignName | nodes.DelNamec����������������������|�����������������������|������������}|t����������j��������k����rHt����������j��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}n�|t����������j ��������k����rHt����������j ��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}nGt����������j��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|t����������j��������t����������j ��������fv�rFt����������t����������t����������j ��������t����������j��������f���������|������������}|����������������������|�������������|S�)z6Visit a Name node by returning a fresh instance of it.rm���Nrr���r��)rg���r���r���r����DelName�idrq���rY���rs���r���r���Namer���r���r���r���s��� rJ���r���zTreeRebuilder.visit_name��s\�������#�#�D�)�)���g�k�!�!��m��W��{��?�"�4��t�<�<�&�t�-=�t�D�D�������G�G���� � %� %��&��W��{��?�"�4��t�<�<�&�t�-=�t�D�D�������G�G���j��W��{��?�"�4��t�<�<�&�t�-=�t�D�D�������G���w�{�G�M�2�2�2��5��!1�5�=�!@�A�7�K�K�G��!�!�'�*�*�*��rL���c����������������������t����������j��������|j��������|j��������|j��������t����������|dd������������t����������|dd������������|�������������S�)z6Visit a Nonlocal node and return a new instance of it.rm���Nrr���r���)r����Nonlocalr��rq���rY���rs���r����s��� rJ����visit_nonlocalzTreeRebuilder.visit_nonlocal6��sL�������~��*��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� �� rL���c����������������������t����������j��������|j��������|j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������S�)z=Visit a Constant node by returning a fresh instance of Const.rm���Nrr���)rU����kindrq���rY���rm���rr���ri���)r����ConstrU���r���rq���rY���rs���r����s��� rJ����visit_constantzTreeRebuilder.visit_constantB��sQ�������{��*����;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� �� rL���c�����������������P�����t����������j��������t����������|j��������|j��������|�������������S�)z>Visit an Ellipsis node by returning a fresh instance of Const.)rU���rq���rY���ri���)r���r����Ellipsisrq���rY���r����s��� rJ����visit_ellipsiszTreeRebuilder.visit_ellipsisQ��s+�������;���{��?�� ������ rL���c�����������������N�����t����������j��������|j��������|j��������|j��������|������������S�r`���)r���r���rU���rq���rY���r����s��� rJ����visit_nameconstantz TreeRebuilder.visit_nameconstantZ��s*��������;�� ������ ���� rL����ast.Str | ast.Bytesc�����������������N�����t����������j��������|j��������|j��������|j��������|������������S�)zAVisit a String/Bytes node by returning a fresh instance of Const.)r���r����srq���rY���r����s��� rJ���� visit_strzTreeRebuilder.visit_stre���(�������;�������� ���� rL���c�����������������N�����t����������j��������|j��������|j��������|j��������|������������S�)z8Visit a Num node by returning a fresh instance of Const.)r���r����nrq���rY���r����s��� rJ���� visit_numzTreeRebuilder.visit_nump��r���rL���c����������� �����������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������S�)z6Visit a Pass node by returning a fresh instance of it.rm���Nrr���r���)r����Passrq���rY���rs���r����s��� rJ���� visit_passzTreeRebuilder.visit_passy��sG�������z��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� �� rL���c����������� ����������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j��������|��������������������������|S�)z7Visit a Raise node by returning a fresh instance of it.rm���Nrr���r���)�exc�cause) r����Raiserq���rY���rs���r����r����r���r���r���s��� rJ����visit_raisezTreeRebuilder.visit_raise���s��������+��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���� � �4�8�W�-�-��*�*�T�Z��1�1�� �� �� �� ���rL���c����������� ������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|j���������.|���������������������|����������������������|j��������|�������������������������|S�)z8Visit a Return node by returning a fresh instance of it.rm���Nrr���r���)r����Returnrq���rY���rs���rU���r����r����r���s��� rJ����visit_returnzTreeRebuilder.visit_return���sw�������,��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ����:�!����T�Z�Z�� �G�<�<�=�=�=��rL���c����������� ���������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|���������������������������������������fd�|j��������D�����������������������������S�)z5Visit a Set node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z+TreeRebuilder.visit_set.<locals>.<listcomp>���r���rL���)r����Setrq���rY���rs���r����r���r���s���` @rJ���� visit_setzTreeRebuilder.visit_set���s{���������)��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���L�L�L�L�L�$�)�L�L�L�M�M�M��rL���c����������� �������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�|j��������D�����������������������������S�)z9Visit a SetComp node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z/TreeRebuilder.visit_setcomp.<locals>.<listcomp>���r]��rL���) r����SetComprq���rY���rs���r����r����r���r_��r���s���` @rJ���� visit_setcompzTreeRebuilder.visit_setcomp���s����������-��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�x��)�)�E�E�E�E�E�T�_�E�E�E� �� �� ���rL���c����������� ������v����t����������j��������t����������|dd������������t����������|dd������������t����������|dd������������t����������|dd������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j��������|������������|����������������������|j��������|��������������������������|S�)z7Visit a Slice node by returning a fresh instance of it.rq���NrY���rm���rr���r���)r����upper�step)r����Slicers���r����r����r���r��r��r���s��� rJ����visit_slicezTreeRebuilder.visit_slice���s��������+��4��4�0�0��t�\�4�8�8��t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����*�*�T�Z��1�1��*�*�T�Z��1�1����D�I�w�/�/�� �� �� �� � ��rL���c�����������������D����|�����������������������|������������}t����������j��������||j��������|j��������t����������|dd������������t����������|dd������������|�������������}|���������������������|����������������������|j��������|������������|����������������������|j ��������|�������������������������|S�)z;Visit a Subscript node by returning a fresh instance of it.rm���Nrr���r���) rg���r���� Subscriptrq���rY���rs���r����r����rU����slicer���s��� rJ����visit_subscriptzTreeRebuilder.visit_subscript���s��������#�#�D�)�)���/���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�z�7�+�+�T�Z�Z�� �G�-L�-L� �� �� ���rL���c���������������������|�����������������������|������������}t����������j��������||j��������|j��������t����������|dd������������t����������|dd������������|�������������}|���������������������|����������������������|j��������|�������������������������|S�)z5Visit a Starred node and return a new instance of it.rm���Nrr���r���) rg���r����Starredrq���rY���rs���r����r����rU���r���s��� rJ���� visit_starredzTreeRebuilder.visit_starred���s��������#�#�D�)�)���-���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ������D�J��8�8�9�9�9��rL����nodes.TryExceptc�������������������������t�����������j��������dk����ri|j��������}|j��������}g�|j���������|j���������|j���������}t����������|������������D�]}|j��������}|j��������}�t����������j ��������|j ��������|j��������|||��������������n t����������j ��������|j ��������|j��������|��������������������������������������fd�|j��������D������������������fd�|j��������D������������������fd�|j��������D�����������������������������S�)z;Visit a TryExcept node by returning a fresh instance of it.r���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_tryexcept.<locals>.<listcomp>��r����rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_tryexcept.<locals>.<listcomp> ��s'�������C�C�C�E�T�Z�Z��w� '� '�C�C�CrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_tryexcept.<locals>.<listcomp> ��r���rL���) rF��rG��rm���rr���rR����handlersrp���reversedr���� TryExceptrq���rY���r����)rI���rM���ri���rm���rr����all_childrenr����r����s���` @rJ����visit_tryexceptzTreeRebuilder.visit_tryexcept���s���������v�%�%����J�!�0�N�*T�D�I�*T�� �*T���*T�L�!�,�/�/�� �� ��"�-� �!&�!5����o��{��?�%�-�������G�G���o�d�k�4�?�F�K�K�G����?�?�?�?�?�T�Y�?�?�?�C�C�C�C�C�T�]�C�C�C�A�A�A�A�A�T�[�A�A�A� �� �� � ��rL����)nodes.TryExcept | nodes.TryFinally | Nonec����������� �������������|j���������r�t����������j��������|j��������|j��������t����������|dd�������������t����������|dd�������������|��������������|j��������r�����������������������|�������������g}n���fd�|j��������D���������������}�� ��������������������|���fd�|j���������D�����������������������������S�|j��������r�����������������������||������������S�d�S�)Nrm���rr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z+TreeRebuilder.visit_try.<locals>.<listcomp> ��s'�������J�J�J�u�� � �5�'�2�2�J�J�JrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r�����r����r���r����rI���s��� ��rJ���r����z+TreeRebuilder.visit_try.<locals>.<listcomp>!��s'�������#S�#S�#S�q�D�J�J�q�'�$:�$:�#S�#S�#SrL���) � finalbodyr���� TryFinallyrq���rY���rs���r��r��rR���r����)rI���rM���ri���rR���r����s���` @rJ���� visit_tryzTreeRebuilder.visit_try��s��������� ��>�� ��&��{��?�"�4��t�<�<�&�t�-=�t�D�D�� �����G���}�� K��,�,�T�7�;�;�<���J�J�J�J�J�� �J�J�J�����T�#S�#S�#S�#S�#S�D�N�#S�#S�#S�T�T�T��N��=�� 6��'�'��f�5�5�5��trL���c����������� ������N�������t����������j��������|j��������|j��������t ����������|dd�������������t ����������|dd�������������|���������������������������������������fd�|j��������D������������������fd�|j��������D������������������fd�|j��������D������������������fd�|j ��������D������������������������������S�) Nrm���rr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r��s��� ��rJ���r����z/TreeRebuilder.visit_trystar.<locals>.<listcomp>0��s'�������<�<�<�Q�$�*�*�Q��(�(�<�<�<rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r��s��� ��rJ���r����z/TreeRebuilder.visit_trystar.<locals>.<listcomp>1��s'�������D�D�D��d�j�j��G�,�,�D�D�DrL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r��s��� ��rJ���r����z/TreeRebuilder.visit_trystar.<locals>.<listcomp>2��s'�������@�@�@�q�D�J�J�q�'�*�*�@�@�@rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r��s��� ��rJ���r����z/TreeRebuilder.visit_trystar.<locals>.<listcomp>3��s'�������F�F�F�!�t�z�z�!�W�-�-�F�F�FrL���)rR���r��rp��r��) r����TryStarrq���rY���rs���r����rR���r��rp��r��r���s���` @rJ���� visit_trystarzTreeRebuilder.visit_trystar'��s����������-��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���<�<�<�<�<�$�)�<�<�<�D�D�D�D�D�d�m�D�D�D�@�@�@�@�@�D�K�@�@�@�F�F�F�F�F�t�~�F�F�F� � �� �� �� ���rL���c������������������������������������������������|������������}t����������j��������||j��������|j��������t����������|dd������������t����������|dd������������|���������������������������������������fd�|j��������D�����������������������������S�)z7Visit a Tuple node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z-TreeRebuilder.visit_tuple.<locals>.<listcomp>C��r���rL���)rg���r���r���rq���rY���rs���r����r���r���s���` @rJ����visit_tuplezTreeRebuilder.visit_tuple7��s����������#�#�D�)�)���+���;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ���L�L�L�L�L�$�)�L�L�L�M�M�M��rL���c���������������������t����������j��������|�j��������j��������|j��������j�����������������|j��������|j��������t����������|dd������������t����������|dd������������|�������������}|� ��������������������|�� ��������������������|j��������|�������������������������|S�)z9Visit a UnaryOp node by returning a fresh instance of it.rm���Nrr���r��)r����UnaryOprF����unary_op_classesr��r���rq���rY���rs���r����r�����operandr���s��� rJ���� visit_unaryopzTreeRebuilder.visit_unaryopF��s��������-��"�3�D�G�4E�F��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ������D�L�'�:�:�;�;�;��rL���c����������� ������4�������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�����������������������������������������������������������|j������������������������fd�|j��������D������������������fd�|j ��������D�����������������������������S�)z7Visit a While node by returning a fresh instance of it.rm���Nrr���r���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z-TreeRebuilder.visit_while.<locals>.<listcomp>`��r����rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z-TreeRebuilder.visit_while.<locals>.<listcomp>a��r���rL���) r����Whilerq���rY���rs���r����r����r���rR���rp��r���s���` @rJ����visit_whilezTreeRebuilder.visit_whileT��s����������+��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ��� ����J�J�t�y�'�*�*�?�?�?�?�?�T�Y�?�?�?�A�A�A�A�A�T�[�A�A�A� �� �� � ��rL����type[nodes.With]c����������������������d�S�r`���r����rh��s��� rJ���r���zTreeRebuilder._visit_withe��r���rL����type[nodes.AsyncWith]c����������������������d�S�r`���r����rh��s��� rJ���r���zTreeRebuilder._visit_withk��r���rL����type[_WithT]�ast.With | ast.AsyncWithr3���c����������� ���������������|j���������}t����������rPt����������sIt����������|t����������j��������������������r/��j��������r(��j��������|j��������dz ��������������������������������d������������}�||j��������|t����������|dd�������������t����������|dd�������������|��������������d���fd ����� ��������������������|��������������}�����������������������fd�|j��������D������������������fd �|j ��������D���������������|���������������S�)NrP���rn���rm���rr���r���r�����ast.withitemr;����tuple[NodeNG, NodeNG | None]c�����������������x�����������������������������|�j���������������������}�����������������������|�j���������������������}||fS�r`���)r�����context_expr� optional_vars)r����r6���varr����rI���s��� ��rJ����visit_childz.TreeRebuilder._visit_with.<locals>.visit_child���s9��������:�:�e�0�'�:�:�D��*�*�U�0�'�:�:�C���9�rL���r���c�����������������&������g�|�] }��|��������������S�r����r����)r����r����rC��s��� �rJ���r����z-TreeRebuilder._visit_with.<locals>.<listcomp>���s#�������>�>�>�%�;�;�u�%�%�>�>�>rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z-TreeRebuilder._visit_with.<locals>.<listcomp>���r��rL���)rY��rR���r���)r����r=��r;���r>��)rY���r���r���rS���rq��r���rA���rq���rr��rs���r���r����rY��rR���)rI���r���rM���ri���rY���r���r����rC��s���` @@rJ���r���zTreeRebuilder._visit_withq��s6����������_� ��� D�9�� D��D�#�-�)H�)H�� D�T�Z�� D���D�K�!�O�4�:�:�7�C�C�J��#��;�!��t�\�4�8�8�"�4�)9�4�@�@�� �� �� �� �� �� �� �� �� �� � ��1�1�$�w�1�G�G�����>�>�>�>�4�:�>�>�>�D�D�D�D�D�$�)�D�D�D�+�� �� �� �� � ��rL���c�����������������D�����|�����������������������t����������j��������||������������S�r`���)r���r����Withr����s��� rJ���� visit_withzTreeRebuilder.visit_with���s���������� �D�&�9�9�9rL���c����������� ������������t����������j��������|j��������|j��������t ����������|dd������������t ����������|dd������������|�������������}|j���������.|���������������������|����������������������|j��������|�������������������������|S�)z7Visit a Yield node by returning a fresh instance of it.rm���Nrr���r���)r����Yieldrq���rY���rs���rU���r����r����r���s��� rJ����visit_yieldzTreeRebuilder.visit_yield���sw�������+��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ����:�!����T�Z�Z�� �G�<�<�=�=�=��rL���c����������� ������������t����������j��������|j��������|j��������t ����������|dd�������������t ����������|dd�������������|�������������}|j���������.|���������������������|����������������������|j��������|�������������������������|S�rO��)r���� YieldFromrq���rY���rs���rU���r����r����r���s��� rJ����visit_yieldfromzTreeRebuilder.visit_yieldfrom���sw�������/��;����t�\�4�8�8�"�4�)9�4�@�@�� �� �� ����:�!����T�Z�Z�� �G�<�<�=�=�=��rL���c��������������������������t����������j��������|j��������|j��������|j��������|j��������|�����������������������������������������������������������|j������������������������fd�|j ��������D������������������������������S�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r����)r�����caser����rI���s��� ��rJ���r����z-TreeRebuilder.visit_match.<locals>.<listcomp>���s'�������H�H�H�T�t�z�z�$��0�0�H�H�HrL���)�subject�cases) r����Matchrq���rY���rm���rr���r����r����rR��rS��r���s���` @rJ����visit_matchzTreeRebuilder.visit_match���s����������k��{��?��?�#�2�������G�� ���� � �4�<��9�9�H�H�H�H�H�T�Z�H�H�H�� �� �� �� ���NrL���c��������������������������t����������j��������|�����������������������������������������������������������|j��������������������������������������������|j������������������������fd�|j��������D������������������������������S�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z1TreeRebuilder.visit_matchcase.<locals>.<listcomp>����'�������H�H�H�U�d�j�j���0�0�H�H�HrL���)�pattern�guardrR���)r���r#���r����r����rY��rZ��rR���r���s���` @rJ����visit_matchcasezTreeRebuilder.visit_matchcase���s~����������o�V�4�4�4�G����� � �4�<��9�9��j�j���W�5�5�H�H�H�H�H�d�i�H�H�H�� �� �� �� � ��NrL���c����������������������t����������j��������|j��������|j��������|j��������|j��������|�������������}|���������������������|����������������������|j��������|��������������������������|S�)Nr���r���) r���� MatchValuerq���rY���rm���rr���r����r����rU���r���s��� rJ����visit_matchvaluezTreeRebuilder.visit_matchvalue���sa��������&��{��?��?�#�2�������G�� ���4�:�:�d�j�'�#B�#B��C�C�C��NrL���c�����������������h�����t����������j��������|j��������|j��������|j��������|j��������|j��������|�������������S�)N)rU���rq���rY���rm���rr���ri���)r����MatchSingletonrU���rq���rY���rm���rr���r����s��� rJ����visit_matchsingletonz"TreeRebuilder.visit_matchsingleton���s;��������'��j��{��?��?�#�2�� ������ rL���c�������������������������t����������j��������|j��������|j��������|j��������|j��������|���������������������������������������fd�|j��������D������������������������������S�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r�����r����rY��r����rI���s��� ��rJ���r����z5TreeRebuilder.visit_matchsequence.<locals>.<listcomp>����'�������T�T�T�7�$�*�*�W�g�6�6�T�T�TrL�����patterns)r���� MatchSequencerq���rY���rm���rr���r����rg��r���s���` @rJ����visit_matchsequencez!TreeRebuilder.visit_matchsequence���sw����������)��{��?��?�#�2�������G�� ���T�T�T�T�T�d�m�T�T�T�� �� �� �� ���NrL���c����������� �������������t����������j��������|j��������|j��������|j��������|j��������|���������������������������������������fd�|j��������D������������������fd�|j��������D������������������ ��������������������|�|j �����������������������������������S�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r����r����s��� ��rJ���r����z4TreeRebuilder.visit_matchmapping.<locals>.<listcomp>���rX��rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����rd��s��� ��rJ���r����z4TreeRebuilder.visit_matchmapping.<locals>.<listcomp>��re��rL���)rP��rg���rest)r����MatchMappingrq���rY���rm���rr���r����rP��rg��r���rm��r���s���` @rJ����visit_matchmappingz TreeRebuilder.visit_matchmapping���s�����������(��{��?��?�#�2�������G�� ���H�H�H�H�H�d�i�H�H�H�T�T�T�T�T�d�m�T�T�T��*�*�4��$�)�D�D�� �� �� �� � ��NrL���c������������������������t����������j��������|j��������|j��������|j��������|j��������|�����������������������������������������������������������|j������������������������fd�|j ��������D���������������|j �����������fd�|j��������D������������������������������S�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r����rd��s��� ��rJ���r����z2TreeRebuilder.visit_matchclass.<locals>.<listcomp>��re��rL���c�����������������<������g�|�]}�����������������������|���������������S�r����r����rd��s��� ��rJ���r����z2TreeRebuilder.visit_matchclass.<locals>.<listcomp>��s4�������������5<�D�J�J�w��0�0�����rL���)r���rg��� kwd_attrs�kwd_patterns)r���� MatchClassrq���rY���rm���rr���r����r����r���rg��rs��rt��r���s���` @rJ����visit_matchclasszTreeRebuilder.visit_matchclass��s�����������&��{��?��?�#�2�������G�� ����J�J�t�x��1�1�T�T�T�T�T�d�m�T�T�T��.����������@D�@Q������ � �� �� �� ���NrL���c����������������������t����������j��������|j��������|j��������|j��������|j��������|�������������}|���������������������|����������������������|||j����������������������������������|S�)Nr���)r{���) r���� MatchStarrq���rY���rm���rr���r����r���r{���r���s��� rJ����visit_matchstarzTreeRebuilder.visit_matchstar��sd��������o��{��?��?�#�2�������G�� ���$�"7�"7��g�t�y�"Q�"Q��R�R�R��NrL���c�����������������������t����������j��������|j��������|j��������|j��������|j��������|�������������}|���������������������|����������������������|j��������|������������|�� ��������������������|||j ����������������������������������|S�)Nr���)rY��r{���)r����MatchAsrq���rY���rm���rr���r����r����rY��r���r{���r���s��� rJ���� visit_matchaszTreeRebuilder.visit_matchas)��s��������m��{��?��?�#�2�������G�� ���� � �4�<��9�9��*�*�4��$�)�D�D�� �� �� �� ���NrL���c�������������������������t����������j��������|j��������|j��������|j��������|j��������|���������������������������������������fd�|j��������D������������������������������S�)Nr���c�����������������<������g�|�]}�����������������������|���������������S�r����r����rd��s��� ��rJ���r����z/TreeRebuilder.visit_matchor.<locals>.<listcomp>B��re��rL���rf��)r����MatchOrrq���rY���rm���rr���r����rg��r���s���` @rJ���� visit_matchorzTreeRebuilder.visit_matchor9��st���������m��{��?��?�#�2�������G�� ���T�T�T�T�T�d�m�T�T�T�� �� �� �� ���NrL���)NN)r6���r���r7���r8���r9���r:���r;���r<���)rM���r,���r;���rN���)rM���r^���r;���r���)rM���rh���ri���rj���r;���rk���)rM���r����r;���r<���)r����r����r;���r<���) rM���r-���r����rX���r����rX���r����r����r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r0���ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r.���ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r/���ri���r���r;���r����)rM���r����ri���r���r;���r����)rM���r��ri���r���r;���r��)rM���r��ri���r���r;���r��)rM���r��ri���r���r;���r��)rM���r ��ri���r���r;���r��)rM���r ��ri���r���r;���r��)rM���r��ri���r���r;���r��)rM���r��ri���r���r;���r��)rM���r��ri���r���r;���r��)rM���r��ri���r��r;���r��)rM���r��ri���r��r;���r���)rM���r!��ri���r���r;���r"��)rM���r$��ri���r���r;���r%��)rM���r'��ri���r���r;���r(��)rM���r*��ri���r���r;���r+��)rM���r-��ri���r���r;���r.��)rM���r0��ri���r���r;���r1��)rM���r3��ri���r���r;���r4��)rM���r6��ri���r���r;���r4��)rM���r8��ri���r���r;���r4��)rM���r:��ri���r���r;���r4��)rM���r<��ri���r���r;���r4��)rM���r>��ri���r���r;���r4��)rM���r@��ri���r���r;���rA��)rM���rC��ri���r���r;���rD��)rM���rF��ri���r���r;���rG��)rM���rI��ri���r���r;���rJ��)rM���rL��ri���r���r;���rM��)rM���rO��ri���r��r;���rP��)rM���rR��ri���r���r;���r��)rM���rT��ri���r���r;���rU��)rM���rW��ri���r���r;���rX��)rM���r[��ri���r���r;���r\��)rM���r^��ri���r���r;���r��)rM���r`��ri���r���r;���ra��)rM���rc��ri���r���r;���rd��)rM���rf��ri���r���r;���rg��)rM���ri��ri���r���r;���rj��)rM���rl��ri���r���r;���rm��)rM���rp��ri���r���r;���rq��)rM���rs��ri���r���r;���rt��)rM���rv��ri���r���r;���rw��)rM���ry��ri���r���r;���rz��)rM���r}��ri���r���r;���r~��)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r<���ri���r���r;���r<���)rM���r���ri���r���r;���r���)rM���r���r;���r<���)rM���r���ri���r���r;���r���)rM���r���ri���r���r;���r���)rM���r���ri���r���r���rX���r;���r����)rM���r���ri���r���r���r<���r;���r<���)rM���r���ri���r���r���r:���r;���r��)T)rM���r.���ri���r���r#��r����r;���r����)rM���rh���ri���r���r;���rB��)rM���r����ri���r���r����r����r;���rM��)r���rf��rM���r����ri���r���r;���r����)r���ri��rM���r����ri���r���r;���r����)r���rk��rM���rl��ri���r���r;���r2���)r���r���rM���r/���ri���r���r;���r����)r���r���rM���r0���ri���r���r;���r����)r���r���rM���r���ri���r���r;���r1���)rM���r��ri���r���r;���r���)rM���r-��ri���r���r;���r���)rM���r���ri���r���r;���r4��)rM���rW��ri���r���r;���r��)rM���rW��ri���r���r;���r��)r���r6��rM���rf��ri���r���r;���rg��)r���r8��rM���r����ri���r���r;���r����)r���r:��rM���r;��ri���r���r;���r3���)rM���rf��ri���r���r;���r���)rM���ri��ri���r���r;���r���)rM���rl��ri���r���r;���r���)er���� __module__�__qualname__�__doc__rK���r]���rg���r����r����r����r����r ���r ���r����rF��rG��r���r���r���r���r���r���r���r���r���r���r���r���r���r��r��r��r��r"��r/��r2��r;��rA��r,��rL��rU��rZ��r`��rb��re��r���ru��r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r���r����visit_bytesr���r���r���r���r���r��r��r��r��r��r!��r(��r+��r0��r5��r���rH��rK��rN��rU��r[��r^��ra��ri��ro��rv��ry��r|��r���r����rL���rJ���r5���r5���9���s��������������;�;� �.2�� 2��2��2��2��2�&�������*U��U��U��U�5 ��5 ��5 ��5 �n00��00��00��00�d/��/��/��/�(�������0���P� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� � � � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� � ���v�%�%� � �� �� ���X� ����f�$�$� � �� �� ���X� ��� �� �� ���X� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� � � � �� �� �� �� ����f�$�$� � �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� � ���w�&�&� � �� �� ���X� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� �� � �� �� �� �� ����w�&�&� � �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� � �� �� �� ���X� � �� �� �� ���X� � �� �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� ��� �� �� ���X� �� � �� �� �� �� �� � �� �� �� �� �*��*��*��*�3��3��3��3�=��=��=��=�L��L��L��L�\������� !!��!!��!!��!!�F!��!��!��!�2M��M��M��M� =��=��=��=� �� �� �� �?��?��?��?��������$�������$���������X�� ���������X���������*������� ������� ������� �� �� �� ��������$�DH�#��#��#��#��#�J �� �� �� ��������,��������������@�������-��-��-��-�(������� �������"��������������&���������X�� ���������X�� �������68��8��8��8��������(���������X�� ���������X��5��5��5��5�nH��H��H��H� �������$-��-��-��-�^������� �������"�������"�������$ �� �� �� ��������$���6�!�!� �� �� �� � ���&� � � �� �� �� � 2�� 2�� 2�� 2��������������� �� �� �� �������� (��(��(��(�T �� �� �� � �� �� �� ����&� � � �� �� �� � �� �� �� � �� �� �� �� �� �� �� �� � �� �� �� ��������"��������������������� �������"�������" �� �� �� ��������:�������2������� �� �� �� ���������������"���������X�� ���������X�� �������B:��:��:��:������������������7�"�"� �� �� �� � �� �� �� � �� �� �� � �� �� �� � �� �� �� � �� �� �� �& �� �� �� �( �� �� �� � �� �� �� � �� �� �� �� �� �S�#�"rL���r5���);r���� __future__r���rq��rF��ru����collections.abcr���r����ior����tokenizer���r����typingr ���r ���r���r���r ����astroidr����astroid._astr���r���r���� astroid.constr���r���r���r���r����astroid.managerr���� astroid.nodesr����astroid.nodes.utilsr����astroid.typingr���rG��r����typing_extensionsr+����__annotations__r,���rx���rw���r1���rt��r���r2���rG��r���r3���r����r+��r����r5���r����rL���rJ����<module>r������s����� ������#��"��"��"��"��"�� � � � �� � � � �������/��/��/��/��/��/��/��/��������������/��/��/��/��/��/��/��/��@��@��@��@��@��@��@��@��@��@��@��@��@��@��������������U��U��U��U��U��U��U��U��U��U��F��F��F��F��F��F��F��F��F��F��F��F��F��F��*��*��*��*��*��*�� �� �� �� �� �� ��(��(��(��(��(��(��4��4��4��4��4��4���v����������'�'�'�'�'�'���$�"�!�$���#��#����������� ����� � 3�4� �� ����W�\�5�#4�e�6L� M� M� ������E�N�3�3�� ���5�:�u�� 7� 7���%�,����8I�I�J���K ��K ��K ��K ��K ��K ��K ��K ��K ��K rL���