£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

Rec           @   s  d  d l  m Z d  d l Z d  d l Z d  d l m Z m Z m Z d  d l m Z d  d l	 m
 Z
 m Z m Z d  d l m Z d  d l m Z d  d l m Z d  d	 l m Z d  d
 l m Z e r d  d l m Z m Z m Z n  y d  d l m Z Wn e k
 rd Z n Xd   Z e e e
  Z d e  f d     YZ! d e
 f d     YZ" d e f d     YZ# d e  f d     YZ$ d e  f d     YZ% d e% e! e$ f d     YZ& d e& e f d     YZ' d e& e" f d     YZ( d e& e
 f d     YZ) d  e& e f d!     YZ* d" e& e# f d#     YZ+ d$ e% e! e$ e f d%     YZ, i e( e( f d& 6e' e, f d' 6e) e, f d( 6e* e, f d) 6e+ e, f d* 6Z- d d+  Z. d S(,   i(   t   divisionN(   t   SIGINTt   default_int_handlert   signal(   t   six(   t   Bart   FillingCirclesBart   IncrementalBar(   t   Spinner(   t   WINDOWS(   t   get_indentation(   t   format_size(   t   MYPY_CHECK_RUNNING(   t   Anyt   Dictt   List(   t   coloramac         C   s   t  |  j d d   } | s | St  |  d t j    t  |  d t j    g } | t t  |  d g    7} y  t j   j |  j |  Wn t k
 r | SX|  Sd  S(   Nt   encodingt
   empty_fillt   fillt   phases(	   t   getattrt   filet   NoneR   t	   text_typet   listt   joint   encodet   UnicodeEncodeError(   t	   preferredt   fallbackR   t
   characters(    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   _select_progress_class   s     t   InterruptibleMixinc           B   s)   e  Z d  Z d   Z d   Z d   Z RS(   s  
    Helper to ensure that self.finish() gets called on keyboard interrupt.

    This allows downloads to be interrupted without leaving temporary state
    (like hidden cursors) behind.

    This class is similar to the progress library's existing SigIntMixin
    helper, but as of version 1.2, that helper has the following problems:

    1. It calls sys.exit().
    2. It discards the existing SIGINT handler completely.
    3. It leaves its own handler in place even after an uninterrupted finish,
       which will have unexpected delayed effects if the user triggers an
       unrelated keyboard interrupt some time after a progress-displaying
       download has already completed, for example.
    c         O   sM   t  t |   j | |   t t |  j  |  _ |  j d k rI t |  _ n  d S(   s=   
        Save the original SIGINT handler for later.
        N(	   t   superR!   t   __init__R   R   t   handle_sigintt   original_handlerR   R   (   t   selft   argst   kwargs(    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR#   L   s    c         C   s'   t  t |   j   t t |  j  d S(   s   
        Restore the original SIGINT handler after finishing.

        This should happen regardless of whether the progress display finishes
        normally, or gets interrupted.
        N(   R"   R!   t   finishR   R   R%   (   R&   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR)   a   s    c         C   s   |  j    |  j | |  d S(   s   
        Call self.finish() before delegating to the original SIGINT handler.

        This handler should only be in place while the progress display is
        active.
        N(   R)   R%   (   R&   t   signumt   frame(    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR$   l   s    
(   t   __name__t
   __module__t   __doc__R#   R)   R$   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR!   :   s   		t	   SilentBarc           B   s   e  Z d    Z RS(   c         C   s   d  S(   N(    (   R&   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   updatey   s    (   R,   R-   R0   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR/   w   s   t   BlueEmojiBarc           B   s    e  Z d  Z d Z d Z d Z RS(   s   %(percent)d%%t    u   🔹u   🔷u   🔵(   u   🔹u   🔷u   🔵(   R,   R-   t   suffixt
   bar_prefixt
   bar_suffixR   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR1   ~   s   t   DownloadProgressMixinc           B   sG   e  Z d    Z e d    Z e d    Z e d    Z d   Z RS(   c         O   s8   t  t |   j | |   d t   d |  j |  _ d  S(   NR2   i   (   R"   R6   R#   R
   t   message(   R&   R'   R(   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR#      s    c         C   s   t  |  j  S(   N(   R   t   index(   R&   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt
   downloaded   s    c         C   s(   |  j  d k r d St d |  j   d S(   Ng        s   ...i   s   /s(   t   avgR   (   R&   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   download_speed   s    c         C   s   |  j  r d j |  j  Sd S(   Ns   eta {}t    (   t   etat   formatt   eta_td(   R&   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt
   pretty_eta   s    	c         c   s7   x& | D] } | V|  j  t |   q W|  j   d  S(   N(   t   nextt   lenR)   (   R&   t   itt   x(    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   iter   s    (   R,   R-   R#   t   propertyR9   R;   R@   RE   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR6      s
   	t   WindowsMixinc           B   s   e  Z d    Z RS(   c            s   t  r   j r t   _ n  t t    j | |   t  r t r t j   j    _   f d     j _	   f d     j _
 n  d  S(   Nc              s     j  j j   S(   N(   R   t   wrappedt   isatty(    (   R&   (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   <lambda>   R<   c              s     j  j j   S(   N(   R   RH   t   flush(    (   R&   (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRJ      R<   (   R	   t   hide_cursort   FalseR"   RG   R#   R   t   AnsiToWin32R   RI   RK   (   R&   R'   R(   (    (   R&   s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR#      s    	(   R,   R-   R#   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRG      s   t   BaseDownloadProgressBarc           B   s   e  Z e j Z d  Z d Z RS(   s   %(percent)d%%s0   %(downloaded)s %(download_speed)s %(pretty_eta)s(   R,   R-   t   syst   stdoutR   R7   R3   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRO      s   	t   DefaultDownloadProgressBarc           B   s   e  Z RS(    (   R,   R-   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRR      s   t   DownloadSilentBarc           B   s   e  Z RS(    (   R,   R-   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRS      s   t   DownloadBarc           B   s   e  Z RS(    (   R,   R-   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRT      s   t   DownloadFillingCirclesBarc           B   s   e  Z RS(    (   R,   R-   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRU      s   t   DownloadBlueEmojiProgressBarc           B   s   e  Z RS(    (   R,   R-   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRV      s   t   DownloadProgressSpinnerc           B   s)   e  Z e j Z d  Z d   Z d   Z RS(   s!   %(downloaded)s %(download_speed)sc         C   s4   t  |  d  s' t j |  j  |  _ n  t |  j  S(   Nt   _phaser(   t   hasattrt	   itertoolst   cycleR   RX   RA   (   R&   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt
   next_phase   s    c         C   sm   |  j  |  } |  j   } |  j |  } d j | | r; d n d | | rM d n d | g  } |  j |  d  S(   NR<   R2   (   R7   R\   R3   R   t   writeln(   R&   R7   t   phaseR3   t   line(    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyR0      s    (   R,   R-   RP   RQ   R   R3   R\   R0   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyRW      s   		t   offt   ont   asciit   prettyt   emojic         C   sF   | d  k s | d k r* t |  d   j St |  d d |  j Sd  S(   Ni    i   t   max(   R   t	   BAR_TYPESRE   (   t   progress_barRe   (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   DownloadProgressProvider  s    (/   t
   __future__R    RZ   RP   R   R   R   t   pip._vendorR   t   pip._vendor.progress.barR   R   R   t   pip._vendor.progress.spinnerR   t   pip._internal.utils.compatR	   t   pip._internal.utils.loggingR
   t   pip._internal.utils.miscR   t   pip._internal.utils.typingR   t   typingR   R   R   R   t	   ExceptionR   R    t   _BaseBart   objectR!   R/   R1   R6   RG   RO   RR   RS   RT   RU   RV   RW   Rf   Rh   (    (    (    s   /builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_internal/cli/progress_bars.pyt   <module>   sV   
	=*		