<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
U
    if_                     @   s   d dl mZmZ d dlmZ dZdZdZdZdZ	dZ
eee e
 e e	  Zdd Zd	d
 ZdddZdd Zdd Zdd Zdd ZeddZdd Zdd ZdS )    )
namedtupleCounter)commonprefixTP         c                 C   sB   t | | | }|tkr>d| d | || t | | d  f } | S )Nz%s[%d chars]%s)len_PLACEHOLDER_LEN)s	prefixlenZ	suffixlenskip r   2/opt/alt/python38/lib64/python3.8/unittest/util.py_shorten   s    &r   c                     s   t tt| } ttt| }|tkr(| S t|  t t| t t  }|t	krxt
 t| t  fdd| D S t
 tt	 t  fdd| D S )Nc                 3   s   | ]} |d   V  qd S Nr   .0r
   prefixr   r   r   	<genexpr>'   s     z'_common_shorten_repr.<locals>.<genexpr>c                 3   s&   | ]} t |d  tt V  qd S r   )r   _MIN_DIFF_LEN_MIN_END_LENr   r   r   r   r   *   s   )tuplemap	safe_reprmaxr   _MAX_LENGTHr   _MIN_BEGIN_LENr	   _MIN_COMMON_LENr   )argsmaxlenZ
common_lenr   r   r   _common_shorten_repr   s     r!   Fc                 C   sP   zt | }W n tk
r*   t| }Y nX |r<t|tk r@|S |d t d S )Nz [truncated]...)repr	Exceptionobject__repr__r   r   )objZshortresultr   r   r   r   -   s    r   c                 C   s   d| j | jf S )Nz%s.%s)
__module____qualname__)clsr   r   r   strclass6   s    r+   c                 C   s  d }}g }g }z| | }|| }||k rT| | |d7 }| | |kr|d7 }q<nv||kr| | |d7 }|| |kr|d7 }qnnD|d7 }z| | |kr|d7 }qW 5 |d7 }|| |kr|d7 }qX W q tk
r   || |d   |||d   Y qY qX q||fS Nr      )append
IndexErrorextend)expectedactualijmissingZ
unexpectedear   r   r   sorted_list_difference9   s8    

r8   c                 C   sH   g }| r@|   }z|| W q tk
r<   || Y qX q||fS r   )popremove
ValueErrorr.   )r1   r2   r5   itemr   r   r   unorderable_list_differenceb   s    r=   c                 C   s   | |k| |k  S r   r   )xyr   r   r   three_way_cmps   s    r@   ZMismatchzactual expected valuec                 C   s,  t | t | }}t|t| }}t }g }t|D ]\}}	|	|krHq6d }
}t||D ] }|| |	krZ|
d7 }
|||< qZt|D ] \}}||	kr|d7 }|||< q|
|kr6t|
||	}|| q6t|D ]X\}}	|	|krqd}t||D ] }|| |	kr|d7 }|||< qtd||	}|| q|S r,   )listr   r$   	enumeraterange	_Mismatchr.   )r2   r1   r
   tmnZNULLr'   r3   elemcnt_scnt_tr4   Z
other_elemdiffr   r   r   _count_diff_all_purposey   s<    


rL   c           	      C   s   t | t | }}g }| D ]2\}}||d}||krt|||}|| q| D ]&\}}||krZtd||}|| qZ|S )Nr   )r   itemsgetrD   r.   )	r2   r1   r
   rE   r'   rH   rI   rJ   rK   r   r   r   _count_diff_hashable   s    rO   N)F)collectionsr   r   Zos.pathr   Z
__unittestr   r	   r   r   r   r   r   r!   r   r+   r8   r=   r@   rD   rL   rO   r   r   r   r   <module>   s0   

	)
#