OwlCyberSecurity - MANAGER
Edit File: tracemalloc.cpython-312.opt-1.pyc
� ������hF�����������������������\����d�dl�mZmZ�d�dlmZ�d�dlZd�dlZd�dlZd�dl Z d�dl ��d�dl mZmZ�d��Z �G�d��d�������Z�G�d ��d �������Zd��Ze�G�d��d ���������������Ze�G�d��de���������������Zd��Z�G�d��d�������Z�G�d��de�������Zd��Z�G�d��d�������Z�G�d��de�������Z�G�d��de�������Z�G�d��d�������Zd��Zy)�����)�Sequence�Iterable)�total_orderingN)�*)�_get_object_traceback�_get_tracesc�����������������������dD�]U��}t��������|��������dk��r|dk7��r|r d|�|fz��c�S�d|�|fz��c�S�t��������|��������dk��s|dk(��r|r d|�|fz��c�S�d |�|fz��c�S�|�d z��}��W�y�)N)�B�KiB�MiB�GiB�TiB�d���r ���z%+.1f %sz%.1f %si�(��r���z%+.0f %sz%.0f %si���)�abs)�size�sign�units��� �2/opt/alt/python312/lib64/python3.12/tracemalloc.py�_format_sizer��� ���sz������1���t�9�s�?�t�s�{��!�T�4�L�0�0� �D�$�<�/�/��t�9�y� �D�E�M��!�T�4�L�0�0� �D�$�<�/�/������2�����c��������������������8�����e�Zd�ZdZdZd��Zd��Zd��Zd��Zd��Z d��Z y ) � StatisticzS Statistic difference on memory allocations between two Snapshot instance. �� tracebackr����countc������������������.�����||�_���������||�_��������||�_��������y��Nr���)�selfr���r���r���s��� r����__init__zStatistic.__init__%���s������"����� ��� r���c������������������Z�����t��������|�j������������������|�j������������������|�j������������������f�������S�r���)�hashr���r���r����r���s��� r����__hash__zStatistic.__hash__*���s �������T�^�^�T�Y�Y�� � �;�<�<r���c������������������������t��������|t���������������st��������S�|�j������������������|j������������������k(��xr4�|�j������������������|j������������������k(��xr�|�j ������������������|j ������������������k(��S�r���)� isinstancer����NotImplementedr���r���r����r����others��� r����__eq__zStatistic.__eq__-���sQ�������%��+�!�!����%�/�/�1��.��I�I����+�.��J�J�%�+�+�-� /r���c������������������������d|�j�������������������t��������|�j������������������d�������|�j������������������fz��}|�j������������������r+|�j������������������|�j������������������z��}|dt��������|d�������z��z ��}|S�)Nz%s: size=%s, count=%iF�, average=%s)r���r���r���r����r����text�averages��� r����__str__zStatistic.__str__4���sc������'��N�N� ����E�2��J�J� � ����:�:��i�i�$�*�*�,�G��N�\�'�5�%A�A�A�D��r���c������������������N�����d|�j�������������������|�j������������������|�j������������������fz��S�)Nz)<Statistic traceback=%r size=%i count=%i>r���r"���s��� r����__repr__zStatistic.__repr__>���s%������;��>�>�4�9�9�d�j�j�9�:�� ;r���c������������������H�����|�j�������������������|�j������������������|�j������������������fS�r���)r���r���r���r"���s��� r���� _sort_keyzStatistic._sort_keyB���s������� � �4�:�:�t�~�~�6�6r���N��__name__� __module__�__qualname__�__doc__� __slots__r���r#���r)���r/���r1���r3�����r���r���r���r������s,��������/�I�� =�/��;�7r���r���c��������������������8�����e�Zd�ZdZdZd��Zd��Zd��Zd��Zd��Z d��Z y ) � StatisticDiffzd Statistic difference on memory allocations between an old and a new Snapshot instance. �r���r���� size_diffr���� count_diffc������������������J�����||�_���������||�_��������||�_��������||�_��������||�_��������y�r���r=���)r���r���r���r>���r���r?���s��� r���r���zStatisticDiff.__init__M���s%������"����� �"����� �$��r���c�����������������������t��������|�j������������������|�j������������������|�j������������������|�j������������������|�j ������������������f�������S�r���)r!���r���r���r>���r���r?���r"���s��� r���r#���zStatisticDiff.__hash__T���s3�������T�^�^�T�Y�Y�����Z�Z����2��3�� 3r���c������������������8����t��������|t���������������st��������S�|�j������������������|j������������������k(��xrj�|�j������������������|j������������������k(��xrO�|�j ������������������|j ������������������k(��xr4�|�j������������������|j������������������k(��xr�|�j������������������|j������������������k(��S�r���)r%���r<���r&���r���r���r>���r���r?���r'���s��� r���r)���zStatisticDiff.__eq__X���s��������%��/�!�!����%�/�/�1��8��I�I����+�8��N�N�e�o�o�5�8���J�J�%�+�+�-�8���O�O�u�'7�'7�7� 9r���c����������������������d|�j�������������������t��������|�j������������������d�������t��������|�j������������������d�������|�j������������������|�j ������������������fz��}|�j������������������r+|�j������������������|�j������������������z��}|dt��������|d�������z��z ��}|S�)Nz %s: size=%s (%s), count=%i (%+i)FTr+���)r���r���r���r>���r���r?���r,���s��� r���r/���zStatisticDiff.__str__a���sx������2��>�>��� � �5�1������5��:�:��?�?� $�$����:�:��i�i�$�*�*�,�G��N�\�'�5�%A�A�A�D��r���c������������������z�����d|�j�������������������|�j������������������|�j������������������|�j������������������|�j������������������fz��S�)Nz9<StatisticDiff traceback=%r size=%i (%+i) count=%i (%+i)>r=���r"���s��� r���r1���zStatisticDiff.__repr__m���s4������K��>�>�4�9�9�d�n�n��:�:�t���0�0�� 1r���c�����������������������t��������|�j�������������������������|�j������������������t��������|�j�������������������������|�j������������������|�j ������������������fS�r���)r���r>���r���r?���r���r���r"���s��� r���r3���zStatisticDiff._sort_keyr���s7�������D�N�N�#�T�Y�Y��D�O�O�$�d�j�j���� �� r���Nr4���r:���r���r���r<���r<���F���s-��������J�I�%�3�9� �1� r���r<���c����������� �������2����g�}|j��������������������������D�]���\��}}|�j������������������|d��������}|�Rt��������||j������������������|j������������������|j������������������z ��|j������������������|j������������������|j������������������z ���������}n7t��������||j������������������|j������������������|j������������������|j�������������������������}|j������������������|�����������|�j��������������������������D�];��\��}}t��������|d|j�������������������d|j��������������������������}|j������������������|���������=�|S��Nr���)�items�popr<���r���r����append)� old_group� new_group� statisticsr����stat�previouss��� r����_compare_grouped_statsrP���x���s��������J�$�?�?�,�� �4��=�=��D�1���� ��!%���D�I�I�� � �,E�!%���T�Z�Z�(�.�.�-H�J�D��!��!%���D�I�I�!%���T�Z�Z�9�D�� ���$���-��%�?�?�,�� �4��Y��D�I�I�:�q�4�:�:�+�F�����$���-���r���c��������������������X�����e�Zd�ZdZdZd��Zed����������Zed����������Zd��Z d��Z d��Zd ��Zd ��Z y)�Framez Frame of a traceback. ��_framec�����������������������||�_���������y�r���rS����r����frames��� r���r���zFrame.__init__����s ��������r���c������������������ �����|�j�������������������d���S�rG���rS���r"���s��� r����filenamezFrame.filename������������{�{�1�~�r���c������������������ �����|�j�������������������d���S��N����rS���r"���s��� r����linenozFrame.lineno����rZ���r���c������������������`�����t��������|t���������������st��������S�|�j������������������|j������������������k(��S�r����r%���rR���r&���rT���r'���s��� r���r)���zFrame.__eq__�����%�������%��'�!�!����u�|�|�+�,r���c������������������`�����t��������|t���������������st��������S�|�j������������������|j������������������k��S�r���r`���r'���s��� r����__lt__zFrame.__lt__����s%�������%��'�!�!����e�l�l�*�+r���c������������������,�����t��������|�j�������������������������S�r���)r!���rT���r"���s��� r���r#���zFrame.__hash__������������D�K�K� � r���c������������������8�����|�j��������������������d|�j��������������������S�)N�:�rY���r^���r"���s��� r���r/���z Frame.__str__����s�������-�-����5�5r���c������������������<�����d|�j��������������������d|�j�������������������d�S�)Nz<Frame filename=z lineno=�>rh���r"���s��� r���r1���zFrame.__repr__����s������26�-�-����M�Mr���N)r5���r6���r7���r8���r9���r����propertyrY���r^���r)���rc���r#���r/���r1���r:���r���r���rR���rR�������sU���������I��������������-� ,� !�6�Nr���rR���c��������������������d�����e�Zd�ZdZdZdd�Zed����������Zd��Zd��Z d��Z d ��Zd ��Zd��Z d��Zd ��Zdd�Zy)� Tracebackz` Sequence of Frame instances sorted from the oldest frame to the most recent frame. )�_frames� _total_nframeNc������������������n�����t��������j������������������|���������t��������t��������|��������������|�_��������||�_��������y�r���)r���r����tuple�reversedrn���ro���)r����frames�total_nframes��� r���r���zTraceback.__init__����s+���������$�� ��X�f�-�.���)��r���c�����������������������|�j�������������������S�r���)ro���r"���s��� r���rt���zTraceback.total_nframe����s�������!�!�!r���c������������������,�����t��������|�j�������������������������S�r���)�lenrn���r"���s��� r����__len__zTraceback.__len__������������4�<�<� � r���c�����������������������t��������|t���������������rt��������d��|�j������������������|���D����������������S�t ��������|�j������������������|����������S�)Nc��������������3����2���K����|�]��}t��������|������������y��wr���)rR�����.0�traces��� r���� <genexpr>z(Traceback.__getitem__.<locals>.<genexpr>��������������G�3F�%��u��3F������)r%����slicerq���rn���rR����r����indexs��� r����__getitem__zTraceback.__getitem__�����:�������e�U�#��G�4�<�<��3F�G�G�G�����e�,�-�-r���c������������������2�����|j�������������������|�j������������������v�S�r���)rT���rn���rV���s��� r����__contains__zTraceback.__contains__������������|�|�t�|�|�+�+r���c������������������,�����t��������|�j�������������������������S�r���)r!���rn���r"���s��� r���r#���zTraceback.__hash__����s�������D�L�L�!�!r���c������������������`�����t��������|t���������������st��������S�|�j������������������|j������������������k(��S�r����r%���rm���r&���rn���r'���s��� r���r)���zTraceback.__eq__����s%�������%��+�!�!����� � �-�.r���c������������������`�����t��������|t���������������st��������S�|�j������������������|j������������������k��S�r���r����r'���s��� r���rc���zTraceback.__lt__����s%�������%��+�!�!����u�}�}�,�-r���c�����������������������t��������|�d����������S�rG���)�strr"���s��� r���r/���zTraceback.__str__����s�������4��7�|�r���c������������������n�����dt��������|�����������}|�j�������������������|dz ��}|S�|d|�j��������������������d�z ��}|S�)Nz<Traceback rj���z total_nframe=)rq���ro���rt���)r����ss��� r���r1���zTraceback.__repr__����sO�������%��+��'�����%� ��H�A����� �>�$�"3�"3�!4�A�6�6�A��r���c������������������R����g�}|�|dkD��r|�|�d��}n|�d�|�}n|�}|rt��������|�������}|D�]|��}|j������������������d|j�������������������d|j����������������������������t ��������j ������������������|j������������������|j�������������������������j ��������������������������}|s�i|j������������������d|z�����������~�|S�)Nr���z File "z", line z %s)rr���rJ���rY���r^���� linecache�getline�strip)r����limit�most_recent_first�lines�frame_slicerW����lines��� r����formatzTraceback.format����s������������q�y�"�E�6�7�m��"�6�E�l���K��"�;�/�K� �E��L�L�!�N�N�E�L�L�:�� ;��$�$�U�^�^�U�\�\�B�H�H�J�D�����X��_�-��!���r���r���)NF)r5���r6���r7���r8���r9���r���rk���rt���rx���r����r����r#���r)���rc���r/���r1���r����r:���r���r���rm���rm�������sT��������-�I�*���"���"�!�.�,�"�/� .� ��r���rm���c������������������4�����t��������|��������}|�t��������|�������S�y)z� Get the traceback where the Python object *obj* was allocated. Return a Traceback instance. Return None if the tracemalloc module is not tracing memory allocations or did not trace the allocation of the object. N)r���rm���)�objrs���s��� r����get_object_tracebackr������s"�������#�3� '�F� ���� � �r���c��������������������b�����e�Zd�ZdZdZd��Zed����������Zed����������Zed����������Z d��Z d��Zd ��Zd ��Z y)�Tracez" Trace of a memory block. ��_tracec�����������������������||�_���������y�r���r�����r���r~���s��� r���r���zTrace.__init__��s���������r���c������������������ �����|�j�������������������d���S�rG���r����r"���s��� r����domainzTrace.domain��rZ���r���c������������������ �����|�j�������������������d���S�r\���r����r"���s��� r���r���z Trace.size��rZ���r���c������������������,�����t��������|�j������������������dd����S�)N����)rm���r����r"���s��� r���r���zTrace.traceback#��s�������$�+�+�a�b�/�*�*r���c������������������`�����t��������|t���������������st��������S�|�j������������������|j������������������k(��S�r���)r%���r����r&���r����r'���s��� r���r)���zTrace.__eq__'��ra���r���c������������������,�����t��������|�j�������������������������S�r���)r!���r����r"���s��� r���r#���zTrace.__hash__,��re���r���c������������������L�����|�j��������������������dt��������|�j������������������d���������S�)Nz: F)r���r���r���r"���s��� r���r/���z Trace.__str__/��s�������>�>�<�� � �5�+I�J�Jr���c������������������j�����d|�j��������������������dt��������|�j������������������d��������d|�j�������������������d�S�)Nz<Trace domain=z size=Fz, traceback=rj���)r����r���r���r���r"���s��� r���r1���zTrace.__repr__2��s(�������;�;��T�Y�Y�� >����P�� Qr���N)r5���r6���r7���r8���r9���r���rk���r����r���r���r)���r#���r/���r1���r:���r���r���r����r������se���������I�� ��������������+���+�-� !�K�Qr���r����c��������������������0�����e�Zd�Zd��Zd��Zd��Zd��Zd��Zd��Zy)�_Tracesc������������������<�����t��������j������������������|���������||�_��������y�r���)r���r����_traces)r����tracess��� r���r���z_Traces.__init__8��s���������$����r���c������������������,�����t��������|�j�������������������������S�r���)rw���r����r"���s��� r���rx���z_Traces.__len__=��ry���r���c�����������������������t��������|t���������������rt��������d��|�j������������������|���D����������������S�t ��������|�j������������������|����������S�)Nc��������������3����2���K����|�]��}t��������|������������y��wr���)r����r|���s��� r���r���z&_Traces.__getitem__.<locals>.<genexpr>B��r����r����)r%���r����rq���r����r����r����s��� r���r����z_Traces.__getitem__@��r����r���c������������������2�����|j�������������������|�j������������������v�S�r���)r����r����r����s��� r���r����z_Traces.__contains__F��r����r���c������������������`�����t��������|t���������������st��������S�|�j������������������|j������������������k(��S�r���)r%���r����r&���r����r'���s��� r���r)���z_Traces.__eq__I��s%�������%��)�!�!����� � �-�.r���c�����������������������dt��������|��������z��S�)Nz<Traces len=%s>)rw���r"���s��� r���r1���z_Traces.__repr__N��s������ �3�t�9�,�,r���N) r5���r6���r7���r���rx���r����r����r)���r1���r:���r���r���r����r����7��s ������� !�.�,�/� -r���r����c������������������p�����t���������j������������������j������������������|��������}�|�j������������������d�������r|�d�d�}�|�S�)Nz.pyc���)�os�path�normcase�endswith)rY���s��� r����_normalize_filenamer����R��s4�������w�w����)�H����� ��C�R�=���Or���c�������������������������e�Zd�Zd��Zd��Zy)� BaseFilterc�����������������������||�_���������y�r���)� inclusive)r���r����s��� r���r���zBaseFilter.__init__Z��s ������"��r���c�����������������������t����������r���)�NotImplementedErrorr����s��� r����_matchzBaseFilter._match]��s������!�!r���N)r5���r6���r7���r���r����r:���r���r���r����r����Y��s������#�"r���r����c��������������������J�������e�Zd�Z �d��fd� Zed����������Zd��Zd��Zd��Zd��Z ��xZ S�)�Filterc������������������|������t����������|����|��������||�_��������t��������|�������|�_��������||�_��������||�_��������||�_��������y�r���)�superr���r����r�����_filename_patternr^���� all_framesr����)r���r�����filename_patternr^���r����r����� __class__s��� �r���r���zFilter.__init__b��s:������� ����#�"���!4�5E�!F������$�����r���c�����������������������|�j�������������������S�r���)r����r"���s��� r���r����zFilter.filename_patternk��s�������%�%�%r���c�����������������������t��������|�������}t��������j������������������||�j�������������������������sy|�j�������������������y||�j������������������k(��S�)NFT)r�����fnmatchr����r^����r���rY���r^���s��� r����_match_frame_implzFilter._match_frame_implo��s?������&�x�0�����x��)?�)?�@���;�;����d�k�k�)�*r���c������������������B�����|�j������������������||�������|�j�������������������z��S�r���)r����r����r����s��� r����_match_framezFilter._match_framex��s!�������%�%�h��7�t�~�~�;M�N�Nr���c���������������������������j�������������������r-t����������fd�|D����������������r��j������������������S���j�������������������S�|d���\��}}��j������������������||�������S�)Nc��������������3����H����K����|�]��\��}}�j������������������||������������y��wr���)r����)r}���rY���r^���r���s��� �r���r���z*Filter._match_traceback.<locals>.<genexpr>}��s+�����������6�+4�'�x����)�)�(�F�;�+4�s����"r���)r�����anyr����r����)r���r���rY���r^���s���` r����_match_tracebackzFilter._match_traceback{��sW��������?�?���6�+4�6��6��~�~�%� �N�N�*�+�(��|��H�f��$�$�X�v�6�6r���c�����������������������|\��}}}}|�j������������������|�������}|�j�������������������2|�j������������������r|xr�||�j������������������k(��S�|xs�||�j������������������k7��S�|S�r���)r����r����r����)r���r~���r����r���r���rt����ress��� r���r����z Filter._match���s^������05�-���i���#�#�I�.���;�;�"��~�~��6��$�+�+� 5�6��5�v����4�5�� r���)NFN)r5���r6���r7���r���rk���r����r����r����r����r����� __classcell__�r����s���@r���r����r����a��s4�������7;����&���&�+�O� 7�r���r����c��������������������4�������e�Zd�Z��fd�Zed����������Zd��Z��xZS�)�DomainFilterc������������������2������t����������|����|��������||�_��������y�r���)r����r����_domain)r���r����r����r����s��� �r���r���zDomainFilter.__init__���s������� ����#���r���c�����������������������|�j�������������������S�r���)r����r"���s��� r���r����zDomainFilter.domain���s�������|�|�r���c������������������J�����|\��}}}}||�j�������������������k(��|�j�������������������z��S�r���)r����r����)r���r~���r����r���r���rt���s��� r���r����zDomainFilter._match���s+������05�-���i���$�+�+�%�d�n�n�*<�=�=r���)r5���r6���r7���r���rk���r����r����r����r����s���@r���r����r�������s!��������������>r���r����c��������������������N�����e�Zd�ZdZd��Zd��Zed����������Zd��Zd��Z d��Z dd�Zdd �Zy )�SnapshotzB Snapshot of traces of memory blocks allocated by Python. c������������������2�����t��������|�������|�_��������||�_��������y�r���)r����r�����traceback_limit)r���r����r����s��� r���r���zSnapshot.__init__���s��������f�o���.��r���c�����������������������t��������|d�������5�}t��������j������������������|�|t��������j��������������������������ddd��������y#�1�sw�Y���yxY�w)z1 Write the snapshot into a file. �wbN)�open�pickle�dump�HIGHEST_PROTOCOL)r���rY����fps��� r���r����z Snapshot.dump���s2��������(�D� !�R��K�K��b�&�"9�"9�:��"� !� !�s ����&<�Ac������������������p�����t��������|�d�������5�}t��������j������������������|�������cddd��������S�#�1�sw�Y���yxY�w)z. Load a snapshot from a file. �rbN)r����r�����load)rY���r����s��� r���r����z Snapshot.load���s'������ ��(�D� !�R��;�;�r�?��"� !� !�s����,�5c������������������b������|rt���������fd�|D����������������sy|rt���������fd�|D����������������ryy)Nc��������������3����@����K����|�]��}|j�������������������������������y��wr����r�����r}����trace_filterr~���s��� �r���r���z)Snapshot._filter_trace.<locals>.<genexpr>���s$�����������<�+:�<��$�*�*�5�1�+:�s����Fc��������������3����B����K����|�]��}|j��������������������������������y��wr���r����r����s��� �r���r���z)Snapshot._filter_trace.<locals>.<genexpr>���s'�����������8�'6�|��$�*�*�5�1�1�'6�s����T)r����)r����include_filters�exclude_filtersr~���s��� `r���� _filter_tracezSnapshot._filter_trace���s<����������<�+:�<��<�����8�'6�8��8��r���c�����������������������t��������|t���������������s!t��������dt��������|�������j������������������z����������|rqg�}g�}|D�]1��}|j ������������������r|j ������������������|���������!|j ������������������|���������3�|�j������������������j������������������D��cg�c]��}|�j������������������|||�������r|���}}n$|�j������������������j������������������j��������������������������}t��������||�j�������������������������S�c�c}w�)z� Create a new Snapshot instance with a filtered traces sequence, filters is a list of Filter or DomainFilter instances. If filters is an empty list, return a new Snapshot instance with a copy of the traces. z)filters must be a list of filters, not %s) r%���r���� TypeError�typer5���r����rJ���r����r����r�����copyr����r����)r����filtersr����r����r����r~���� new_tracess��� r���� filter_traceszSnapshot.filter_traces���s���������'�8�,��G�"�7�m�4�4�5��6�� 6�� �O� �O� '���)�)�#�*�*�<�8�#�*�*�<�8� �!(� �.2�[�[�-@�-@��8�-@�E�!�/�/��0?�05�7�� �-@�J��8� ����,�,�1�1�3�J�� �D�$8�$8�9�9�� 8s����Cc������������������&����|dvrt��������d|����������|r|dvrt��������d|z����������i�}i�}|sZ|�j������������������j������������������D�]?��}|\��}}}} �||���} �|| ���}|xj ������������������|z ��c_��������|xj������������������dz ��c_���������A�|S�|�j������������������j������������������D�]F��}|\��}}}} |D�]8��} �|| ���} �|| ���}|xj ������������������|z ��c_��������|xj������������������dz ��c_���������:��H�|S�#�t��������$�r1�|dk(��r|}n|dk(��r|d�d�}n|d���d���dff}t ��������|�������} | ||<���Y���w�xY�w#�t��������$�r�t��������| |d�������|| <���Y���w�xY�w#�t��������$�r$�|dk(��r| f}n| d���dff}t ��������|�������} | || <���Y���w�xY�w#�t��������$�r�t��������| |d�������|| <���Y���w�xY�w) N)r���rY���r^���zunknown key_type: )r^���rY���z/cumulative mode cannot by used with key type %rr���r^���r]���r���)� ValueErrorr����r�����KeyErrorrm���r���r���r���)r����key_type� cumulative�stats� tracebacksr~���r����r����trace_tracebackrt���r���rs���rN���rW���s��� r���� _group_byzSnapshot._group_by���s������>�>��x�A�B�B��(�*@�@���0�2:�;��<�� <����� �����,�,��>C�;���o�|� <� *�?� ;�I�E� ��+�D��I�I��%�I��J�J�!�O�J�!�-�N���%����,�,��>C�;���o�|�,�E�6�$.�u�$5� �I�$�Y�/��� � �T�)� �� � �a�� ��-��-�$����G� ��<��;�.�!0��!�X�-�!0��!�!4��#2�1�#5�a�#8�!�"<�!>�� )�&� 1�I�2;�J��/�<��� ��E�'0��D�!�'D�E�)�$�E���$��6�#�x�/�&+�X�F�',�Q�x��m�%5�F�$-�f�$5� �,5� �5�)� 6���$��I�+4�Y��a�+H��i�(�I�sH����C(�/D%�-E�3/E4�(7D"�!D"�%E��E�*E1�0E1�4F�Fc�����������������������|�j������������������||�������}t��������|j���������������������������������}|j������������������dt��������j ���������������������������|S�)zd Group statistics by key_type. Return a sorted list of Statistic instances. T��reverse�key)r ���list�values�sortr���r3���)r���r��r���groupedrM���s��� r���rM���zSnapshot.statistics��sA������ ��.�.��:�6���'�.�.�*�+� �����)�*=�*=��>��r���c�����������������������|�j������������������||�������}|j������������������||�������}t��������||�������}|j������������������dt��������j���������������������������|S�)z� Compute the differences with an old snapshot old_snapshot. Get statistics as a sorted list of StatisticDiff instances, grouped by group_by. Tr��)r ��rP���r��r<���r3���)r����old_snapshotr��r��rL���rK���rM���s��� r���� compare_tozSnapshot.compare_to��sN��������N�N�8�Z�8� � �*�*�8�Z�@� �+�I�y�A� �����-�*A�*A��B��r���N)F) r5���r6���r7���r8���r���r�����staticmethodr����r����r��r ��rM���r��r:���r���r���r����r�������s?�������/�;���#���#� �:�21�f� r���r����c�������������������l�����t����������������st��������d��������t����������������}�t����������������}t ��������|�|�������S�)zI Take a snapshot of traces of memory blocks allocated by Python. zLthe tracemalloc module must be tracing memory allocations to take a snapshot)� is_tracing�RuntimeErrorr����get_traceback_limitr����)r����r����s��� r���� take_snapshotr��'��s7��������<���<��=�� =� �]�F�)�+�O��F�O�,�,r���)�collections.abcr���r���� functoolsr���r����r�����os.pathr����r�����_tracemallocr���r���r���r���r<���rP���rR���rm���r����r����r����r����r����r����r����r����r��r:���r���r����<module>r �����s�������.��$�������� ����;��"%7��%7�P/ ��/ �d�(��#N��#N���#N�L��J���J���J�Z�$Q��$Q�N-�h��-�6�"��"�-�Z��-�`>�:��>�E��E�P -r���