File: //opt/alt/python311/lib64/python3.11/__pycache__/tracemalloc.cpython-311.pyc
�
    !A?hF  �                   �  � d dl mZmZ d dlmZ d dlZd dlZd dlZd dl	Z	d dl
T 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� ZdS )�    )�Sequence�Iterable)�total_orderingN)�*)�_get_object_traceback�_get_tracesc                 ��   � dD ]a}t          | �  �        dk     r|dk    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  } �bd S )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/python311/lib64/python3.11/tracemalloc.py�_format_sizer   
   s�   � �1� 
� 
���t�9�9�s�?�?�t�s�{�{�� 
0�!�T�4�L�0�0�0�0� �D�$�<�/�/�/�/��t�9�9�y� � �D�E�M�M�� 
0�!�T�4�L�0�0�0�0� �D�$�<�/�/�/�/������
� 
�    c                   �:   � e Zd ZdZdZd� Zd� Zd� Zd� Zd� Z	d� Z
d	S )
�	StatisticzS
    Statistic difference on memory allocations between two Snapshot instance.
    ��	tracebackr   �countc                 �0   � || _         || _        || _        d S �Nr   )�selfr   r   r   s       r   �__init__zStatistic.__init__%   s   � �"�����	���
�
�
r   c                 �D   � t          | j        | j        | j        f�  �        S r   )�hashr   r   r   �r   s    r   �__hash__zStatistic.__hash__*   s   � ��T�^�T�Y��
�;�<�<�<r   c                 �   � t          |t          �  �        st          S | j        |j        k    o| j        |j        k    o| j        |j        k    S r   )�
isinstancer   �NotImplementedr   r   r   �r   �others     r   �__eq__zStatistic.__eq__-   sM   � ��%��+�+� 	"�!�!���%�/�1� .��I���+�.��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� ���E�2�2��J� � �� �:� 	B��i�$�*�,�G��N�\�'�5�%A�%A�A�A�D��r   c                 �0   � d| j         | j        | j        fz  S )Nz)<Statistic traceback=%r size=%i count=%i>r   r"