<!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>

]9                 @   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 d   Z d S)    )
namedtupleOrderedDict)commonprefixTP         c             C   sU   t  |   | | } | t k rQ d |  d  |  | |  t  |   | d   f }  |  S)Nz%s[%d chars]%s)len_PLACEHOLDER_LEN)s	prefixlenZ	suffixlenskip r   )/opt/alt/python35/lib64/python3.5/util.py_shorten   s    1r   c                 s   t  t t |    }  t t t |    } | t k r: |  St |     t     t |  t t } | t	 k r t
   t |    t     f d d   |  D  St
   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)N)r   _MIN_DIFF_LEN_MIN_END_LEN)r   r
   )r   r   r   r   r   *   s   )tuplemap	safe_reprmaxr   _MAX_LENGTHr   _MIN_BEGIN_LENr	   _MIN_COMMON_LENr   )argsmaxlenZ
common_lenr   )r   r   r   _common_shorten_repr   s     r   Fc             C   sc   y t  |   } Wn! t k
 r3 t j |   } Yn X| sM t |  t k  rQ | 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   so  d } } g  } g  } xLy|  | } | | } | | k  rw | j  |  | d 7} x |  | | k rs | d 7} qV Wn | | k r | j  |  | d 7} x | | | k r | d 7} q Wn^ | d 7} z% x |  | | k r | d 7} q WWd  | d 7} x | | | k r| d 7} q WXWq t k
 r`| j |  | d    | j | | d    PYq Xq W| | f S)Nr      )append
IndexErrorextend)expectedactualijmissingZ
unexpectedear   r   r   sorted_list_difference9   s:    







r4   c             C   s\   g  } xI |  rQ |  j    } y | j |  Wq	 t k
 rM | j |  Yq	 Xq	 W| | f S)N)popremove
ValueErrorr*   )r-   r.   r1   itemr   r   r   unorderable_list_differenceb   s    	r9   c             C   s   |  | k |  | k  S)Nr   )xyr   r   r   three_way_cmps   s    r<   ZMismatchzactual expected valuec             C   s  t  |   t  |  } } t |  t |  } } t   } g  } x t |  D] \ } }	 |	 | k ri qN d }
 } x; t | |  D]* } | | |	 k r |
 d 7}
 | | | <q Wx: t |  D], \ } } | |	 k r | d 7} | | | <q W|
 | k rN t |
 | |	  } | j |  qN Wx t |  D]~ \ } }	 |	 | k rEq*d } x; t | |  D]* } | | |	 k r[| d 7} | | | <q[Wt d | |	  } | j |  q*W| S)Nr   r)   )listr   r!   	enumeraterange	_Mismatchr*   )r.   r-   r
   tmnZNULLr$   r/   elemcnt_scnt_tr0   Z
other_elemdiffr   r   r   _count_diff_all_purposey   s<    	



rH   c             C   s8   t    } x( |  D]  } | j | d  d | | <q W| S)Nr   r)   )r   get)iterablecrD   r   r   r   _ordered_count   s    	rL   c       	      C   s   t  |   t  |  } } g  } xW | j   D]I \ } } | j | d  } | | k r, t | | |  } | j |  q, WxE | j   D]7 \ } } | | k r t d | |  } | j |  q W| S)Nr   )rL   itemsrI   r@   r*   )	r.   r-   r
   rA   r$   rD   rE   rF   rG   r   r   r   _count_diff_hashable   s    rN   N)collectionsr   r   Zos.pathr   Z
__unittestr   r	   r   r   r   r   r   r   r   r(   r4   r9   r<   r@   rH   rL   rN   r   r   r   r   <module>   s(   	)#