Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 88

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 215

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 216

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 217

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 218

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 219

Warning: Cannot modify header information - headers already sent by (output started at /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php:88) in /home/afelisqd/cppseducation.sc.tz/admin/images/photos/17587263121019776732_admin-dbb.php on line 220
PK![Px_user_defined.pycnu[ Rec@sdZddlmZddlZdejfdYZdejfdYZdejfd YZd eejfd YZd eejfd YZej dddej dej dedededeZ dZ eje ZdS(u webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. i(tunicode_literalsNtCodeccBs eZddZddZRS(ustrictcCstj||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pytencodescCstj||tS(N(Rtcharmap_decodetdecoding_table(RRR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pytdecodes(t__name__t __module__RR (((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyRs tIncrementalEncodercBseZedZRS(cCstj||jtdS(Ni(RRRR(RRtfinal((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyRs(R R tFalseR(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyRstIncrementalDecodercBseZedZRS(cCstj||jtdS(Ni(RR RR (RRR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyR $s(R R RR (((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyR#st StreamWritercBseZRS((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/_vendor/webencodings/x_user_defined.pyR(st StreamReadercBseZRS((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/_vendor/webencodings/x_user_defined.pyR,stnameux-user-definedRR tincrementalencodertincrementaldecodert streamreadert streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(t__doc__t __future__RRRRRRRt CodecInfoRR t codec_infoR t charmap_buildR(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyt s$      PK!xqS)S) __init__.pynu[# coding: utf-8 """ webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ from __future__ import unicode_literals import codecs from .labels import LABELS VERSION = '0.5.1' # Some names in Encoding are not valid Python aliases. Remap these. PYTHON_NAMES = { 'iso-8859-8-i': 'iso-8859-8', 'x-mac-cyrillic': 'mac-cyrillic', 'macintosh': 'mac-roman', 'windows-874': 'cp874'} CACHE = {} def ascii_lower(string): r"""Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' """ # This turns out to be faster than unicode.translate() return string.encode('utf8').lower().decode('utf8') def lookup(label): """ Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. """ # Only strip ASCII whitespace: U+0009, U+000A, U+000C, U+000D, and U+0020. label = ascii_lower(label.strip('\t\n\f\r ')) name = LABELS.get(label) if name is None: return None encoding = CACHE.get(name) if encoding is None: if name == 'x-user-defined': from .x_user_defined import codec_info else: python_name = PYTHON_NAMES.get(name, name) # Any python_name value that gets to here should be valid. codec_info = codecs.lookup(python_name) encoding = Encoding(name, codec_info) CACHE[name] = encoding return encoding def _get_encoding(encoding_or_label): """ Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. """ if hasattr(encoding_or_label, 'codec_info'): return encoding_or_label encoding = lookup(encoding_or_label) if encoding is None: raise LookupError('Unknown encoding label: %r' % encoding_or_label) return encoding class Encoding(object): """Reresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. """ def __init__(self, name, codec_info): self.name = name self.codec_info = codec_info def __repr__(self): return '' % self.name #: The UTF-8 encoding. Should be used for new content and formats. UTF8 = lookup('utf-8') _UTF16LE = lookup('utf-16le') _UTF16BE = lookup('utf-16be') def decode(input, fallback_encoding, errors='replace'): """ Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. """ # Fail early if `encoding` is an invalid label. fallback_encoding = _get_encoding(fallback_encoding) bom_encoding, input = _detect_bom(input) encoding = bom_encoding or fallback_encoding return encoding.codec_info.decode(input, errors)[0], encoding def _detect_bom(input): """Return (bom_encoding, input), with any BOM removed from the input.""" if input.startswith(b'\xFF\xFE'): return _UTF16LE, input[2:] if input.startswith(b'\xFE\xFF'): return _UTF16BE, input[2:] if input.startswith(b'\xEF\xBB\xBF'): return UTF8, input[3:] return None, input def encode(input, encoding=UTF8, errors='strict'): """ Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. """ return _get_encoding(encoding).codec_info.encode(input, errors)[0] def iter_decode(input, fallback_encoding, errors='replace'): """ "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. """ decoder = IncrementalDecoder(fallback_encoding, errors) generator = _iter_decode_generator(input, decoder) encoding = next(generator) return generator, encoding def _iter_decode_generator(input, decoder): """Return a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. """ decode = decoder.decode input = iter(input) for chunck in input: output = decode(chunck) if output: assert decoder.encoding is not None yield decoder.encoding yield output break else: # Input exhausted without determining the encoding output = decode(b'', final=True) assert decoder.encoding is not None yield decoder.encoding if output: yield output return for chunck in input: output = decode(chunck) if output: yield output output = decode(b'', final=True) if output: yield output def iter_encode(input, encoding=UTF8, errors='strict'): """ “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. """ # Fail early if `encoding` is an invalid label. encode = IncrementalEncoder(encoding, errors).encode return _iter_encode_generator(input, encode) def _iter_encode_generator(input, encode): for chunck in input: output = encode(chunck) if output: yield output output = encode('', final=True) if output: yield output class IncrementalDecoder(object): """ “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. """ def __init__(self, fallback_encoding, errors='replace'): # Fail early if `encoding` is an invalid label. self._fallback_encoding = _get_encoding(fallback_encoding) self._errors = errors self._buffer = b'' self._decoder = None #: The actual :class:`Encoding` that is being used, #: or :obj:`None` if that is not determined yet. #: (Ie. if there is not enough input yet to determine #: if there is a BOM.) self.encoding = None # Not known yet. def decode(self, input, final=False): """Decode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. """ decoder = self._decoder if decoder is not None: return decoder(input, final) input = self._buffer + input encoding, input = _detect_bom(input) if encoding is None: if len(input) < 3 and not final: # Not enough data yet. self._buffer = input return '' else: # No BOM encoding = self._fallback_encoding decoder = encoding.codec_info.incrementaldecoder(self._errors).decode self._decoder = decoder self.encoding = encoding return decoder(input, final) class IncrementalEncoder(object): """ “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. """ def __init__(self, encoding=UTF8, errors='strict'): encoding = _get_encoding(encoding) self.encode = encoding.codec_info.incrementalencoder(errors).encode PK!ᅞ,, __init__.pyonu[ abc@s6dZddlmZddlZddlmZdZidd6d d 6d d 6d d6ZiZdZ dZ dZ de fdYZ e dZe dZe dZddZdZeddZddZdZeddZdZd e fd!YZd"e fd#YZdS($u webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. i(tunicode_literalsNi(tLABELSu0.5u iso-8859-8u iso-8859-8-iu mac-cyrillicux-mac-cyrillicu mac-romanu macintoshucp874u windows-874cCs|jdjjdS(u9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' uutf8(tencodetlowertdecode(tstring((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt ascii_lower#scCst|jd}tj|}|dkr4dStj|}|dkr|dkrnddlm}n!tj||}t j |}t ||}|t|`_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. u ux-user-definedi(t codec_infoN( RtstripRtgettNonetCACHEtx_user_definedRt PYTHON_NAMEStcodecstlookuptEncoding(tlabeltnametencodingRt python_name((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR=s     cCsBt|dr|St|}|dkr>td|n|S(u Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. u codec_infouUnknown encoding label: %rN(thasattrRR t LookupError(tencoding_or_labelR((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt _get_encoding[s   RcBs eZdZdZdZRS(uOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dS(N(RR(tselfRR((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt__init__|s cCs d|jS(Nu (R(R((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt__repr__s(t__name__t __module__t__doc__RR(((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRms uutf-8uutf-16leuutf-16beureplacecCsGt|}t|\}}|p'|}|jj||d|fS(u Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. i(Rt _detect_bomRR(tinputtfallback_encodingterrorst bom_encodingR((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRs  cCsa|jdrt|dfS|jdr:t|dfS|jdrWt|dfSd|fS(uBReturn (bom_encoding, input), with any BOM removed from the input.sissiN(t startswitht_UTF16LEt_UTF16BEtUTF8R (R ((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRsustrictcCst|jj||dS(u; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. i(RRR(R RR"((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRs cCs4t||}t||}t|}||fS(u "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. (tIncrementalDecodert_iter_decode_generatortnext(R R!R"tdecodert generatorR((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt iter_decodes ccs|j}t|}x]|D])}||}|r|jV|VPqqW|ddt}|jV|rq|VndSx(|D] }||}|r||Vq|q|W|ddt}|r|VndS(uqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. ttfinalN(RtiterRtTrue(R R+Rtchuncktoutput((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR)s(       cCst||j}t||S(uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. (tIncrementalEncoderRt_iter_encode_generator(R RR"R((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt iter_encodes ccsOx(|D] }||}|r|VqqW|ddt}|rK|VndS(NuR/(R1(R RR2R3((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR5s   R(cBs&eZdZddZedZRS(uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. ureplacecCs7t||_||_d|_d|_d|_dS(NR.(Rt_fallback_encodingt_errorst_bufferR t_decoderR(RR!R"((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRs    cCs|j}|dk r"|||S|j|}t|\}}|dkrt|dkrs| rs||_dS|j}n|jj|jj }||_||_ |||S(uDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. iuN( R:R R9RtlenR7RtincrementaldecoderR8RR(RR R/R+R((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR's         (RRRRtFalseR(((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR(s  R4cBseZdZeddZRS(u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. ustrictcCs(t|}|jj|j|_dS(N(RRtincrementalencoderR(RRR"((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRTs (RRRR'R(((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR4Cs(Rt __future__RRtlabelsRtVERSIONR R RRRtobjectRR'R%R&RRRR-R)R6R5R(R4(((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt s4             3PK!K   labels.pycnu[ Rec@sdZidd6dd6dd6dd6dd6dd6dd6dd 6dd6dd 6dd 6dd 6dd 6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd 6dd!6dd"6d#d$6d#d%6d#d#6d#d&6d#d'6d#d(6d#d)6d#d*6d+d,6d+d-6d+d.6d+d/6d+d06d+d16d+d+6d+d26d+d36d+d46d+d56d+d66d+d76d+d86d9d:6d9d;6d9d<6d9d=6d9d>6d9d96d9d?6d9d@6d9dA6d9dB6d9dC6d9dD6dEdF6dEdG6dEdH6dEdE6dEdI6dEdJ6dEdK6dEdL6dEdM6dEdN6dEdO6dPdQ6dPdP6dPdR6dSdT6dSdS6dSdU6dSdV6dSdW6dSdX6dSdY6dZdZ6dZd[6dZd\6d]d]6d]d^6d]d_6d`da6d`d`6d`db6d`dc6d`dd6d`de6dfdf6dgdh6dgdi6dgdj6dgdg6dgdk6dldl6dmdn6dmdo6dmdm6dmdp6dqdr6dqds6dqdt6dqdu6dqdv6dqdq6dwdx6dwdw6dwdy6dzd{6dzdz6dzd|6d}d~6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d}6d}d6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6ZdS(s webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. sutf-8sunicode-1-1-utf-8tutf8tibm866t866tcp866tcsibm866s iso-8859-2t csisolatin2s iso-ir-101s iso8859-2tiso88592s iso_8859-2siso_8859-2:1987tl2tlatin2s iso-8859-3t csisolatin3s iso-ir-109s iso8859-3tiso88593s iso_8859-3siso_8859-3:1988tl3tlatin3s iso-8859-4t csisolatin4s iso-ir-110s iso8859-4tiso88594s iso_8859-4siso_8859-4:1988tl4tlatin4s iso-8859-5tcsisolatincyrillictcyrillics iso-ir-144s iso8859-5tiso88595s iso_8859-5siso_8859-5:1988s iso-8859-6tarabicsasmo-708t csiso88596et csiso88596itcsisolatinarabicsecma-114s iso-8859-6-es iso-8859-6-is iso-ir-127s iso8859-6tiso88596s iso_8859-6siso_8859-6:1987s iso-8859-7tcsisolatingreeksecma-118telot_928tgreektgreek8s iso-ir-126s iso8859-7tiso88597s iso_8859-7siso_8859-7:1987t sun_eu_greeks iso-8859-8t csiso88598etcsisolatinhebrewthebrews iso-8859-8-es iso-ir-138s iso8859-8tiso88598s iso_8859-8siso_8859-8:1988tvisuals iso-8859-8-it csiso88598itlogicals iso-8859-10t csisolatin6s iso-ir-157s iso8859-10t iso885910tl6tlatin6s iso-8859-13s iso8859-13t iso885913s iso-8859-14s iso8859-14t iso885914s iso-8859-15t csisolatin9s iso8859-15t iso885915s iso_8859-15tl9s iso-8859-16skoi8-rtcskoi8rtkoitkoi8tkoi8_rskoi8-ut macintosht csmacintoshtmacs x-mac-romans windows-874sdos-874s iso-8859-11s iso8859-11t iso885911stis-620s windows-1250tcp1250sx-cp1250s windows-1251tcp1251sx-cp1251s windows-1252sansi_x3.4-1968tasciitcp1252tcp819t csisolatin1tibm819s iso-8859-1s iso-ir-100s iso8859-1tiso88591s iso_8859-1siso_8859-1:1987tl1tlatin1sus-asciisx-cp1252s windows-1253tcp1253sx-cp1253s windows-1254tcp1254t csisolatin5s iso-8859-9s iso-ir-148s iso8859-9tiso88599s iso_8859-9siso_8859-9:1989tl5tlatin5sx-cp1254s windows-1255tcp1255sx-cp1255s windows-1256tcp1256sx-cp1256s windows-1257tcp1257sx-cp1257s windows-1258tcp1258sx-cp1258sx-mac-cyrillicsx-mac-ukrainiantgbktchinesetcsgb2312tcsiso58gb231280tgb2312tgb_2312s gb_2312-80s iso-ir-58sx-gbktgb18030s hz-gb-2312tbig5s big5-hkscsscn-big5tcsbig5sx-x-big5seuc-jptcseucpkdfmtjapanesesx-euc-jps iso-2022-jpt csiso2022jpt shift_jist csshiftjistms_kanjis shift-jistsjiss windows-31jsx-sjisseuc-krtcseuckrt csksc56011987s iso-ir-149tkoreansks_c_5601-1987sks_c_5601-1989tksc5601tksc_5601s windows-949s iso-2022-krt csiso2022krsutf-16besutf-16lesutf-16sx-user-definedN(t__doc__tLABELS(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/labels.pyt sPK!P1 mklabels.pynu[""" webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ import json try: from urllib import urlopen except ImportError: from urllib.request import urlopen def assert_lower(string): assert string == string.lower() return string def generate(url): parts = ['''\ """ webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { '''] labels = [ (repr(assert_lower(label)).lstrip('u'), repr(encoding['name']).lstrip('u')) for category in json.loads(urlopen(url).read().decode('ascii')) for encoding in category['encodings'] for label in encoding['labels']] max_len = max(len(label) for label, name in labels) parts.extend( ' %s:%s %s,\n' % (label, ' ' * (max_len - len(label)), name) for label, name in labels) parts.append('}') return ''.join(parts) if __name__ == '__main__': print(generate('http://encoding.spec.whatwg.org/encodings.json')) PK!g8ptests.pynu[# coding: utf-8 """ webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ from __future__ import unicode_literals from . import (lookup, LABELS, decode, encode, iter_decode, iter_encode, IncrementalDecoder, IncrementalEncoder, UTF8) def assert_raises(exception, function, *args, **kwargs): try: function(*args, **kwargs) except exception: return else: # pragma: no cover raise AssertionError('Did not raise %s.' % exception) def test_labels(): assert lookup('utf-8').name == 'utf-8' assert lookup('Utf-8').name == 'utf-8' assert lookup('UTF-8').name == 'utf-8' assert lookup('utf8').name == 'utf-8' assert lookup('utf8').name == 'utf-8' assert lookup('utf8 ').name == 'utf-8' assert lookup(' \r\nutf8\t').name == 'utf-8' assert lookup('u8') is None # Python label. assert lookup('utf-8 ') is None # Non-ASCII white space. assert lookup('US-ASCII').name == 'windows-1252' assert lookup('iso-8859-1').name == 'windows-1252' assert lookup('latin1').name == 'windows-1252' assert lookup('LATIN1').name == 'windows-1252' assert lookup('latin-1') is None assert lookup('LATİN1') is None # ASCII-only case insensitivity. def test_all_labels(): for label in LABELS: assert decode(b'', label) == ('', lookup(label)) assert encode('', label) == b'' for repeat in [0, 1, 12]: output, _ = iter_decode([b''] * repeat, label) assert list(output) == [] assert list(iter_encode([''] * repeat, label)) == [] decoder = IncrementalDecoder(label) assert decoder.decode(b'') == '' assert decoder.decode(b'', final=True) == '' encoder = IncrementalEncoder(label) assert encoder.encode('') == b'' assert encoder.encode('', final=True) == b'' # All encoding names are valid labels too: for name in set(LABELS.values()): assert lookup(name).name == name def test_invalid_label(): assert_raises(LookupError, decode, b'\xEF\xBB\xBF\xc3\xa9', 'invalid') assert_raises(LookupError, encode, 'é', 'invalid') assert_raises(LookupError, iter_decode, [], 'invalid') assert_raises(LookupError, iter_encode, [], 'invalid') assert_raises(LookupError, IncrementalDecoder, 'invalid') assert_raises(LookupError, IncrementalEncoder, 'invalid') def test_decode(): assert decode(b'\x80', 'latin1') == ('€', lookup('latin1')) assert decode(b'\x80', lookup('latin1')) == ('€', lookup('latin1')) assert decode(b'\xc3\xa9', 'utf8') == ('é', lookup('utf8')) assert decode(b'\xc3\xa9', UTF8) == ('é', lookup('utf8')) assert decode(b'\xc3\xa9', 'ascii') == ('é', lookup('ascii')) assert decode(b'\xEF\xBB\xBF\xc3\xa9', 'ascii') == ('é', lookup('utf8')) # UTF-8 with BOM assert decode(b'\xFE\xFF\x00\xe9', 'ascii') == ('é', lookup('utf-16be')) # UTF-16-BE with BOM assert decode(b'\xFF\xFE\xe9\x00', 'ascii') == ('é', lookup('utf-16le')) # UTF-16-LE with BOM assert decode(b'\xFE\xFF\xe9\x00', 'ascii') == ('\ue900', lookup('utf-16be')) assert decode(b'\xFF\xFE\x00\xe9', 'ascii') == ('\ue900', lookup('utf-16le')) assert decode(b'\x00\xe9', 'UTF-16BE') == ('é', lookup('utf-16be')) assert decode(b'\xe9\x00', 'UTF-16LE') == ('é', lookup('utf-16le')) assert decode(b'\xe9\x00', 'UTF-16') == ('é', lookup('utf-16le')) assert decode(b'\xe9\x00', 'UTF-16BE') == ('\ue900', lookup('utf-16be')) assert decode(b'\x00\xe9', 'UTF-16LE') == ('\ue900', lookup('utf-16le')) assert decode(b'\x00\xe9', 'UTF-16') == ('\ue900', lookup('utf-16le')) def test_encode(): assert encode('é', 'latin1') == b'\xe9' assert encode('é', 'utf8') == b'\xc3\xa9' assert encode('é', 'utf8') == b'\xc3\xa9' assert encode('é', 'utf-16') == b'\xe9\x00' assert encode('é', 'utf-16le') == b'\xe9\x00' assert encode('é', 'utf-16be') == b'\x00\xe9' def test_iter_decode(): def iter_decode_to_string(input, fallback_encoding): output, _encoding = iter_decode(input, fallback_encoding) return ''.join(output) assert iter_decode_to_string([], 'latin1') == '' assert iter_decode_to_string([b''], 'latin1') == '' assert iter_decode_to_string([b'\xe9'], 'latin1') == 'é' assert iter_decode_to_string([b'hello'], 'latin1') == 'hello' assert iter_decode_to_string([b'he', b'llo'], 'latin1') == 'hello' assert iter_decode_to_string([b'hell', b'o'], 'latin1') == 'hello' assert iter_decode_to_string([b'\xc3\xa9'], 'latin1') == 'é' assert iter_decode_to_string([b'\xEF\xBB\xBF\xc3\xa9'], 'latin1') == 'é' assert iter_decode_to_string([ b'\xEF\xBB\xBF', b'\xc3', b'\xa9'], 'latin1') == 'é' assert iter_decode_to_string([ b'\xEF\xBB\xBF', b'a', b'\xc3'], 'latin1') == 'a\uFFFD' assert iter_decode_to_string([ b'', b'\xEF', b'', b'', b'\xBB\xBF\xc3', b'\xa9'], 'latin1') == 'é' assert iter_decode_to_string([b'\xEF\xBB\xBF'], 'latin1') == '' assert iter_decode_to_string([b'\xEF\xBB'], 'latin1') == 'ï»' assert iter_decode_to_string([b'\xFE\xFF\x00\xe9'], 'latin1') == 'é' assert iter_decode_to_string([b'\xFF\xFE\xe9\x00'], 'latin1') == 'é' assert iter_decode_to_string([ b'', b'\xFF', b'', b'', b'\xFE\xe9', b'\x00'], 'latin1') == 'é' assert iter_decode_to_string([ b'', b'h\xe9', b'llo'], 'x-user-defined') == 'h\uF7E9llo' def test_iter_encode(): assert b''.join(iter_encode([], 'latin1')) == b'' assert b''.join(iter_encode([''], 'latin1')) == b'' assert b''.join(iter_encode(['é'], 'latin1')) == b'\xe9' assert b''.join(iter_encode(['', 'é', '', ''], 'latin1')) == b'\xe9' assert b''.join(iter_encode(['', 'é', '', ''], 'utf-16')) == b'\xe9\x00' assert b''.join(iter_encode(['', 'é', '', ''], 'utf-16le')) == b'\xe9\x00' assert b''.join(iter_encode(['', 'é', '', ''], 'utf-16be')) == b'\x00\xe9' assert b''.join(iter_encode([ '', 'h\uF7E9', '', 'llo'], 'x-user-defined')) == b'h\xe9llo' def test_x_user_defined(): encoded = b'2,\x0c\x0b\x1aO\xd9#\xcb\x0f\xc9\xbbt\xcf\xa8\xca' decoded = '2,\x0c\x0b\x1aO\uf7d9#\uf7cb\x0f\uf7c9\uf7bbt\uf7cf\uf7a8\uf7ca' encoded = b'aa' decoded = 'aa' assert decode(encoded, 'x-user-defined') == (decoded, lookup('x-user-defined')) assert encode(decoded, 'x-user-defined') == encoded PK!ǭ## labels.pynu[""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { 'unicode-1-1-utf-8': 'utf-8', 'utf-8': 'utf-8', 'utf8': 'utf-8', '866': 'ibm866', 'cp866': 'ibm866', 'csibm866': 'ibm866', 'ibm866': 'ibm866', 'csisolatin2': 'iso-8859-2', 'iso-8859-2': 'iso-8859-2', 'iso-ir-101': 'iso-8859-2', 'iso8859-2': 'iso-8859-2', 'iso88592': 'iso-8859-2', 'iso_8859-2': 'iso-8859-2', 'iso_8859-2:1987': 'iso-8859-2', 'l2': 'iso-8859-2', 'latin2': 'iso-8859-2', 'csisolatin3': 'iso-8859-3', 'iso-8859-3': 'iso-8859-3', 'iso-ir-109': 'iso-8859-3', 'iso8859-3': 'iso-8859-3', 'iso88593': 'iso-8859-3', 'iso_8859-3': 'iso-8859-3', 'iso_8859-3:1988': 'iso-8859-3', 'l3': 'iso-8859-3', 'latin3': 'iso-8859-3', 'csisolatin4': 'iso-8859-4', 'iso-8859-4': 'iso-8859-4', 'iso-ir-110': 'iso-8859-4', 'iso8859-4': 'iso-8859-4', 'iso88594': 'iso-8859-4', 'iso_8859-4': 'iso-8859-4', 'iso_8859-4:1988': 'iso-8859-4', 'l4': 'iso-8859-4', 'latin4': 'iso-8859-4', 'csisolatincyrillic': 'iso-8859-5', 'cyrillic': 'iso-8859-5', 'iso-8859-5': 'iso-8859-5', 'iso-ir-144': 'iso-8859-5', 'iso8859-5': 'iso-8859-5', 'iso88595': 'iso-8859-5', 'iso_8859-5': 'iso-8859-5', 'iso_8859-5:1988': 'iso-8859-5', 'arabic': 'iso-8859-6', 'asmo-708': 'iso-8859-6', 'csiso88596e': 'iso-8859-6', 'csiso88596i': 'iso-8859-6', 'csisolatinarabic': 'iso-8859-6', 'ecma-114': 'iso-8859-6', 'iso-8859-6': 'iso-8859-6', 'iso-8859-6-e': 'iso-8859-6', 'iso-8859-6-i': 'iso-8859-6', 'iso-ir-127': 'iso-8859-6', 'iso8859-6': 'iso-8859-6', 'iso88596': 'iso-8859-6', 'iso_8859-6': 'iso-8859-6', 'iso_8859-6:1987': 'iso-8859-6', 'csisolatingreek': 'iso-8859-7', 'ecma-118': 'iso-8859-7', 'elot_928': 'iso-8859-7', 'greek': 'iso-8859-7', 'greek8': 'iso-8859-7', 'iso-8859-7': 'iso-8859-7', 'iso-ir-126': 'iso-8859-7', 'iso8859-7': 'iso-8859-7', 'iso88597': 'iso-8859-7', 'iso_8859-7': 'iso-8859-7', 'iso_8859-7:1987': 'iso-8859-7', 'sun_eu_greek': 'iso-8859-7', 'csiso88598e': 'iso-8859-8', 'csisolatinhebrew': 'iso-8859-8', 'hebrew': 'iso-8859-8', 'iso-8859-8': 'iso-8859-8', 'iso-8859-8-e': 'iso-8859-8', 'iso-ir-138': 'iso-8859-8', 'iso8859-8': 'iso-8859-8', 'iso88598': 'iso-8859-8', 'iso_8859-8': 'iso-8859-8', 'iso_8859-8:1988': 'iso-8859-8', 'visual': 'iso-8859-8', 'csiso88598i': 'iso-8859-8-i', 'iso-8859-8-i': 'iso-8859-8-i', 'logical': 'iso-8859-8-i', 'csisolatin6': 'iso-8859-10', 'iso-8859-10': 'iso-8859-10', 'iso-ir-157': 'iso-8859-10', 'iso8859-10': 'iso-8859-10', 'iso885910': 'iso-8859-10', 'l6': 'iso-8859-10', 'latin6': 'iso-8859-10', 'iso-8859-13': 'iso-8859-13', 'iso8859-13': 'iso-8859-13', 'iso885913': 'iso-8859-13', 'iso-8859-14': 'iso-8859-14', 'iso8859-14': 'iso-8859-14', 'iso885914': 'iso-8859-14', 'csisolatin9': 'iso-8859-15', 'iso-8859-15': 'iso-8859-15', 'iso8859-15': 'iso-8859-15', 'iso885915': 'iso-8859-15', 'iso_8859-15': 'iso-8859-15', 'l9': 'iso-8859-15', 'iso-8859-16': 'iso-8859-16', 'cskoi8r': 'koi8-r', 'koi': 'koi8-r', 'koi8': 'koi8-r', 'koi8-r': 'koi8-r', 'koi8_r': 'koi8-r', 'koi8-u': 'koi8-u', 'csmacintosh': 'macintosh', 'mac': 'macintosh', 'macintosh': 'macintosh', 'x-mac-roman': 'macintosh', 'dos-874': 'windows-874', 'iso-8859-11': 'windows-874', 'iso8859-11': 'windows-874', 'iso885911': 'windows-874', 'tis-620': 'windows-874', 'windows-874': 'windows-874', 'cp1250': 'windows-1250', 'windows-1250': 'windows-1250', 'x-cp1250': 'windows-1250', 'cp1251': 'windows-1251', 'windows-1251': 'windows-1251', 'x-cp1251': 'windows-1251', 'ansi_x3.4-1968': 'windows-1252', 'ascii': 'windows-1252', 'cp1252': 'windows-1252', 'cp819': 'windows-1252', 'csisolatin1': 'windows-1252', 'ibm819': 'windows-1252', 'iso-8859-1': 'windows-1252', 'iso-ir-100': 'windows-1252', 'iso8859-1': 'windows-1252', 'iso88591': 'windows-1252', 'iso_8859-1': 'windows-1252', 'iso_8859-1:1987': 'windows-1252', 'l1': 'windows-1252', 'latin1': 'windows-1252', 'us-ascii': 'windows-1252', 'windows-1252': 'windows-1252', 'x-cp1252': 'windows-1252', 'cp1253': 'windows-1253', 'windows-1253': 'windows-1253', 'x-cp1253': 'windows-1253', 'cp1254': 'windows-1254', 'csisolatin5': 'windows-1254', 'iso-8859-9': 'windows-1254', 'iso-ir-148': 'windows-1254', 'iso8859-9': 'windows-1254', 'iso88599': 'windows-1254', 'iso_8859-9': 'windows-1254', 'iso_8859-9:1989': 'windows-1254', 'l5': 'windows-1254', 'latin5': 'windows-1254', 'windows-1254': 'windows-1254', 'x-cp1254': 'windows-1254', 'cp1255': 'windows-1255', 'windows-1255': 'windows-1255', 'x-cp1255': 'windows-1255', 'cp1256': 'windows-1256', 'windows-1256': 'windows-1256', 'x-cp1256': 'windows-1256', 'cp1257': 'windows-1257', 'windows-1257': 'windows-1257', 'x-cp1257': 'windows-1257', 'cp1258': 'windows-1258', 'windows-1258': 'windows-1258', 'x-cp1258': 'windows-1258', 'x-mac-cyrillic': 'x-mac-cyrillic', 'x-mac-ukrainian': 'x-mac-cyrillic', 'chinese': 'gbk', 'csgb2312': 'gbk', 'csiso58gb231280': 'gbk', 'gb2312': 'gbk', 'gb_2312': 'gbk', 'gb_2312-80': 'gbk', 'gbk': 'gbk', 'iso-ir-58': 'gbk', 'x-gbk': 'gbk', 'gb18030': 'gb18030', 'hz-gb-2312': 'hz-gb-2312', 'big5': 'big5', 'big5-hkscs': 'big5', 'cn-big5': 'big5', 'csbig5': 'big5', 'x-x-big5': 'big5', 'cseucpkdfmtjapanese': 'euc-jp', 'euc-jp': 'euc-jp', 'x-euc-jp': 'euc-jp', 'csiso2022jp': 'iso-2022-jp', 'iso-2022-jp': 'iso-2022-jp', 'csshiftjis': 'shift_jis', 'ms_kanji': 'shift_jis', 'shift-jis': 'shift_jis', 'shift_jis': 'shift_jis', 'sjis': 'shift_jis', 'windows-31j': 'shift_jis', 'x-sjis': 'shift_jis', 'cseuckr': 'euc-kr', 'csksc56011987': 'euc-kr', 'euc-kr': 'euc-kr', 'iso-ir-149': 'euc-kr', 'korean': 'euc-kr', 'ks_c_5601-1987': 'euc-kr', 'ks_c_5601-1989': 'euc-kr', 'ksc5601': 'euc-kr', 'ksc_5601': 'euc-kr', 'windows-949': 'euc-kr', 'csiso2022kr': 'iso-2022-kr', 'iso-2022-kr': 'iso-2022-kr', 'utf-16be': 'utf-16be', 'utf-16': 'utf-16le', 'utf-16le': 'utf-16le', 'x-user-defined': 'x-user-defined', } PK!2sc3s6|],\}}d|dt||fVqdS(s %s:%s %s, t N(R (R R R (tmax_len(s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pys 4st}t( tjsontloadsRtreadtdecodetreprRtlstriptmaxtextendtappendtjoin(turltpartstcategorytencodingR R((Rs/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pytgenerates (N   t__main__s.http://encoding.spec.whatwg.org/encodings.json( t__doc__RturllibRt ImportErrorturllib.requestRRt__name__(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pyt s    ! PK!  mklabels.pyonu[ abc@szdZddlZyddlmZWn!ek rIddlmZnXdZdZedkrvedGHndS(s webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. iN(turlopencCs|S(N((tstring((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pyt assert_lowerscsdg}gtjt|jjdD]\}|dD]K}|dD]:}tt|jdt|djdf^qJq<q.}td|D|j fd|D|j d d j |S( Ns""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { tasciit encodingstlabelstutnamecss!|]\}}t|VqdS(N(tlen(t.0tlabelR((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pys 2sc3s6|],\}}d|dt||fVqdS(s %s:%s %s, t N(R(R R R(tmax_len(sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pys 4st}t( tjsontloadsRtreadtdecodetreprRtlstriptmaxtextendtappendtjoin(turltpartstcategorytencodingR R((R sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pytgenerates (N   t__main__s.http://encoding.spec.whatwg.org/encodings.json( t__doc__RturllibRt ImportErrorturllib.requestRRt__name__(((sE/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/mklabels.pyt s    ! PK!9*0 tests.pyonu[ abc@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z dZ dZdZdZd Zd Zd Zd Zd ZdS(u webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. i(tunicode_literalsi( tlookuptLABELStdecodetencodet iter_decodet iter_encodetIncrementalDecodertIncrementalEncodertUTF8cOs:y|||Wn|k r%dSXtd|dS(NuDid not raise %s.(tAssertionError(t exceptiontfunctiontargstkwargs((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt assert_raisess  cCsdS(N((((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_labelsscCsx\tD]T}x3dddgD]"}tdg||\}}qWt|}t|}qWxttjD]}qrWdS(Niii t(RRRRtsettvalues(tlabeltrepeattoutputt_tdecodertencodertname((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_all_labels0s   cCsptttddtttddtttgdtttgdtttdtttddS(Nséuinvalidué(Rt LookupErrorRRRRRR(((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_invalid_labelCs cCsdS(N((((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_decodeLscCsdS(N((((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_encodebscCs d}dS(NcSs"t||\}}dj|S(Nu(Rtjoin(tinputtfallback_encodingRt _encoding((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pytiter_decode_to_stringls((R$((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_iter_decodeks cCsdS(N((((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_iter_encodescCsd}d}d}d}dS(Ns2, O#ɻtϨu2, O#ttaauaa((tencodedtdecoded((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_x_user_defineds N(t__doc__t __future__RRRRRRRRRRR RRRRRRR%R&R*(((sB/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt s@     PK!! labels.pyonu[ abc@sdZidd6dd6dd6dd6dd6dd6dd6dd 6dd6dd 6dd 6dd 6dd 6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd 6dd!6dd"6d#d$6d#d%6d#d#6d#d&6d#d'6d#d(6d#d)6d#d*6d+d,6d+d-6d+d.6d+d/6d+d06d+d16d+d+6d+d26d+d36d+d46d+d56d+d66d+d76d+d86d9d:6d9d;6d9d<6d9d=6d9d>6d9d96d9d?6d9d@6d9dA6d9dB6d9dC6d9dD6dEdF6dEdG6dEdH6dEdE6dEdI6dEdJ6dEdK6dEdL6dEdM6dEdN6dEdO6dPdQ6dPdP6dPdR6dSdT6dSdS6dSdU6dSdV6dSdW6dSdX6dSdY6dZdZ6dZd[6dZd\6d]d]6d]d^6d]d_6d`da6d`d`6d`db6d`dc6d`dd6d`de6dfdf6dgdh6dgdi6dgdj6dgdg6dgdk6dldl6dmdn6dmdo6dmdm6dmdp6dqdr6dqds6dqdt6dqdu6dqdv6dqdq6dwdx6dwdw6dwdy6dzd{6dzdz6dzd|6d}d~6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d6d}d}6d}d6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6ZdS(s webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. sutf-8sunicode-1-1-utf-8tutf8tibm866t866tcp866tcsibm866s iso-8859-2t csisolatin2s iso-ir-101s iso8859-2tiso88592s iso_8859-2siso_8859-2:1987tl2tlatin2s iso-8859-3t csisolatin3s iso-ir-109s iso8859-3tiso88593s iso_8859-3siso_8859-3:1988tl3tlatin3s iso-8859-4t csisolatin4s iso-ir-110s iso8859-4tiso88594s iso_8859-4siso_8859-4:1988tl4tlatin4s iso-8859-5tcsisolatincyrillictcyrillics iso-ir-144s iso8859-5tiso88595s iso_8859-5siso_8859-5:1988s iso-8859-6tarabicsasmo-708t csiso88596et csiso88596itcsisolatinarabicsecma-114s iso-8859-6-es iso-8859-6-is iso-ir-127s iso8859-6tiso88596s iso_8859-6siso_8859-6:1987s iso-8859-7tcsisolatingreeksecma-118telot_928tgreektgreek8s iso-ir-126s iso8859-7tiso88597s iso_8859-7siso_8859-7:1987t sun_eu_greeks iso-8859-8t csiso88598etcsisolatinhebrewthebrews iso-8859-8-es iso-ir-138s iso8859-8tiso88598s iso_8859-8siso_8859-8:1988tvisuals iso-8859-8-it csiso88598itlogicals iso-8859-10t csisolatin6s iso-ir-157s iso8859-10t iso885910tl6tlatin6s iso-8859-13s iso8859-13t iso885913s iso-8859-14s iso8859-14t iso885914s iso-8859-15t csisolatin9s iso8859-15t iso885915s iso_8859-15tl9s iso-8859-16skoi8-rtcskoi8rtkoitkoi8tkoi8_rskoi8-ut macintosht csmacintoshtmacs x-mac-romans windows-874sdos-874s iso-8859-11s iso8859-11t iso885911stis-620s windows-1250tcp1250sx-cp1250s windows-1251tcp1251sx-cp1251s windows-1252sansi_x3.4-1968tasciitcp1252tcp819t csisolatin1tibm819s iso-8859-1s iso-ir-100s iso8859-1tiso88591s iso_8859-1siso_8859-1:1987tl1tlatin1sus-asciisx-cp1252s windows-1253tcp1253sx-cp1253s windows-1254tcp1254t csisolatin5s iso-8859-9s iso-ir-148s iso8859-9tiso88599s iso_8859-9siso_8859-9:1989tl5tlatin5sx-cp1254s windows-1255tcp1255sx-cp1255s windows-1256tcp1256sx-cp1256s windows-1257tcp1257sx-cp1257s windows-1258tcp1258sx-cp1258sx-mac-cyrillicsx-mac-ukrainiantgbktchinesetcsgb2312tcsiso58gb231280tgb2312tgb_2312s gb_2312-80s iso-ir-58sx-gbktgb18030s hz-gb-2312tbig5s big5-hkscsscn-big5tcsbig5sx-x-big5seuc-jptcseucpkdfmtjapanesesx-euc-jps iso-2022-jpt csiso2022jpt shift_jist csshiftjistms_kanjis shift-jistsjiss windows-31jsx-sjisseuc-krtcseuckrt csksc56011987s iso-ir-149tkoreansks_c_5601-1987sks_c_5601-1989tksc5601tksc_5601s windows-949s iso-2022-krt csiso2022krsutf-16besutf-16lesutf-16sx-user-definedN(t__doc__tLABELS(((sC/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/labels.pyt sPK!g 6 tests.pycnu[ Rec@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z dZ dZdZdZd Zd Zd Zd Zd ZdS(u webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. i(tunicode_literalsi( tlookuptLABELStdecodetencodet iter_decodet iter_encodetIncrementalDecodertIncrementalEncodertUTF8cOs:y|||Wn|k r%dSXtd|dS(NuDid not raise %s.(tAssertionError(t exceptiontfunctiontargstkwargs((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt assert_raisess  cCstdjdksttdjdks6ttdjdksQttdjdkslttdjdksttdjdksttdjdksttddksttddksttd jd ksttd jd ks#ttd jd ks>ttd jd ksYttddksqttddkstdS(Nuutf-8uUtf-8uUTF-8uutf8uutf8 u utf8 uu8uutf-8 uUS-ASCIIu windows-1252u iso-8859-1ulatin1uLATIN1ulatin-1uLATİN1(RtnameR tNone(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_labelsscCsxVtD]N}td|dt|fks4ttd|dksOtxsdddgD]b}tdg||\}}t|gkstttdg||gks_tq_Wt|}|jddkst|jddt dks tt |}|jddks4t|jddt dkstqWx5t tj D]!}t|j |ksltqlWdS(Ntuiii tfinal(RRRR RRtlistRRtTrueRtsettvaluesR(tlabeltrepeattoutputt_tdecodertencoderR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_all_labels0s ', ! %cCsptttddtttddtttgdtttgdtttdtttddS(Nséuinvalidué(Rt LookupErrorRRRRRR(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_invalid_labelCs cCsztdddtdfks'ttdtddtdfksTttdddtdfks{ttdtdtdfksttdddtdfksttd ddtdfksttd ddtd fksttd ddtd fks>ttdddtd fksettdddtd fksttdddtd fksttdddtd fksttdddtd fksttdddtd fks(ttdddtd fksOttdddtd fksvtdS(Nsulatin1u€séuutf8uéuasciiuésésuutf-16besuutf-16lesussuUTF-16BEsuUTF-16LEuUTF-16(RRR R (((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_decodeLs '-'''''''''''''cCstdddksttdddks6ttdddksQttdddkslttdddksttdd d kstdS( Nuéulatin1suutf8séuutf-16suutf-16leuutf-16bes(RR (((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt test_encodebs cCs>d}|gddks$t|dgddksBt|dgddks`t|dgddks~t|d d gddkst|d d gddkst|d gddkst|dgddkst|dddgddks t|dddgddksDt|ddddddgddksqt|dgddkst|dgddkst|dgddkst|dgddkst|ddddddgddkst|ddd gdd ks:tdS(!NcSs"t||\}}dj|S(Nu(Rtjoin(tinputtfallback_encodingRt _encoding((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pytiter_decode_to_stringlsulatin1uRsuéthellouhellothetllothelltoséuéséssstaua�sssuï»sssssshux-user-defineduhllo(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/_vendor/webencodings/tests.pyttest_iter_decodeks. !!!!**cCsfdjtgddks$tdjtdgddksKtdjtdgddksrtdjtddddgddkstdjtddddgddkstdjtddddgddkstdjtddddgd d ks2tdjtdd dd gd dksbtdS(NRulatin1uuésuutf-16suutf-16leuutf-16besuhulloux-user-definedshllo(R$RR (((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_iter_encodes$''0000 cCs^d}d}d}d}t|d|tdfks?tt|d|ksZtdS(Ns2, O#ɻtϨu2, O#ttaauaaux-user-defined(RRR R(tencodedtdecoded((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyttest_x_user_defineds 'N(t__doc__t __future__RRRRRRRRRRR RRRR!R"R#R/R0R4(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/tests.pyt s@     PK!x_user_defined.pynu[# coding: utf-8 """ webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ from __future__ import unicode_literals import codecs ### Codec APIs class Codec(codecs.Codec): def encode(self, input, errors='strict'): return codecs.charmap_encode(input, errors, encoding_table) def decode(self, input, errors='strict'): return codecs.charmap_decode(input, errors, decoding_table) class IncrementalEncoder(codecs.IncrementalEncoder): def encode(self, input, final=False): return codecs.charmap_encode(input, self.errors, encoding_table)[0] class IncrementalDecoder(codecs.IncrementalDecoder): def decode(self, input, final=False): return codecs.charmap_decode(input, self.errors, decoding_table)[0] class StreamWriter(Codec, codecs.StreamWriter): pass class StreamReader(Codec, codecs.StreamReader): pass ### encodings module API codec_info = codecs.CodecInfo( name='x-user-defined', encode=Codec().encode, decode=Codec().decode, incrementalencoder=IncrementalEncoder, incrementaldecoder=IncrementalDecoder, streamreader=StreamReader, streamwriter=StreamWriter, ) ### Decoding Table # Python 3: # for c in range(256): print(' %r' % chr(c if c < 128 else c + 0xF700)) decoding_table = ( '\x00' '\x01' '\x02' '\x03' '\x04' '\x05' '\x06' '\x07' '\x08' '\t' '\n' '\x0b' '\x0c' '\r' '\x0e' '\x0f' '\x10' '\x11' '\x12' '\x13' '\x14' '\x15' '\x16' '\x17' '\x18' '\x19' '\x1a' '\x1b' '\x1c' '\x1d' '\x1e' '\x1f' ' ' '!' '"' '#' '$' '%' '&' "'" '(' ')' '*' '+' ',' '-' '.' '/' '0' '1' '2' '3' '4' '5' '6' '7' '8' '9' ':' ';' '<' '=' '>' '?' '@' 'A' 'B' 'C' 'D' 'E' 'F' 'G' 'H' 'I' 'J' 'K' 'L' 'M' 'N' 'O' 'P' 'Q' 'R' 'S' 'T' 'U' 'V' 'W' 'X' 'Y' 'Z' '[' '\\' ']' '^' '_' '`' 'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'j' 'k' 'l' 'm' 'n' 'o' 'p' 'q' 'r' 's' 't' 'u' 'v' 'w' 'x' 'y' 'z' '{' '|' '}' '~' '\x7f' '\uf780' '\uf781' '\uf782' '\uf783' '\uf784' '\uf785' '\uf786' '\uf787' '\uf788' '\uf789' '\uf78a' '\uf78b' '\uf78c' '\uf78d' '\uf78e' '\uf78f' '\uf790' '\uf791' '\uf792' '\uf793' '\uf794' '\uf795' '\uf796' '\uf797' '\uf798' '\uf799' '\uf79a' '\uf79b' '\uf79c' '\uf79d' '\uf79e' '\uf79f' '\uf7a0' '\uf7a1' '\uf7a2' '\uf7a3' '\uf7a4' '\uf7a5' '\uf7a6' '\uf7a7' '\uf7a8' '\uf7a9' '\uf7aa' '\uf7ab' '\uf7ac' '\uf7ad' '\uf7ae' '\uf7af' '\uf7b0' '\uf7b1' '\uf7b2' '\uf7b3' '\uf7b4' '\uf7b5' '\uf7b6' '\uf7b7' '\uf7b8' '\uf7b9' '\uf7ba' '\uf7bb' '\uf7bc' '\uf7bd' '\uf7be' '\uf7bf' '\uf7c0' '\uf7c1' '\uf7c2' '\uf7c3' '\uf7c4' '\uf7c5' '\uf7c6' '\uf7c7' '\uf7c8' '\uf7c9' '\uf7ca' '\uf7cb' '\uf7cc' '\uf7cd' '\uf7ce' '\uf7cf' '\uf7d0' '\uf7d1' '\uf7d2' '\uf7d3' '\uf7d4' '\uf7d5' '\uf7d6' '\uf7d7' '\uf7d8' '\uf7d9' '\uf7da' '\uf7db' '\uf7dc' '\uf7dd' '\uf7de' '\uf7df' '\uf7e0' '\uf7e1' '\uf7e2' '\uf7e3' '\uf7e4' '\uf7e5' '\uf7e6' '\uf7e7' '\uf7e8' '\uf7e9' '\uf7ea' '\uf7eb' '\uf7ec' '\uf7ed' '\uf7ee' '\uf7ef' '\uf7f0' '\uf7f1' '\uf7f2' '\uf7f3' '\uf7f4' '\uf7f5' '\uf7f6' '\uf7f7' '\uf7f8' '\uf7f9' '\uf7fa' '\uf7fb' '\uf7fc' '\uf7fd' '\uf7fe' '\uf7ff' ) ### Encoding table encoding_table = codecs.charmap_build(decoding_table) PK!? o`2`2 __init__.pycnu[ Rec@s6dZddlmZddlZddlmZdZidd6d d 6d d 6d d6ZiZdZ dZ dZ de fdYZ e dZe dZe dZddZdZeddZddZdZeddZdZd e fd!YZd"e fd#YZdS($u webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. i(tunicode_literalsNi(tLABELSu0.5.1u iso-8859-8u iso-8859-8-iu mac-cyrillicux-mac-cyrillicu mac-romanu macintoshucp874u windows-874cCs|jdjjdS(u9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' uutf8(tencodetlowertdecode(tstring((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt ascii_lower#scCst|jd}tj|}|dkr4dStj|}|dkr|dkrnddlm}n!tj||}t j |}t ||}|t|`_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. u ux-user-definedi(t codec_infoN( RtstripRtgettNonetCACHEtx_user_definedRt PYTHON_NAMEStcodecstlookuptEncoding(tlabeltnametencodingRt python_name((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR=s     cCsBt|dr|St|}|dkr>td|n|S(u Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. u codec_infouUnknown encoding label: %rN(thasattrRR t LookupError(tencoding_or_labelR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt _get_encoding[s   RcBs eZdZdZdZRS(uOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dS(N(RR(tselfRR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt__init__|s cCs d|jS(Nu (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/_vendor/webencodings/__init__.pyt__repr__s(t__name__t __module__t__doc__RR(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRms uutf-8uutf-16leuutf-16beureplacecCsGt|}t|\}}|p'|}|jj||d|fS(u Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. i(Rt _detect_bomRR(tinputtfallback_encodingterrorst bom_encodingR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRs  cCsa|jdrt|dfS|jdr:t|dfS|jdrWt|dfSd|fS(uBReturn (bom_encoding, input), with any BOM removed from the input.sissiN(t startswitht_UTF16LEt_UTF16BEtUTF8R (R ((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRsustrictcCst|jj||dS(u; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. i(RRR(R RR"((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRs cCs4t||}t||}t|}||fS(u "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. (tIncrementalDecodert_iter_decode_generatortnext(R R!R"tdecodert generatorR((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt iter_decodes ccs|j}t|}x|D]>}||}|r|jdk sIt|jV|VPqqW|ddt}|jdk st|jV|r|VndSx(|D] }||}|r|VqqW|ddt}|r|VndS(uqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. ttfinalN(RtiterRR tAssertionErrortTrue(R R+Rtchuncktoutput((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR)s,       cCst||j}t||S(uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. (tIncrementalEncoderRt_iter_encode_generator(R RR"R((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt iter_encodes ccsOx(|D] }||}|r|VqqW|ddt}|rK|VndS(NuR/(R2(R RR3R4((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR6s   R(cBs&eZdZddZedZRS(uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. ureplacecCs7t||_||_d|_d|_d|_dS(NR.(Rt_fallback_encodingt_errorst_bufferR t_decoderR(RR!R"((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRs    cCs|j}|dk r"|||S|j|}t|\}}|dkrt|dkrs| rs||_dS|j}n|jj|jj }||_||_ |||S(uDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. iuN( R;R R:RtlenR8RtincrementaldecoderR9RR(RR 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/_vendor/webencodings/__init__.pyR's         (RRRRtFalseR(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR(s  R5cBseZdZeddZRS(u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. ustrictcCs(t|}|jj|j|_dS(N(RRtincrementalencoderR(RRR"((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyRTs (RRRR'R(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyR5Cs(Rt __future__RRtlabelsRtVERSIONR R RRRtobjectRR'R%R&RRRR-R)R7R6R(R5(((s/builddir/build/BUILDROOT/alt-python27-pip-20.2.4-5.el8.x86_64/opt/alt/python27/lib/python2.7/site-packages/pip/_vendor/webencodings/__init__.pyt s4             3PK!, , x_user_defined.pyonu[ abc@sdZddlmZddlZdejfdYZdejfdYZdejfd YZd eejfd YZd eejfd YZej dddej dej dedededeZ dZ eje ZdS(u webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. i(tunicode_literalsNtCodeccBs eZddZddZRS(ustrictcCstj||tS(N(tcodecstcharmap_encodetencoding_table(tselftinputterrors((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pytencodescCstj||tS(N(Rtcharmap_decodetdecoding_table(RRR((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pytdecodes(t__name__t __module__RR (((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyRs tIncrementalEncodercBseZedZRS(cCstj||jtdS(Ni(RRRR(RRtfinal((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyRs(R R tFalseR(((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyRstIncrementalDecodercBseZedZRS(cCstj||jtdS(Ni(RR RR (RRR((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyR $s(R R RR (((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyR#st StreamWritercBseZRS((R R (((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyR(st StreamReadercBseZRS((R R (((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyR,stnameux-user-definedRR tincrementalencodertincrementaldecodert streamreadert streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~(t__doc__t __future__RRRRRRRt CodecInfoRR t codec_infoR t charmap_buildR(((sK/usr/lib/python2.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyt s$      PK!rm)# # &__pycache__/tests.cpython-36.opt-1.pycnu[3 Pf@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z ddZ ddZd d Zd d Zd dZddZddZddZddZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8c Os4y|||Wn|k r"dSXtd|dS)NzDid not raise %s.)AssertionError)Z exceptionZfunctionargskwargsr/usr/lib/python3.6/tests.py assert_raisess rcCsdS)Nrrrrr test_labelssrcCsZx>tD]6}x dD]}tdg||\}}qWt|}t|}qWxttjD]}qNWdS)Nrr )rrr)rrr r setvalues)Zlabelrepeatoutput_decoderencodernamerrrtest_all_labels0s  rcCsTtttddtttddtttgdtttgdtttdtttddS)NséZinvalidé)r LookupErrorrrrr r r rrrrtest_invalid_labelCs  r!cCsdS)Nrrrrr test_decodeLsr"cCsdS)Nrrrrr test_encodebsr#cCs dd}dS)NcSst||\}}dj|S)N)rjoin)inputZfallback_encodingrZ _encodingrrriter_decode_to_stringlsz/test_iter_decode..iter_decode_to_stringr)r'rrrtest_iter_decodeksr(cCsdS)Nrrrrrtest_iter_encodesr)cCsd}d}d}d}dS)Ns2, O#ɻtϨu2, O#tsaaZaar)ZencodedZdecodedrrrtest_x_user_defineds r*N)__doc__Z __future__rr$rrrrrr r r r rrrr!r"r#r(r)r*rrrr s ,    PK!G  /__pycache__/x_user_defined.cpython-36.opt-1.pycnu[3 Pf @sdZddlmZddlZGdddejZGdddejZGdd d ejZGd d d eejZGd d d eejZej dej ej eeeedZ dZ eje ZdS)z webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsNc@s eZdZdddZdddZdS) CodecstrictcCstj||tS)N)codecscharmap_encodeencoding_table)selfinputerrorsr $/usr/lib/python3.6/x_user_defined.pyencodesz Codec.encodecCstj||tS)N)rcharmap_decodedecoding_table)rr r r r r decodesz Codec.decodeN)r)r)__name__ __module__ __qualname__r rr r r r rs rc@seZdZdddZdS)IncrementalEncoderFcCstj||jtdS)Nr)rrr r)rr finalr r r r szIncrementalEncoder.encodeN)F)rrrr r r r r rsrc@seZdZdddZdS)IncrementalDecoderFcCstj||jtdS)Nr)rrr r)rr rr r r r$szIncrementalDecoder.decodeN)F)rrrrr r r r r#src@s eZdZdS) StreamWriterN)rrrr r r r r(src@s eZdZdS) StreamReaderN)rrrr r r r r,srzx-user-defined)namer rincrementalencoderincrementaldecoder streamreader streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__Z __future__rrrrrrr CodecInfor rZ codec_infor charmap_buildrr r r r  s&   PK!b )__pycache__/x_user_defined.cpython-36.pycnu[3 Re @sdZddlmZddlZGdddejZGdddejZGdd d ejZGd d d eejZGd d d eejZej dej ej eeeedZ dZ eje ZdS)z webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsNc@s eZdZdddZdddZdS) CodecstrictcCstj||tS)N)codecscharmap_encodeencoding_table)selfinputerrorsr /builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/webencodings/x_user_defined.pyencodesz Codec.encodecCstj||tS)N)rcharmap_decodedecoding_table)rr r r r r decodesz Codec.decodeN)r)r)__name__ __module__ __qualname__r rr r r r rs rc@seZdZdddZdS)IncrementalEncoderFcCstj||jtdS)Nr)rrr r)rr finalr r r r szIncrementalEncoder.encodeN)F)rrrr r r r r rsrc@seZdZdddZdS)IncrementalDecoderFcCstj||jtdS)Nr)rrr r)rr rr r r r$szIncrementalDecoder.decodeN)F)rrrrr r r r r#src@s eZdZdS) StreamWriterN)rrrr r r r r(src@s eZdZdS) StreamReaderN)rrrr r r r r,srzx-user-defined)namer rincrementalencoderincrementaldecoder streamreader streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__ __future__rrrrrrr CodecInfor r codec_infor charmap_buildrr r r r  s&   PK!$'__pycache__/labels.cpython-36.opt-1.pycnu[3 Pf#@sdZddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d d d d d d d d d d d d d d d d d d d d d d d d d d dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d!d!d!d!d!d"d"d"d#d#d$d$d$d$d$d$d$d%d%d%d%d%d%d%d%d%d%d&d&d'd(d(d)d*Zd+S),z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. zutf-8ibm866z iso-8859-2z iso-8859-3z iso-8859-4z iso-8859-5z iso-8859-6z iso-8859-7z iso-8859-8z iso-8859-8-iz iso-8859-10z iso-8859-13z iso-8859-14z iso-8859-15z iso-8859-16zkoi8-rzkoi8-u macintoshz windows-874z windows-1250z windows-1251z windows-1252z windows-1253z windows-1254z windows-1255z windows-1256z windows-1257z windows-1258zx-mac-cyrillicgbkgb18030z hz-gb-2312big5zeuc-jpz iso-2022-jp shift_jiszeuc-krz iso-2022-krzutf-16bezutf-16lezx-user-defined)zunicode-1-1-utf-8zutf-8utf8866cp866csibm866r csisolatin2z iso-8859-2z iso-ir-101z iso8859-2Ziso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3z iso-8859-3z iso-ir-109z iso8859-3Ziso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4z iso-8859-4z iso-ir-110z iso8859-4Ziso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrilliccyrillicz iso-8859-5z iso-ir-144z iso8859-5Ziso88595z iso_8859-5ziso_8859-5:1988arabiczasmo-708Z csiso88596eZ csiso88596icsisolatinarabiczecma-114z iso-8859-6z iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6Ziso88596z iso_8859-6ziso_8859-6:1987csisolatingreekzecma-118elot_928greekgreek8z iso-8859-7z iso-ir-126z iso8859-7Ziso88597z iso_8859-7ziso_8859-7:1987Z sun_eu_greekZ csiso88598ecsisolatinhebrewhebrewz iso-8859-8z iso-8859-8-ez iso-ir-138z iso8859-8Ziso88598z iso_8859-8ziso_8859-8:1988ZvisualZ csiso88598iz iso-8859-8-iZlogical csisolatin6z iso-8859-10z iso-ir-157z iso8859-10Z iso885910l6latin6z iso-8859-13z iso8859-13Z iso885913z iso-8859-14z iso8859-14Z iso885914Z csisolatin9z iso-8859-15z iso8859-15Z iso885915z iso_8859-15l9z iso-8859-16cskoi8rZkoiZkoi8zkoi8-rkoi8_rzkoi8-uZ csmacintoshZmacrz x-mac-romanzdos-874z iso-8859-11z iso8859-11Z iso885911ztis-620z windows-874cp1250z windows-1250zx-cp1250cp1251z windows-1251zx-cp1251zansi_x3.4-1968asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1Ziso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciiz windows-1252zx-cp1252cp1253z windows-1253zx-cp1253cp1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9Ziso88599z iso_8859-9ziso_8859-9:1989l5latin5z windows-1254zx-cp1254cp1255z windows-1255zx-cp1255cp1256z windows-1256zx-cp1256cp1257z windows-1257zx-cp1257cp1258z windows-1258zx-cp1258zx-mac-cyrilliczx-mac-ukrainianchineseZcsgb2312csiso58gb231280gb2312Zgb_2312z gb_2312-80rz iso-ir-58zx-gbkrz hz-gb-2312rz big5-hkscszcn-big5csbig5zx-x-big5Zcseucpkdfmtjapanesezeuc-jpzx-euc-jp csiso2022jpz iso-2022-jp csshiftjisms_kanjiz shift-jisrsjisz windows-31jzx-sjisZcseuckrZ csksc56011987zeuc-krz iso-ir-149koreanzks_c_5601-1987zks_c_5601-1989ksc5601Zksc_5601z windows-949 csiso2022krz iso-2022-krzutf-16bezutf-16zutf-16lezx-user-definedN)__doc__ZLABELSrBrB/usr/lib/python3.6/labels.py sPK!]b!__pycache__/labels.cpython-36.pycnu[3 Re#@sdZddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d d d d d d d d d d d d d d d d d d d d d d d d d d dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d!d!d!d!d!d"d"d"d#d#d$d$d$d$d$d$d$d%d%d%d%d%d%d%d%d%d%d&d&d'd(d(d)d*Zd+S),z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. zutf-8ibm866z iso-8859-2z iso-8859-3z iso-8859-4z iso-8859-5z iso-8859-6z iso-8859-7z iso-8859-8z iso-8859-8-iz iso-8859-10z iso-8859-13z iso-8859-14z iso-8859-15z iso-8859-16zkoi8-rzkoi8-u macintoshz windows-874z windows-1250z windows-1251z windows-1252z windows-1253z windows-1254z windows-1255z windows-1256z windows-1257z windows-1258zx-mac-cyrillicgbkgb18030z hz-gb-2312big5zeuc-jpz iso-2022-jp shift_jiszeuc-krz iso-2022-krzutf-16bezutf-16lezx-user-defined)zunicode-1-1-utf-8zutf-8utf8866cp866csibm866r csisolatin2z iso-8859-2z iso-ir-101z iso8859-2iso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3z iso-8859-3z iso-ir-109z iso8859-3iso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4z iso-8859-4z iso-ir-110z iso8859-4iso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrilliccyrillicz iso-8859-5z iso-ir-144z iso8859-5iso88595z iso_8859-5ziso_8859-5:1988arabiczasmo-708 csiso88596e csiso88596icsisolatinarabiczecma-114z iso-8859-6z iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6iso88596z iso_8859-6ziso_8859-6:1987csisolatingreekzecma-118elot_928greekgreek8z iso-8859-7z iso-ir-126z iso8859-7iso88597z iso_8859-7ziso_8859-7:1987 sun_eu_greek csiso88598ecsisolatinhebrewhebrewz iso-8859-8z iso-8859-8-ez iso-ir-138z iso8859-8iso88598z iso_8859-8ziso_8859-8:1988visual csiso88598iz iso-8859-8-ilogical csisolatin6z iso-8859-10z iso-ir-157z iso8859-10 iso885910l6latin6z iso-8859-13z iso8859-13 iso885913z iso-8859-14z iso8859-14 iso885914 csisolatin9z iso-8859-15z iso8859-15 iso885915z iso_8859-15l9z iso-8859-16cskoi8rkoikoi8zkoi8-rkoi8_rzkoi8-u csmacintoshmacrz x-mac-romanzdos-874z iso-8859-11z iso8859-11 iso885911ztis-620z windows-874cp1250z windows-1250zx-cp1250cp1251z windows-1251zx-cp1251zansi_x3.4-1968asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1iso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciiz windows-1252zx-cp1252cp1253z windows-1253zx-cp1253cp1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9iso88599z iso_8859-9ziso_8859-9:1989l5latin5z windows-1254zx-cp1254cp1255z windows-1255zx-cp1255cp1256z windows-1256zx-cp1256cp1257z windows-1257zx-cp1257cp1258z windows-1258zx-cp1258zx-mac-cyrilliczx-mac-ukrainianchinesecsgb2312csiso58gb231280gb2312gb_2312z gb_2312-80rz iso-ir-58zx-gbkrz hz-gb-2312rz big5-hkscszcn-big5csbig5zx-x-big5cseucpkdfmtjapanesezeuc-jpzx-euc-jp csiso2022jpz iso-2022-jp csshiftjisms_kanjiz shift-jisrsjisz windows-31jzx-sjiscseuckr csksc56011987zeuc-krz iso-ir-149koreanzks_c_5601-1987zks_c_5601-1989ksc5601ksc_5601z windows-949 csiso2022krz iso-2022-krzutf-16bezutf-16zutf-16lezx-user-definedN)__doc__LABELSrcrc/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/webencodings/labels.py sPK!NĬ#__pycache__/mklabels.cpython-36.pycnu[3 Re @sfdZddlZyddlmZWn ek r<ddlmZYnXddZddZedkrbe ed dS) z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopencCs||jkst|S)N)lowerAssertionError)stringr/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/webencodings/mklabels.py assert_lowersrcsfdg}ddtjt|jjdD}tdd|D|jfdd|D|jdd j|S) Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { cSsLg|]D}|dD]6}|dD](}tt|jdt|djdfqqqS) encodingslabelsuname)reprrlstrip).0categoryencodinglabelrrr -s zgenerate..asciicss|]\}}t|VqdS)N)len)rrr rrr 2szgenerate..c3s,|]$\}}d|dt||fVqdS)z %s:%s %s,  N)r)rrr )max_lenrrr4s}) jsonloadsrreaddecodemaxextendappendjoin)urlpartsr r)rrgenerates   r%__main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__rurllibr ImportErrorurllib.requestrr%__name__printrrrr s!PK!x __pycache__/tests.cpython-36.pycnu[3 Re@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z ddZ ddZd d Zd d Zd dZddZddZddZddZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8c Os4y|||Wn|k r"dSXtd|dS)NzDid not raise %s.)AssertionError) exceptionfunctionargskwargsr/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/webencodings/tests.py assert_raisess rcCs tdjdksttdjdks$ttdjdks6ttdjdksHttdjdksZttdjdkslttdjdks~ttddksttddksttd jd ksttd jd ksttd jd ksttd jd ksttddksttddkstdS)Nzutf-8zUtf-8zUTF-8utf8zutf8 z utf8 u8uutf-8 zUS-ASCIIz windows-1252z iso-8859-1latin1ZLATIN1zlatin-1uLATİN1)rnamer rrrr test_labelssrcCsxtD]}td|dt|fks$ttd|dks6txLdD]D}tdg||\}}t|gksdtttdg||gks.iter_decode_to_stringrrrr/r)shelloZhellosheslloshelloséuésésaua�ssuï»sssshzx-user-defineduhllo)r )r5rrrtest_iter_decodeks.r=cCsdjtgddkstdjtdgddks2tdjtdgddksLtdjtddddgddksltdjtddddgddkstdjtddddgddkstdjtddddgd d kstdjtdd dd gd dkstdS)Nrrrr)r/zutf-16szutf-16lezutf-16besuhZllozx-user-definedshllo)r1r r rrrrtest_iter_encodes    r>cCs@d}d}d}d}t|d|tdfks*tt|d|ksrArrrr s ,    PK! K%%#__pycache__/__init__.cpython-36.pycnu[3 ReS)@sdZddlmZddlZddlmZdZddd d d ZiZd d Z ddZ ddZ Gddde Z e dZe dZe dZd+ddZddZedfddZd,dd Zd!d"Zedfd#d$Zd%d&ZGd'd(d(e ZGd)d*d*e ZdS)-a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5.1z iso-8859-8z mac-cyrillicz mac-romancp874)z iso-8859-8-izx-mac-cyrillic macintoshz windows-874cCs|jdjjdS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)stringr /builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el8.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_vendor/webencodings/__init__.py ascii_lower#srcCsxt|jd}tj|}|dkr$dStj|}|dkrt|dkrLddlm}ntj||}tj |}t ||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) rstriprgetCACHEx_user_definedr PYTHON_NAMEScodecslookupEncoding)labelnameencodingr python_namer r r r=s      rcCs.t|dr|St|}|dkr*td||S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)encoding_or_labelrr r r _get_encoding[s  rc@s eZdZdZddZddZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dS)N)rr)selfrrr r r __init__|szEncoding.__init__cCs d|jS)Nz )r)r r r r __repr__szEncoding.__repr__N)__name__ __module__ __qualname____doc__r!r"r r r r rmsrzutf-8zutf-16lezutf-16bereplacecCs2t|}t|\}}|p|}|jj||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r _detect_bomrr )inputfallback_encodingerrors bom_encodingrr r r r s r cCsV|jdrt|ddfS|jdr4t|ddfS|jdrNt|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r)r r r r(s   r(strictcCst|jj||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)rrr)r)rr+r r r rs rcCs$t||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r)r*r+decoder generatorrr r r iter_decodes  r9ccs|j}t|}xf|D].}||}|r|jdk s2t|jV|VPqW|ddd}|jdk s`t|jV|rr|VdSx|D]}||}|r||Vq|W|ddd}|r|VdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. NT)final)r iterrAssertionError)r)r7r chunckoutputr r r r5s,     r5cCst||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr_iter_encode_generator)r)rr+rr r r iter_encodes rBccs:x|D]}||}|r|VqW|ddd}|r6|VdS)NT)r;r )r)rr>r?r r r rAs   rAc@s$eZdZdZd ddZd ddZdS) r4uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r'cCs&t||_||_d|_d|_d|_dS)Nr:)r_fallback_encoding_errors_buffer_decoderr)r r*r+r r r r!s  zIncrementalDecoder.__init__FcCs~|j}|dk r|||S|j|}t|\}}|dkrXt|dkrR| rR||_dS|j}|jj|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr.rC) rGrFr(lenrDrincrementaldecoderrEr r)r r)r;r7rr r r r 's    zIncrementalDecoder.decodeN)r')F)r#r$r%r&r!r r r r r r4s  r4c@seZdZdZedfddZdS)r@u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r3cCst|}|jj|j|_dS)N)rrincrementalencoderr)r rr+r r r r!TszIncrementalEncoder.__init__N)r#r$r%r&r2r!r r r r r@Csr@)r')r')r& __future__rrlabelsrVERSIONrrrrrobjectrr2r0r1r r(rr9r5rBrAr4r@r r r r  s2       3PK!OǴH%H%)__pycache__/__init__.cpython-36.opt-1.pycnu[3 PfP)@sdZddlmZddlZddlmZdZddd d d ZiZd d Z ddZ ddZ Gddde Z e dZe dZe dZd+ddZddZedfddZd,dd Zd!d"Zedfd#d$Zd%d&ZGd'd(d(e ZGd)d*d*e ZdS)-a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5z iso-8859-8z mac-cyrillicz mac-romanZcp874)z iso-8859-8-izx-mac-cyrillic macintoshz windows-874cCs|jdjjdS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)stringr /usr/lib/python3.6/__init__.py ascii_lower#sr cCsxt|jd}tj|}|dkr$dStj|}|dkrt|dkrLddlm}ntj||}tj |}t ||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) r striprgetCACHEZx_user_definedr PYTHON_NAMEScodecslookupEncoding)ZlabelnameencodingrZ python_namer r r r=s      rcCs.t|dr|St|}|dkr*td||S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)Zencoding_or_labelrr r r _get_encoding[s  rc@s eZdZdZddZddZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dS)N)rr)selfrrr r r __init__|szEncoding.__init__cCs d|jS)Nz )r)rr r r __repr__szEncoding.__repr__N)__name__ __module__ __qualname____doc__rrr r r r rmsrzutf-8zutf-16lezutf-16bereplacecCs2t|}t|\}}|p|}|jj||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r _detect_bomrr )inputfallback_encodingerrorsZ bom_encodingrr r r r s r cCsV|jdrt|ddfS|jdr4t|ddfS|jdrNt|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r$r r r r#s   r#strictcCst|jj||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)rrr)r$rr&r r r rs rcCs$t||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r$r%r&decoder generatorrr r r iter_decodes  r3ccs|j}t|}xJ|D] }||}|r|jV|VPqW|ddd}|jV|rV|VdSx|D]}||}|r`|Vq`W|ddd}|r|VdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. T)finalN)r iterr)r$r1r chunckoutputr r r r/s(     r/cCst||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr_iter_encode_generator)r$rr&rr r r iter_encodes r;ccs:x|D]}||}|r|VqW|ddd}|r6|VdS)NT)r5r )r$rr7r8r r r r:s   r:c@s$eZdZdZd ddZd ddZdS) r.uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r"cCs&t||_||_d|_d|_d|_dS)Nr4)r_fallback_encoding_errors_buffer_decoderr)rr%r&r r r rs  zIncrementalDecoder.__init__FcCs~|j}|dk r|||S|j|}t|\}}|dkrXt|dkrR| rR||_dS|j}|jj|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr(r<) r@r?r#lenr=rincrementaldecoderr>r r)rr$r5r1rr r r r 's    zIncrementalDecoder.decodeN)r")F)rrr r!rr r r r r r.s  r.c@seZdZdZedfddZdS)r9u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r-cCst|}|jj|j|_dS)N)rrincrementalencoderr)rrr&r r r rTszIncrementalEncoder.__init__N)rrr r!r,rr r r r r9Csr9)r")r")r!Z __future__rrZlabelsrVERSIONrrr rrobjectrr,r*r+r r#rr3r/r;r:r.r9r r r r  s2       3PK!Uh)__pycache__/mklabels.cpython-36.opt-1.pycnu[3 Pf @sfdZddlZyddlmZWn ek r<ddlmZYnXddZddZedkrbe ed dS) z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopencCs|S)N)stringrr/usr/lib/python3.6/mklabels.py assert_lowersrcsfdg}ddtjt|jjdD}tdd|D|jfdd|D|jdd j|S) Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { cSsLg|]D}|dD]6}|dD](}tt|jdt|djdfqqqS)Z encodingslabelsuname)reprrlstrip).0categoryencodinglabelrrr -s zgenerate..asciicss|]\}}t|VqdS)N)len)r rr rrr 2szgenerate..c3s,|]$\}}d|dt||fVqdS)z %s:%s %s,  N)r)r rr )max_lenrrr4s}) jsonloadsrreaddecodemaxextendappendjoin)Zurlpartsrr)rrgenerates   r!__main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__rZurllibr ImportErrorZurllib.requestrr!__name__printrrrr s!PK!ԽG G /__pycache__/x_user_defined.cpython-38.opt-1.pycnu[U .e @sdZddlmZddlZGdddejZGdddejZGdd d ejZGd d d eejZGd d d eejZej dej ej eeeedZ dZ ee ZdS)z webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsNc@s eZdZdddZdddZdS) CodecstrictcCst||tSN)codecscharmap_encodeencoding_tableselfinputerrorsr K/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/x_user_defined.pyencodesz Codec.encodecCst||tSr)rcharmap_decodedecoding_tabler r r rdecodesz Codec.decodeN)r)r)__name__ __module__ __qualname__rrr r r rrs rc@seZdZdddZdS)IncrementalEncoderFcCst||jtdSNr)rrr rr r finalr r rrszIncrementalEncoder.encodeN)F)rrrrr r r rrsrc@seZdZdddZdS)IncrementalDecoderFcCst||jtdSr)rrr rrr r rr$szIncrementalDecoder.decodeN)F)rrrrr r r rr#src@s eZdZdS) StreamWriterNrrrr r r rr(src@s eZdZdS) StreamReaderNrr r r rr,srzx-user-defined)namerrincrementalencoderincrementaldecoder streamreader streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__Z __future__rrrrrrr CodecInforrZ codec_infor charmap_buildrr r r rs*  PK!O'__pycache__/labels.cpython-38.opt-1.pycnu[U .e#@sdZddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d d d d d d d d d d d d d d d d d d d d d d d d d d dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d!d!d!d!d!d"d"d"d#d#d$d$d$d$d$d$d$d%d%d%d%d%d%d%d%d%d%d&d&d'd(d(d)d*Zd+S),z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. utf-8ibm866 iso-8859-2 iso-8859-3 iso-8859-4 iso-8859-5 iso-8859-6 iso-8859-7 iso-8859-8 iso-8859-8-i iso-8859-10 iso-8859-13 iso-8859-14 iso-8859-15 iso-8859-16koi8-rkoi8-u macintosh windows-874 windows-1250 windows-1251 windows-1252 windows-1253 windows-1254 windows-1255 windows-1256 windows-1257 windows-1258x-mac-cyrillicgbkgb18030 hz-gb-2312big5euc-jp iso-2022-jp shift_jiseuc-kr iso-2022-krutf-16beutf-16lex-user-defined)zunicode-1-1-utf-8rutf8866cp866csibm866r csisolatin2rz iso-ir-101z iso8859-2Ziso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3rz iso-ir-109z iso8859-3Ziso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4rz iso-ir-110z iso8859-4Ziso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrilliccyrillicrz iso-ir-144z iso8859-5Ziso88595z iso_8859-5ziso_8859-5:1988arabiczasmo-708Z csiso88596eZ csiso88596icsisolatinarabiczecma-114rz iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6Ziso88596z iso_8859-6ziso_8859-6:1987csisolatingreekzecma-118elot_928greekgreek8rz iso-ir-126z iso8859-7Ziso88597z iso_8859-7ziso_8859-7:1987Z sun_eu_greekZ csiso88598ecsisolatinhebrewhebrewr z iso-8859-8-ez iso-ir-138z iso8859-8Ziso88598z iso_8859-8ziso_8859-8:1988ZvisualZ csiso88598ir Zlogical csisolatin6r z iso-ir-157z iso8859-10Z iso885910l6latin6r z iso8859-13Z iso885913r z iso8859-14Z iso885914Z csisolatin9rz iso8859-15Z iso885915z iso_8859-15l9rcskoi8rZkoiZkoi8rkoi8_rrZ csmacintoshZmacrz x-mac-romanzdos-874z iso-8859-11z iso8859-11Z iso885911ztis-620rcp1250rzx-cp1250cp1251rzx-cp1251zansi_x3.4-1968asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1Ziso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciirzx-cp1252cp1253rzx-cp1253cp1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9Ziso88599z iso_8859-9ziso_8859-9:1989l5latin5rzx-cp1254cp1255rzx-cp1255cp1256rzx-cp1256cp1257rzx-cp1257cp1258rzx-cp1258rzx-mac-ukrainianchineseZcsgb2312csiso58gb231280gb2312Zgb_2312z gb_2312-80rz iso-ir-58zx-gbkrr r!z big5-hkscszcn-big5csbig5zx-x-big5Zcseucpkdfmtjapaneser"zx-euc-jp csiso2022jpr# csshiftjisms_kanjiz shift-jisr$sjisz windows-31jzx-sjisZcseuckrZ csksc56011987r%z iso-ir-149koreanzks_c_5601-1987zks_c_5601-1989ksc5601Zksc_5601z windows-949 csiso2022krr&r'zutf-16r(r)N)__doc__ZLABELSrereC/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/labels.pysPK!(/g g &__pycache__/tests.cpython-38.opt-1.pycnu[U .e@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z ddZ ddZd d Zd d Zd dZddZddZddZddZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8cOs6z|||Wn|k r$YdSXtd|dS)NzDid not raise %s.)AssertionError)Z exceptionZfunctionargskwargsrB/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/tests.py assert_raisess rcCsdSNrrrrr test_labelssrcCsNtD]2}dD]}tdg||\}}q t|}t|}qttD]}qDdS)N)rr )rrr r setvalues)Zlabelrepeatoutput_decoderencodernamerrrtest_all_labels0srcCsTtttddtttddtttgdtttgdtttdtttddS)NséZinvalidé)r LookupErrorrrrr r r rrrrtest_invalid_labelCs  r"cCsdSrrrrrr test_decodeLsr#cCsdSrrrrrr test_encodebsr$cCs dd}dS)NcSst||\}}d|S)N)rjoin)inputZfallback_encodingrZ _encodingrrriter_decode_to_stringlsz/test_iter_decode..iter_decode_to_stringr)r(rrrtest_iter_decodeksr)cCsdSrrrrrrtest_iter_encodesr*cCsd}d}d}d}dS)Ns2, O#ɻtϨu2, O#tsaaZaar)ZencodedZdecodedrrrtest_x_user_defineds r+N)__doc__Z __future__rr%rrrrrr r r r rrrr"r#r$r)r*r+rrrrs ,    PK!%%)__pycache__/__init__.cpython-38.opt-1.pycnu[U .eS)@sdZddlmZddlZddlmZdZddd d d ZiZd d Z ddZ ddZ Gddde Z e dZe dZe dZd+ddZddZedfddZd,dd Zd!d"Zedfd#d$Zd%d&ZGd'd(d(e ZGd)d*d*e ZdS)-a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5.1z iso-8859-8z mac-cyrillicz mac-romanZcp874)z iso-8859-8-izx-mac-cyrillic macintoshz windows-874cCs|ddS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)stringr E/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/__init__.py ascii_lower#sr cCsxt|d}t|}|dkr$dSt|}|dkrt|dkrLddlm}nt||}t |}t ||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) r striprgetCACHEZx_user_definedr PYTHON_NAMEScodecslookupEncoding)ZlabelnameencodingrZ python_namer r r r=s      rcCs.t|dr|St|}|dkr*td||S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)Zencoding_or_labelrr r r _get_encoding[s  rc@s eZdZdZddZddZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dSN)rr)selfrrr r r __init__|szEncoding.__init__cCs d|jS)Nz )r)rr r r __repr__szEncoding.__repr__N)__name__ __module__ __qualname____doc__rrr r r r rmsrzutf-8zutf-16lezutf-16bereplacecCs2t|}t|\}}|p|}|j||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r _detect_bomrr )inputfallback_encodingerrorsZ bom_encodingrr r r r s r cCsV|drt|ddfS|dr4t|ddfS|drNt|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r%r r r r$s   r$strictcCst|j||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)rrr)r%rr'r r r rs rcCs$t||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r%r&r'decoder generatorrr r r iter_decodes  r4ccs|j}t|}|D]"}||}|r|jV|VqXq|ddd}|jV|rT|VdS|D]}||}|r\|Vq\|ddd}|r|VdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. TfinalN)r iterr)r%r2r chunckoutputr r r r0s(  r0cCst||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr_iter_encode_generator)r%rr'rr r r iter_encodes r=ccs6|D]}||}|r|Vq|ddd}|r2|VdS)NTr6r )r%rr9r:r r r r<s r<c@s$eZdZdZd ddZd ddZdS) r/uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r#cCs&t||_||_d|_d|_d|_dS)Nr5)r_fallback_encoding_errors_buffer_decoderr)rr&r'r r r rs  zIncrementalDecoder.__init__FcCs||j}|dk r|||S|j|}t|\}}|dkrVt|dkrP|sP||_dS|j}|j|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr)r>) rBrAr$lenr?rincrementaldecoderr@r r)rr%r7r2rr r r r 's    zIncrementalDecoder.decodeN)r#)F)rr r!r"rr r r r r r/s r/c@seZdZdZedfddZdS)r;u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r.cCst|}|j|j|_dSr)rrincrementalencoderr)rrr'r r r rTszIncrementalEncoder.__init__N)rr r!r"r-rr r r r r;Csr;)r#)r#)r"Z __future__rrlabelsrZVERSIONrrr rrobjectrr-r+r,r r$rr4r0r=r<r/r;r r r r s4       3PK!Fii#__pycache__/mklabels.cpython-38.pycnu[U .e@sfdZddlZzddlmZWn ek r<ddlmZYnXddZddZedkrbe ed dS) z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopencCs||kst|SN)lowerAssertionError)stringrE/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/mklabels.py assert_lowersr csfdg}ddtt|dD}tdd|D|fdd|D|dd |S) Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { cSsLg|]D}|dD]6}|dD](}tt|dt|ddfqqqS)Z encodingslabelsuname)reprr lstrip).0categoryencodinglabelrrr ,s  zgenerate..asciicss|]\}}t|VqdSrlenrrr rrr 2szgenerate..c3s,|]$\}}d|dt||fVqdS)z %s:%s %s,  NrrZmax_lenrrr3s}) jsonloadsrreaddecodemaxextendappendjoin)Zurlpartsr rrrgenerates r&__main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__rZurllibr ImportErrorZurllib.requestr r&__name__printrrrrs !PK!O!__pycache__/labels.cpython-38.pycnu[U .e#@sdZddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d d d d d d d d d d d d d d d d d d d d d d d d d d dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d!d!d!d!d!d"d"d"d#d#d$d$d$d$d$d$d$d%d%d%d%d%d%d%d%d%d%d&d&d'd(d(d)d*Zd+S),z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. utf-8ibm866 iso-8859-2 iso-8859-3 iso-8859-4 iso-8859-5 iso-8859-6 iso-8859-7 iso-8859-8 iso-8859-8-i iso-8859-10 iso-8859-13 iso-8859-14 iso-8859-15 iso-8859-16koi8-rkoi8-u macintosh windows-874 windows-1250 windows-1251 windows-1252 windows-1253 windows-1254 windows-1255 windows-1256 windows-1257 windows-1258x-mac-cyrillicgbkgb18030 hz-gb-2312big5euc-jp iso-2022-jp shift_jiseuc-kr iso-2022-krutf-16beutf-16lex-user-defined)zunicode-1-1-utf-8rutf8866cp866csibm866r csisolatin2rz iso-ir-101z iso8859-2Ziso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3rz iso-ir-109z iso8859-3Ziso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4rz iso-ir-110z iso8859-4Ziso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrilliccyrillicrz iso-ir-144z iso8859-5Ziso88595z iso_8859-5ziso_8859-5:1988arabiczasmo-708Z csiso88596eZ csiso88596icsisolatinarabiczecma-114rz iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6Ziso88596z iso_8859-6ziso_8859-6:1987csisolatingreekzecma-118elot_928greekgreek8rz iso-ir-126z iso8859-7Ziso88597z iso_8859-7ziso_8859-7:1987Z sun_eu_greekZ csiso88598ecsisolatinhebrewhebrewr z iso-8859-8-ez iso-ir-138z iso8859-8Ziso88598z iso_8859-8ziso_8859-8:1988ZvisualZ csiso88598ir Zlogical csisolatin6r z iso-ir-157z iso8859-10Z iso885910l6latin6r z iso8859-13Z iso885913r z iso8859-14Z iso885914Z csisolatin9rz iso8859-15Z iso885915z iso_8859-15l9rcskoi8rZkoiZkoi8rkoi8_rrZ csmacintoshZmacrz x-mac-romanzdos-874z iso-8859-11z iso8859-11Z iso885911ztis-620rcp1250rzx-cp1250cp1251rzx-cp1251zansi_x3.4-1968asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1Ziso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciirzx-cp1252cp1253rzx-cp1253cp1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9Ziso88599z iso_8859-9ziso_8859-9:1989l5latin5rzx-cp1254cp1255rzx-cp1255cp1256rzx-cp1256cp1257rzx-cp1257cp1258rzx-cp1258rzx-mac-ukrainianchineseZcsgb2312csiso58gb231280gb2312Zgb_2312z gb_2312-80rz iso-ir-58zx-gbkrr r!z big5-hkscszcn-big5csbig5zx-x-big5Zcseucpkdfmtjapaneser"zx-euc-jp csiso2022jpr# csshiftjisms_kanjiz shift-jisr$sjisz windows-31jzx-sjisZcseuckrZ csksc56011987r%z iso-ir-149koreanzks_c_5601-1987zks_c_5601-1989ksc5601Zksc_5601z windows-949 csiso2022krr&r'zutf-16r(r)N)__doc__ZLABELSrereC/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/labels.pysPK!ТY __pycache__/tests.cpython-38.pycnu[U .e@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z ddZ ddZd d Zd d Zd dZddZddZddZddZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8cOs6z|||Wn|k r$YdSXtd|dS)NzDid not raise %s.AssertionError)Z exceptionZfunctionargskwargsrB/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/tests.py assert_raisess rcCs tdjdksttdjdks$ttdjdks6ttdjdksHttdjdksZttdjdkslttdjdks~ttddksttddksttd jd ksttd jd ksttd jd ksttd jd ksttddksttddkstdS)Nzutf-8zUtf-8zUTF-8utf8zutf8 z utf8 u8uutf-8 zUS-ASCIIz windows-1252z iso-8859-1latin1ZLATIN1zlatin-1uLATİN1)rnamerrrrr test_labelssrcCstD]}td|dt|fks"ttd|dks4tdD]D}tdg||\}}t|gks`tttdg||gks8tq8t|}|ddkst|jddddkstt |}|ddkst|jddddkstqt t D]}t|j |kstqdS)N)rr T)final) rrrrrrlistr r r setvaluesr)Zlabelrepeatoutput_decoderencoderrrrrtest_all_labels0sr%cCsTtttddtttddtttgdtttgdtttdtttddS)NéZinvalidé)r LookupErrorrrrr r r rrrrtest_invalid_labelCs  r)cCstdddtdfksttdtddtdfks8ttdddtdfksRttdtdtdfkslttdddtdfksttd ddtdfksttd ddtd fksttd ddtd fksttdddtd fksttdddtd fks ttdddtd fks&ttdddtd fksBttdddtd fks^ttdddtd fkszttdddtd fksttdddtd fkstdS)Nru€érr'asciiér&utf-16beutf-16lesuszUTF-16BEzUTF-16LEzUTF-16)rrrr rrrr test_decodeLs r4cCsptdddksttdddks$ttdddks6ttdddksHttdddksZttdd d ksltdS) Nr'rrr+utf-16r3r1r/r2)rrrrrr test_encodebs r7cCsdd}|gddkst|dgddks.t|dgddksBt|dgdd ksVt|d d gdd kslt|d d gdd kst|dgddkst|dgddkst|dddgddkst|dddgddkst|ddddddgddkst|dgddkst|dgddks$t|dgddks:t|dgddksPt|ddddddgddkspt|ddd gd d!kstdS)"NcSst||\}}d|S)Nr)rjoin)inputZfallback_encodingr!Z _encodingrrriter_decode_to_stringlsz/test_iter_decode..iter_decode_to_stringrrrr5r'shelloZhellosheslloshellor+r-r&saua�ssuï»r.r0sshx-user-defineduhllor )r:rrrtest_iter_decodeks rCcCsdtgddkstdtdgddks2tdtdgddksLtdtddddgddksltdtddddgddkstdtddddgddkstdtddddgd d kstdtdd dd gd dkstdS)Nrrrr'r5r6r3r1r/r2uhZllorBshllo)r8r rrrrrtest_iter_encodes"    rDcCs@d}d}d}d}t|d|tdfks*tt|d|kss ,    PK!ԽG G )__pycache__/x_user_defined.cpython-38.pycnu[U .e @sdZddlmZddlZGdddejZGdddejZGdd d ejZGd d d eejZGd d d eejZej dej ej eeeedZ dZ ee ZdS)z webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsNc@s eZdZdddZdddZdS) CodecstrictcCst||tSN)codecscharmap_encodeencoding_tableselfinputerrorsr K/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/x_user_defined.pyencodesz Codec.encodecCst||tSr)rcharmap_decodedecoding_tabler r r rdecodesz Codec.decodeN)r)r)__name__ __module__ __qualname__rrr r r rrs rc@seZdZdddZdS)IncrementalEncoderFcCst||jtdSNr)rrr rr r finalr r rrszIncrementalEncoder.encodeN)F)rrrrr r r rrsrc@seZdZdddZdS)IncrementalDecoderFcCst||jtdSr)rrr rrr r rr$szIncrementalDecoder.decodeN)F)rrrrr r r rr#src@s eZdZdS) StreamWriterNrrrr r r rr(src@s eZdZdS) StreamReaderNrr r r rr,srzx-user-defined)namerrincrementalencoderincrementaldecoder streamreader streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__Z __future__rrrrrrr CodecInforrZ codec_infor charmap_buildrr r r rs*  PK!7CC)__pycache__/mklabels.cpython-38.opt-1.pycnu[U .e@sfdZddlZzddlmZWn ek r<ddlmZYnXddZddZedkrbe ed dS) z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopencCs|SN)stringrrE/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/mklabels.py assert_lowersrcsfdg}ddtt|dD}tdd|D|fdd|D|dd |S) Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { cSsLg|]D}|dD]6}|dD](}tt|dt|ddfqqqS)Z encodingslabelsuname)reprrlstrip).0categoryencodinglabelrrr ,s  zgenerate..asciicss|]\}}t|VqdSrlenr rr rrr 2szgenerate..c3s,|]$\}}d|dt||fVqdS)z %s:%s %s,  NrrZmax_lenrrr3s}) jsonloadsrreaddecodemaxextendappendjoin)Zurlpartsrrrrgenerates r$__main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__rZurllibr ImportErrorZurllib.requestrr$__name__printrrrrs !PK!3%%#__pycache__/__init__.cpython-38.pycnu[U .eS)@sdZddlmZddlZddlmZdZddd d d ZiZd d Z ddZ ddZ Gddde Z e dZe dZe dZd+ddZddZedfddZd,dd Zd!d"Zedfd#d$Zd%d&ZGd'd(d(e ZGd)d*d*e ZdS)-a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5.1z iso-8859-8z mac-cyrillicz mac-romanZcp874)z iso-8859-8-izx-mac-cyrillic macintoshz windows-874cCs|ddS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)stringr E/usr/lib/python3.8/site-packages/pip/_vendor/webencodings/__init__.py ascii_lower#sr cCsxt|d}t|}|dkr$dSt|}|dkrt|dkrLddlm}nt||}t |}t ||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) r striprgetCACHEZx_user_definedr PYTHON_NAMEScodecslookupEncoding)ZlabelnameencodingrZ python_namer r r r=s      rcCs.t|dr|St|}|dkr*td||S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)Zencoding_or_labelrr r r _get_encoding[s  rc@s eZdZdZddZddZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dSN)rr)selfrrr r r __init__|szEncoding.__init__cCs d|jS)Nz )r)rr r r __repr__szEncoding.__repr__N)__name__ __module__ __qualname____doc__rrr r r r rmsrzutf-8zutf-16lezutf-16bereplacecCs2t|}t|\}}|p|}|j||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r _detect_bomrr )inputfallback_encodingerrorsZ bom_encodingrr r r r s r cCsV|drt|ddfS|dr4t|ddfS|drNt|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r%r r r r$s   r$strictcCst|j||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)rrr)r%rr'r r r rs rcCs$t||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r%r&r'decoder generatorrr r r iter_decodes  r4ccs|j}t|}|D]0}||}|r|jdk s0t|jV|Vqtq|ddd}|jdk s^t|jV|rp|VdS|D]}||}|rx|Vqx|ddd}|r|VdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. NTfinal)r iterrAssertionError)r%r2r chunckoutputr r r r0s,  r0cCst||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr_iter_encode_generator)r%rr'rr r r iter_encodes r>ccs6|D]}||}|r|Vq|ddd}|r2|VdS)NTr6r )r%rr:r;r r r r=s r=c@s$eZdZdZd ddZd ddZdS) r/uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r#cCs&t||_||_d|_d|_d|_dS)Nr5)r_fallback_encoding_errors_buffer_decoderr)rr&r'r r r rs  zIncrementalDecoder.__init__FcCs||j}|dk r|||S|j|}t|\}}|dkrVt|dkrP|sP||_dS|j}|j|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr)r?) rCrBr$lenr@rincrementaldecoderrAr r)rr%r7r2rr r r r 's    zIncrementalDecoder.decodeN)r#)F)rr r!r"rr r r r r r/s r/c@seZdZdZedfddZdS)r<u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r.cCst|}|j|j|_dSr)rrincrementalencoderr)rrr'r r r rTszIncrementalEncoder.__init__N)rr r!r"r-rr r r r r<Csr<)r#)r#)r"Z __future__rrlabelsrZVERSIONrrr rrobjectrr-r+r,r r$rr4r0r>r=r/r<r r r r s4       3PK!C@~ $__pycache__/mklabels.cpython-311.pycnu[ ^idZddlZ ddlmZn#e$r ddlmZYnwxYwdZdZedkre eddSdS)z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopenc:||ksJ|SN)lower)strings /builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/webencodings/mklabels.py assert_lowerr s V\\^^ # # # # Mcrdg}dtjt|dD}t d|D|fd|D|dd|S)Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { c g|]o}|dD]d}|dD]Y}tt|dt|ddfZepS) encodingslabelsuname)reprr lstrip).0categoryencodinglabels r zgenerate..,s)))  - )) h' ))  l5!! " " ) )# . . hv   & &s + + -)))))r asciic3:K|]\}}t|VdSrlen)rrrs r zgenerate..2s,77#e**777777r c 3\K|]&\}}d|ddt|z zd|dV'dS)z : z, Nr)rrrmax_lens rrzgenerate..3sb## E44#UUC7SZZ+?$@$@$@$$$G######r }) jsonloadsrreaddecodemaxextendappendjoin)urlpartsrr s @rgenerater-s E$)) 73<<#4#4#6#6#=#=g#F#FGG)))F 7777777G LL####!###### LL 775>>r __main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__r#urllibr ImportErrorurllib.requestr r-__name__printr rr6s   ''''&&&&&&&&' B z E((C D DEEEEEs  PK!oHM++!__pycache__/tests.cpython-311.pycnu[ ^ixdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z dZ dZdZdZd Zd Zd Zd Zd ZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8cP ||i|td|z#|$rYdSwxYw)NzDid not raise %s.)AssertionError) exceptionfunctionargskwargss /builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/webencodings/tests.py assert_raisesrsV>$!&!!!09<=== s %%ctdjdksJtdjdksJtdjdksJtdjdksJtdjdksJtdjdksJtdjdksJtdJtdJtd jd ksJtd jd ksJtd jd ksJtd jd ksJtdJtdJdS)Nzutf-8zUtf-8zUTF-8utf8zutf8 z utf8 u8uutf-8 zUS-ASCIIz windows-1252z iso-8859-1latin1LATIN1zlatin-1uLATİN1)rnamer test_labelsrs~ '?? 7 * * * * '?? 7 * * * * '?? 7 * * * * &>> ' ) ) ) ) &>> ' ) ) ) ) '?? 7 * * * * - % 0 0 0 0 $<<    )   $ $ $ *   "n 4 4 4 4 ,   $ 6 6 6 6 (   N 2 2 2 2 (   N 2 2 2 2 )   $ $ $ )   $ $ $ $ $rctD]$}td|dt|fksJtd|dksJdD]U}t dg|z|\}}t |gksJt t dg|z|gksJVt|}|ddksJ|dddksJt|}|ddksJ|dddksJ&ttj D]}t|j |ksJdS)Nr)rr T)final) rrrrr listr r r setvaluesr)labelrepeatoutput_decoderencoderrs rtest_all_labelsr,0s 5 5c5!!b&--%88888b%  C''''  A AF#SEFNE::IFA<<2%%%% RD6M599::b@@@@@$U++~~c""b((((~~c~.."4444$U++~~b!!S((((~~b~--44444FMOO$$))d|| D((((())rcRtttddtttddtttgdttt gdttt dtttddS)Néinvalidé)r LookupErrorrrr r r r rrrtest_invalid_labelr2Cs+v'> JJJ+vtY777+{B :::+{B :::+19===+19=====rctdddtdfksJtdtddtdfksJtdddtdfksJtdtdtdfksJtdddtdfksJtd ddtdfksJtd ddtd fksJtd ddtd fksJtdddtd fksJtdddtd fksJtdddtd fksJtdddtd fksJtdddtd fksJtdddtd fksJtdddtd fksJtdddtd fksJdS)Nru€érr0asciiér.utf-16beutf-16lesuszUTF-16BEzUTF-16LEzUTF-16)rrr rrr test_decoder>Ls '8 $ $x0@0@(A A A A A '6(++ , ,x8H8H0I I I I I +v & &4*@ @ @ @ @ +t $ $vf~~(> > > > > +w ' 'FF7OO+D D D D D )7 3 3fVnn7M M M M M %w / /D&:L:L3M M M M M %w / /D&:L:L3M M M M M %w / /HfZ>P>P3Q Q Q Q Q %w / /HfZ>P>P3Q Q Q Q Q +z * *tVJ5G5G.H H H H H +z * *tVJ5G5G.H H H H H +x ( (T6*3E3E,F F F F F +z * *x 9K9K.L L L L L +z * *x 9K9K.L L L L L +x ( (Xvj7I7I,J J J J J J JrctdddksJtdddksJtdddksJtdddksJtdddksJtdd d ksJdS) Nr0rrr5utf-16r=r;r9r<)rrrr test_encoderBbs $ ! !W , , , , $  ; . . . . $  ; . . . . $ ! ![ 0 0 0 0 $ # #{ 2 2 2 2 $ # #{ 2 2 2 2 2 2rcd}|gddksJ|dgddksJ|dgddksJ|dgddksJ|d d gddksJ|d d gddksJ|d gddksJ|dgddksJ|gdddksJ|gdddksJ|gdddksJ|dgddksJ|dgddksJ|dgddksJ|dgddksJ|gdddksJ|gdddksJdS)NcRt||\}}d|S)Nr )r join)inputfallback_encodingr( _encodings riter_decode_to_stringz/test_iter_decode..iter_decode_to_stringls''/@AA wwvrrr rr@r0shellohelloshelloshellor5r7r.))rMarNua�)rrrsrOrMsuï»r8r:)rrrs)rshrKx-user-defineduhllor)rIs rtest_iter_decoderUks ! X . ." 4 4 4 4 # 1 1R 7 7 7 7 'H 5 5 = = = = (X 6 6' A A A A %( ; ;w F F F F '4( ; ;w F F F F + 9 9V C C C C "9!:H E E M M M M "+"+"+,4 6 69= > > > > "("("()1 3 36? @ @ @ @ ":":":;C E EHL M M M M /!2H = = C C C C + 9 9V C C C C "5!6 A AT I I I I "5!6 A AT I I I I "6"6"67? A ADH I I I I """ 0 2 25A B B B B B BrcdtgddksJdtdgddksJdtdgddksJdtgdddksJdtgdddksJdtgdd dksJdtgdd d ksJdtgd d dksJdS)Nrrr r0r@)r r0r r rAr=r;r9r<)r uhr llorTshllo)rEr rrrtest_iter_encoderXs 88KH-- . .# 5 5 5 5 88Kh// 0 0C 7 7 7 7 88K11 2 2g = = = = 88K 2 2 2H== > >' I I I I 88K 2 2 2H== > >+ M M M M 88K 2 2 2J?? @ @K O O O O 88K 2 2 2J?? @ @K O O O O 88K!"!"!"#355 6 69D E E E E E Ercd}d}d}d}t|d|tdfksJt|d|ksJdS)Ns2, O#ɻtϨu2, O#tsaaaarT)rrr)encodeddecodeds rtest_x_user_definedr]sbBGOGGG '+ , ,&AQ:R:R0S S S S S '+ , , 7 7 7 7 7 7rN)__doc__ __future__rr rrrrr r r r r rrr,r2r>rBrUrXr]rrrr`s+  ('''''======================>>>%%%&)))&>>>KKK,333BBB8 E E E88888rPK!W22$__pycache__/__init__.cpython-311.pycnu[ ^iS)"dZddlmZddlZddlmZdZddd d d ZiZd Z d Z dZ Gdde Z e dZe dZe dZd!dZdZedfdZd!dZdZedfdZdZGdde ZGdd e ZdS)"a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5.1z iso-8859-8z mac-cyrillicz mac-romancp874)z iso-8859-8-izx-mac-cyrillic macintoshz windows-874cv|ddS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)strings /builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/webencodings/__init__.py ascii_lowerr#s0. == & & ( ( / / 7 77c^t|d}tj|}|dSt|}|V|dkrddlm}n/t||}tj |}t||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) rstriprgetCACHEx_user_definedr PYTHON_NAMEScodecslookupEncoding)labelnameencodingr python_names rrr=s  K00 1 1E :e  D |tyyH # # # 2 2 2 2 2 2 2&**466K{33JD*--d Orcpt|dr|St|}|td|z|S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)encoding_or_labelrs r _get_encodingr#[sK ,//!  '((H69JJKKK OrceZdZdZdZdZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. c"||_||_dSN)rr)selfrrs r__init__zEncoding.__init__|s $rcd|jzS)Nz )r)r's r__repr__zEncoding.__repr__s**rN)__name__ __module__ __qualname____doc__r(r*rrrrms<  %%%+++++rrzutf-8zutf-16lezutf-16bereplacect|}t|\}}|p|}|j||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r# _detect_bomrr )inputfallback_encodingerrors bom_encodingrs rr r sS &&788%e,,L%00H   % %eV 4 4Q 7 AArc|drt|ddfS|drt|ddfS|drt|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r3s rr2r2s  $$#qrr""  $$#qrr"" ((U122Y ;rstrictc^t|j||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)r#rr )r3rr5s rr r s*  " " - 4 4UF C CA FFrcht||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r3r4r5decoder generatorrs r iter_decoderFs9,!!2F;;G&ug66IIH h rc#.K|j}t|}|D]'}||}|r|jJ|jV|Vn((|dd}|jJ|jV|r|VdS|D]}||}|r|V|dd}|r|VdSdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. NrTfinal)r iterr)r3rDr chunckoutputs rrBrBs ^F KKE  #///" " " "LLL E  4(((+++  LLL  LLL VCt $ $ $F  rcLt||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr _iter_encode_generator)r3rr5r s r iter_encoderPs& & 1 1 8F !% 0 00rc#`K|D]}||}|r|V|dd}|r|VdSdS)NTrHr/)r3r rKrLs rrOrOsg  LLL VBd # # #F  rc"eZdZdZddZddZdS) rAuO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r0cft||_||_d|_d|_d|_dS)Nr)r#_fallback_encoding_errors_buffer_decoderr)r'r4r5s rr(zIncrementalDecoder.__init__s5"/0A"B"B    rFc.|j}| |||S|j|z}t|\}}|%t|dkr |s ||_dS|j}|j|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr9rR) rXrWr2lenrUrincrementaldecoderrVr r)r'r3rIrDrs rr zIncrementalDecoder.decode's-  75%(( ( u$%e,,%  5zzA~~e~$ r2%88FFM   wue$$$rNr0)F)r+r,r-r.r(r r/rrrArAsF      %%%%%%rrAceZdZdZedfdZdS)rNu “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r>clt|}|j|j|_dSr&)r#rincrementalencoderr )r'rr5s rr(zIncrementalEncoder.__init__Ts. **)<rds  ('''''   !$  8884<$+++++v+++0vg 6*   6*  BBBB,  G G G G8@!%X 1 1 1 1 0%0%0%0%0%0%0%0%fLLLLLLLLLLrPK!u"__pycache__/labels.cpython-311.pycnu[ ^i# dZidddddddddddddddd d d d d d d d d d d dd dd dd ddiddddddddddddddddddddddddddddd dd!dd"did#d$d%d$d$d$d&d$d'd$d(d$d)d$d*d$d+d,d-d,d.d,d/d,d0d,d1d,d,d,d2d,d3d,id4d,d5d,d6d,d7d,d8d,d9d:d;d:dd:d:d:d?d:d@d:dAd:dBd:dCd:dDd:idEdFdGdFdHdFdFdFdIdFdJdFdKdFdLdFdMdFdNdFdOdFdPdQdQdQdRdQdSdTdTdTdUdTidVdTdWdTdXdTdYdTdZdZd[dZd\dZd]d]d^d]d_d]d`dadadadbdadcdadddadedadfdfidgdhdidhdjdhdhdhdkdhdldldmdndodndndndpdndqdrdsdrdtdrdudrdvdrdrdrdwdxidxdxdydxdzd{d{d{d|d{d}d~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~idd~dd~dd~d~d~dd~ddddddddddddddddddddddddiddddddddddddddddddddddddddddddddddiddddddddddddddddddddddddddddddddddiddddddddddddddddddddddddȓddȓddȓddȓddȓddȓdddddddddddќ ZdS)z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. zunicode-1-1-utf-8zutf-8utf8866ibm866cp866csibm866 csisolatin2z iso-8859-2z iso-ir-101z iso8859-2iso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3z iso-8859-3z iso-ir-109z iso8859-3iso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4z iso-8859-4z iso-ir-110z iso8859-4iso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrillicz iso-8859-5cyrillicz iso-ir-144z iso8859-5iso88595z iso_8859-5ziso_8859-5:1988arabicz iso-8859-6zasmo-708 csiso88596e csiso88596icsisolatinarabiczecma-114z iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6iso88596z iso_8859-6ziso_8859-6:1987csisolatingreekz iso-8859-7zecma-118elot_928greekgreek8z iso-ir-126z iso8859-7iso88597z iso_8859-7ziso_8859-7:1987 sun_eu_greek csiso88598ez iso-8859-8csisolatinhebrewhebrewz iso-8859-8-ez iso-ir-138z iso8859-8iso88598z iso_8859-8ziso_8859-8:1988visual csiso88598iz iso-8859-8-ilogical csisolatin6z iso-8859-10z iso-ir-157z iso8859-10 iso885910l6latin6z iso-8859-13z iso8859-13 iso885913z iso-8859-14z iso8859-14 iso885914 csisolatin9z iso-8859-15z iso8859-15 iso885915z iso_8859-15l9z iso-8859-16cskoi8rzkoi8-rkoikoi8koi8_rzkoi8-u csmacintosh macintoshmacz x-mac-romanzdos-874z windows-874z iso-8859-11z iso8859-11 iso885911ztis-620cp1250z windows-1250zx-cp1250cp1251z windows-1251zx-cp1251zansi_x3.4-1968z windows-1252asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1iso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciizx-cp1252cp1253z windows-1253zx-cp1253cp1254z windows-1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9iso88599z iso_8859-9ziso_8859-9:1989l5latin5zx-cp1254cp1255z windows-1255zx-cp1255cp1256z windows-1256zx-cp1256cp1257z windows-1257zx-cp1257cp1258z windows-1258zx-cp1258zx-mac-cyrilliczx-mac-ukrainianchinesegbkcsgb2312csiso58gb231280gb2312gb_2312z gb_2312-80z iso-ir-58zx-gbkgb18030z hz-gb-2312big5z big5-hkscszcn-big5csbig5zx-x-big5cseucpkdfmtjapanesezeuc-jpzx-euc-jp csiso2022jpz iso-2022-jp csshiftjis shift_jisms_kanjiz shift-jissjisz windows-31jzx-sjiscseuckrzeuc-kr csksc56011987z iso-ir-149koreanzks_c_5601-1987 iso-2022-krutf-16beutf-16lex-user-defined) zks_c_5601-1989ksc5601ksc_5601z windows-949 csiso2022krr_r`zutf-16rarbN)__doc__LABELS/builddir/build/BUILDROOT/alt-python311-pip-21.3.1-4.el8.x86_64/opt/alt/python311/lib/python3.11/site-packages/pip/_vendor/webencodings/labels.pyrks   W 7W  7W  7W  8 W   8 W  8 W  8W <W <W <W <W <W <W <W  <W   aW b>cW d>eW f=gW h=iW j=kW W W l=mW n=oW p =qW r =sW t=uW v=wW x=yW z={W |=}W ~=W @=AW B=CW D=EW F=GW H=IW J =KW L=MW W W N8OW P 8QW R 8SW T 8UW V 8WW X 8YW Z;[W \ ;]W ^;_W `;aW b=cW d=eW f=gW h=iW j=kW l=mW n >oW W W p>qW r>sW t >uW v>wW x>yW z>{W | >}W ~ >W @ >AW B>CW D >EW F>GW H>IW J>KW L>MW N>OW P>QW W W R >SW T >UW V>WW X>YW Z>[W \ >]W ^>_W `>aW b >cW d>eW f>gW h>iW j>kW l>mW n>oW p>qW r >sW W W t >uW v>wW x>yW z >{W |>}W ~>W @ >AW B>CW D>EW F >GW H>IW J>KW L >MW N>OW P>QW R+SW T+UW W W V5WW X5YW Z5[W \ 5]W ^5_W `5aW b 5cW d5eW f 5gW h9iW j?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__ __future__rr rrr&r)r- CodecInforr codec_infor charmap_buildr rrrr8s  (''''' DDDDDFLDDDLLLLL2LLL LLLLL2LLL      5&-        5&-   V   577> 577>))  H&%n55rPK!X  )__pycache__/x_user_defined.cpython-35.pycnu[ Re@sdZddlmZddlZGdddejZGdddejZGdd d ejZGd d d eejZGd d d eejZej dddej dej dedededeZ dZ eje ZdS)z webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsNc@s.eZdZdddZdddZdS)CodecstrictcCstj||tS)N)codecscharmap_encodeencoding_table)selfinputerrorsr /builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/webencodings/x_user_defined.pyencodesz Codec.encodecCstj||tS)N)rcharmap_decodedecoding_table)rr r r r r decodesz Codec.decodeN)__name__ __module__ __qualname__r rr r r r rs rc@seZdZdddZdS)IncrementalEncoderFcCstj||jtdS)Nr)rrr r)rr finalr r r r szIncrementalEncoder.encodeN)rrrr r r r r rs rc@seZdZdddZdS)IncrementalDecoderFcCstj||jtdS)Nr)rrr r)rr rr r r r$szIncrementalDecoder.decodeN)rrrrr r r r r#s rc@seZdZdS) StreamWriterN)rrrr r r r r(s rc@seZdZdS) StreamReaderN)rrrr r r r r,s rnamezx-user-definedr rincrementalencoderincrementaldecoder streamreader streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__ __future__rrrrrrr CodecInfor r codec_infor charmap_buildrr r r r  s$      PK!Ch!__pycache__/labels.cpython-35.pycnu[ Re#@sdZdddddddddddddddd d d d d d d d d d d dd dd dd ddddddddddddddddddddddddddddddd dd!dd"dd#d$d%d$d$d$d&d$d'd$d(d$d)d$d*d$d+d,d-d,d.d,d/d,d0d,d1d,d,d,d2d,d3d,d4d,d5d,d6d,d7d,d8d,d9d:d;d:d<d:d=d:d>d:d:d:d?d:d@d:dAd:dBd:dCd:dDd:dEdFdGdFdHdFdFdFdIdFdJdFdKdFdLdFdMdFdNdFdOdFdPdQdQdQdRdQdSdTdTdTdUdTdVdTdWdTdXdTdYdTdZdZd[dZd\dZd]d]d^d]d_d]d`dadadadbdadcdadddadedadfdfdgdhdidhdjdhdhdhdkdhdldldmdndodndndndpdndqdrdsdrdtdrdudrdvdrdrdrdwdxdxdxdydxdzd{d{d{d|d{d}d~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~dd~d~d~dd~ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddiZdS)z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. zunicode-1-1-utf-8zutf-8utf8866ibm866cp866csibm866 csisolatin2z iso-8859-2z iso-ir-101z iso8859-2iso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3z iso-8859-3z iso-ir-109z iso8859-3iso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4z iso-8859-4z iso-ir-110z iso8859-4iso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrillicz iso-8859-5cyrillicz iso-ir-144z iso8859-5iso88595z iso_8859-5ziso_8859-5:1988arabicz iso-8859-6zasmo-708 csiso88596e csiso88596icsisolatinarabiczecma-114z iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6iso88596z iso_8859-6ziso_8859-6:1987csisolatingreekz iso-8859-7zecma-118elot_928greekgreek8z iso-ir-126z iso8859-7iso88597z iso_8859-7ziso_8859-7:1987 sun_eu_greek csiso88598ez iso-8859-8csisolatinhebrewhebrewz iso-8859-8-ez iso-ir-138z iso8859-8iso88598z iso_8859-8ziso_8859-8:1988visual csiso88598iz iso-8859-8-ilogical csisolatin6z iso-8859-10z iso-ir-157z iso8859-10 iso885910l6latin6z iso-8859-13z iso8859-13 iso885913z iso-8859-14z iso8859-14 iso885914 csisolatin9z iso-8859-15z iso8859-15 iso885915z iso_8859-15l9z iso-8859-16cskoi8rzkoi8-rkoikoi8koi8_rzkoi8-u csmacintosh macintoshmacz x-mac-romanzdos-874z windows-874z iso-8859-11z iso8859-11 iso885911ztis-620cp1250z windows-1250zx-cp1250cp1251z windows-1251zx-cp1251zansi_x3.4-1968z windows-1252asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1iso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciizx-cp1252cp1253z windows-1253zx-cp1253cp1254z windows-1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9iso88599z iso_8859-9ziso_8859-9:1989l5latin5zx-cp1254cp1255z windows-1255zx-cp1255cp1256z windows-1256zx-cp1256cp1257z windows-1257zx-cp1257cp1258z windows-1258zx-cp1258zx-mac-cyrilliczx-mac-ukrainianchinesegbkcsgb2312csiso58gb231280gb2312gb_2312z gb_2312-80z iso-ir-58zx-gbkgb18030z hz-gb-2312big5z big5-hkscszcn-big5csbig5zx-x-big5cseucpkdfmtjapanesezeuc-jpzx-euc-jp csiso2022jpz iso-2022-jp csshiftjis shift_jisms_kanjiz shift-jissjisz windows-31jzx-sjiscseuckrzeuc-kr csksc56011987z iso-ir-149koreanzks_c_5601-1987zks_c_5601-1989ksc5601ksc_5601z windows-949 csiso2022krz iso-2022-krzutf-16bezutf-16zutf-16lezx-user-definedN)__doc__LABELSrcrc/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/webencodings/labels.py sPK! pv''#__pycache__/__init__.cpython-35.pycnu[ ReS)@sPdZddlmZddlZddlmZdZddd d d d d diZiZddZ ddZ ddZ Gddde Z e dZe dZe dZdddZddZedd d!Zdd"d#Zd$d%Zedd&d'Zd(d)ZGd*d+d+e ZGd,d-d-e ZdS).a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5.1z iso-8859-8-iz iso-8859-8zx-mac-cyrillicz mac-cyrillic macintoshz mac-romanz windows-874cp874cCs|jdjjdS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)stringr /builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/webencodings/__init__.py ascii_lower#srcCst|jd}tj|}|dkr4dStj|}|dkr|dkrnddlm}n!tj||}tj |}t ||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) rstriprgetCACHEx_user_definedr PYTHON_NAMEScodecslookupEncoding)labelnameencodingr python_namer r r r=s     rcCs?t|dr|St|}|dkr;td||S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)encoding_or_labelrr r r _get_encoding[s   rc@s.eZdZdZddZddZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dS)N)rr)selfrrr r r __init__|s zEncoding.__init__cCs d|jS)Nz )r)r r r r __repr__szEncoding.__repr__N)__name__ __module__ __qualname____doc__r!r"r r r r rms  rzutf-8zutf-16lezutf-16bereplacecCsGt|}t|\}}|p'|}|jj||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r _detect_bomrr )inputfallback_encodingerrors bom_encodingrr r r r s  r cCss|jdr#t|ddfS|jdrFt|ddfS|jdrit|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r)r r r r(sr(strictcCst|jj||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)rrr)r)rr+r r r rs rcCs4t||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r)r*r+decoder generatorrr r r iter_decodes r9ccs|j}t|}x|D];}||}|r|jdk sIt|jV|VPqW|ddd}|jdk st|jV|r|VdSx%|D]}||}|r|VqW|ddd}|r|VdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. NfinalT)r iterrAssertionError)r)r7r chunckoutputr r r r5s,       r5cCst||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr_iter_encode_generator)r)rr+rr r r iter_encodes rBccsIx%|D]}||}|r|VqW|ddd}|rE|VdS)Nr;Tr )r)rr>r?r r r rAs   rAc@s4eZdZdZdddZdddZdS) r4uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r'cCs7t||_||_d|_d|_d|_dS)Nr:)r_fallback_encoding_errors_buffer_decoderr)r r*r+r r r r!s    zIncrementalDecoder.__init__FcCs|j}|dk r"|||S|j|}t|\}}|dkr|t|dkrs| rs||_dS|j}|jj|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr.rC) rGrFr(lenrDrincrementaldecoderrEr r)r r)r;r7rr r r r 's         zIncrementalDecoder.decodeN)r#r$r%r&r!r r r r r r4s  r4c@s(eZdZdZedddZdS)r@u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r3cCs(t|}|jj|j|_dS)N)rrincrementalencoderr)r rr+r r r r!Ts zIncrementalEncoder.__init__N)r#r$r%r&r2r!r r r r r@Cs r@)r& __future__rrlabelsrVERSIONrrrrrobjectrr2r0r1r r(rr9r5rBrAr4r@r r r r  s2           3PK! 4 __pycache__/tests.cpython-35.pycnu[ Re@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z ddZ ddZd d Zd d Zd dZddZddZddZddZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8c Os>y|||Wn|k r)dSYnXtd|dS)NzDid not raise %s.)AssertionError) exceptionfunctionargskwargsr/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/webencodings/tests.py assert_raisess   rcCstdjdksttdjdks6ttdjdksQttdjdkslttdjdksttdjdksttdjdksttddksttddksttd jd ksttd jd ks#ttd jd ks>ttd jd ksYttddksqttddkstdS)Nzutf-8zUtf-8zUTF-8utf8zutf8 z utf8 u8uutf-8 zUS-ASCIIz windows-1252z iso-8859-1latin1ZLATIN1zlatin-1uLATİN1)rnamer rrrr test_labelssrcCsxVtD]N}td|dt|fks4ttd|dksOtxsdddgD]b}tdg||\}}t|gkstttdg||gks_tq_Wt|}|jddkst|jddddks tt |}|jddks4t|jddddkstqWx5t tj D]!}t|j |ksltqlWdS)Nrr finalT) rrrr rrlistr r r setvaluesr)labelrepeatoutput_decoderencoderrrrrtest_all_labels0s ', ! %r'cCsptttddtttddtttgdtttgdtttdtttddS)Nséinvalidé)r LookupErrorrrrr r r rrrrtest_invalid_labelCs r+cCsztdddtdfks'ttdtddtdfksTttdddtdfks{ttdtdtdfksttdddtdfksttd ddtdfksttd ddtd fksttd ddtd fks>ttdddtd fksettdddtd fksttdddtd fksttdddtd fksttdddtd fksttdddtd fks(ttdddtd fksOttdddtd fksvtdS)Nsru€sérr)asciiuésészutf-16beszutf-16lesusszUTF-16BEszUTF-16LEzUTF-16)rrr r rrrr test_decodeLs '-'''''''''''''r-cCstdddksttdddks6ttdddksQttdddkslttdddksttdd d kstdS) Nr)rsrsézutf-16szutf-16lezutf-16bes)rr rrrr test_encodebs r.cCsAdd}|gddks't|dgddksEt|dgddksct|dgdd kst|d d gdd kst|d d gdd kst|dgddkst|dgddkst|dddgddks#t|dddgddksGt|ddddddgddkstt|dgddkst|dgddkst|dgddkst|dgddkst|ddddddgddkst|ddd gd d!ks=tdS)"NcSs"t||\}}dj|S)Nr)rjoin)inputfallback_encodingr# _encodingrrriter_decode_to_stringlsz/test_iter_decode..iter_decode_to_stringrrrsr)shelloZhellosheslloshelloséuésésssaua�sssuï»sssssshzx-user-defineduhllo)r )r3rrrtest_iter_decodeks. !!!!**r6cCsfdjtgddks$tdjtdgddksKtdjtdgddksrtdjtddddgddkstdjtddddgddkstdjtddddgddkstdjtddddgd d ks2tdjtdd dd gd dksbtdS)Nrrrr)szutf-16szutf-16lezutf-16besuhZllozx-user-definedshllo)r/r r rrrrtest_iter_encodes$''0000 r7cCs^d}d}d}d}t|d|tdfks?tt|d|ksZtdS)Ns2, O#ɻtϨu2, O#tsaaZaazx-user-defined)rrr r)encodeddecodedrrrtest_x_user_defineds 'r:N)__doc__ __future__rrrrrrrr r r r rrr'r+r-r.r6r7r:rrrr s@     PK!>  #__pycache__/mklabels.cpython-35.pycnu[ Re @sdZddlZyddlmZWn"ek rJddlmZYnXddZddZedkre ed dS) z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopencCs||jkst|S)N)lowerAssertionError)stringr/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-5.el8.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/webencodings/mklabels.py assert_lowersrcsdg}ddtjt|jjdD}tdd|D|jfdd|D|jdd j|S) Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { cSsfg|]\}|dD]K}|dD]:}tt|jdt|djdfq"qqS) encodingslabelsuname)reprrlstrip).0categoryencodinglabelrrr -s zgenerate..asciicss!|]\}}t|VqdS)N)len)rrr rrr 2szgenerate..c3s6|],\}}d|dt||fVqdS)z %s:%s %s,  N)r)rrr )max_lenrrr4s}) jsonloadsrreaddecodemaxextendappendjoin)urlpartsr r)rrgenerates  (  r%__main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__rurllibr ImportErrorurllib.requestrr%__name__printrrrr s    ! PK!y1%%#__pycache__/__init__.cpython-37.pycnu[B ReS)@sdZddlmZddlZddlmZdZddd d d ZiZd d Z ddZ ddZ Gddde Z e dZe dZe dZd+ddZddZedfddZd,dd Zd!d"Zedfd#d$Zd%d&ZGd'd(d(e ZGd)d*d*e ZdS)-a webencodings ~~~~~~~~~~~~ This is a Python implementation of the `WHATWG Encoding standard `. See README for details. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsN)LABELSz0.5.1z iso-8859-8z mac-cyrillicz mac-romancp874)z iso-8859-8-izx-mac-cyrillic macintoshz windows-874cCs|ddS)a9Transform (only) ASCII letters to lower case: A-Z is mapped to a-z. :param string: An Unicode string. :returns: A new Unicode string. This is used for `ASCII case-insensitive `_ matching of encoding labels. The same matching is also used, among other things, for `CSS keywords `_. This is different from the :meth:`~py:str.lower` method of Unicode strings which also affect non-ASCII characters, sometimes mapping them into the ASCII range: >>> keyword = u'Bac\N{KELVIN SIGN}ground' >>> assert keyword.lower() == u'background' >>> assert ascii_lower(keyword) != keyword.lower() >>> assert ascii_lower(keyword) == u'bac\N{KELVIN SIGN}ground' utf8)encodelowerdecode)stringr /builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_vendor/webencodings/__init__.py ascii_lower#srcCsxt|d}t|}|dkr$dSt|}|dkrt|dkrLddlm}nt||}t |}t ||}|t|<|S)u< Look for an encoding by its label. This is the spec’s `get an encoding `_ algorithm. Supported labels are listed there. :param label: A string. :returns: An :class:`Encoding` object, or :obj:`None` for an unknown label. z Nzx-user-definedr) codec_info) rstriprgetCACHEx_user_definedr PYTHON_NAMEScodecslookupEncoding)labelnameencodingr python_namer r r r=s      rcCs.t|dr|St|}|dkr*td||S)z Accept either an encoding object or label. :param encoding: An :class:`Encoding` object or a label string. :returns: An :class:`Encoding` object. :raises: :exc:`~exceptions.LookupError` for an unknown label. rNzUnknown encoding label: %r)hasattrr LookupError)encoding_or_labelrr r r _get_encoding[s  rc@s eZdZdZddZddZdS)raOReresents a character encoding such as UTF-8, that can be used for decoding or encoding. .. attribute:: name Canonical name of the encoding .. attribute:: codec_info The actual implementation of the encoding, a stdlib :class:`~codecs.CodecInfo` object. See :func:`codecs.register`. cCs||_||_dS)N)rr)selfrrr r r __init__|szEncoding.__init__cCs d|jS)Nz )r)r r r r __repr__szEncoding.__repr__N)__name__ __module__ __qualname____doc__r!r"r r r r rmsrzutf-8zutf-16lezutf-16bereplacecCs2t|}t|\}}|p|}|j||d|fS)a Decode a single string. :param input: A byte string :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A ``(output, encoding)`` tuple of an Unicode string and an :obj:`Encoding`. r)r _detect_bomrr )inputfallback_encodingerrors bom_encodingrr r r r s r cCsV|drt|ddfS|dr4t|ddfS|drNt|ddfSd|fS)zBReturn (bom_encoding, input), with any BOM removed from the input.sNss) startswith_UTF16LE_UTF16BEUTF8)r)r r r r(s   r(strictcCst|j||dS)a; Encode a single string. :param input: An Unicode string. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :return: A byte string. r)rrr)r)rr+r r r rs rcCs$t||}t||}t|}||fS)a "Pull"-based decoder. :param input: An iterable of byte strings. The input is first consumed just enough to determine the encoding based on the precense of a BOM, then consumed on demand when the return value is. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An ``(output, encoding)`` tuple. :obj:`output` is an iterable of Unicode strings, :obj:`encoding` is the :obj:`Encoding` that is being used. )IncrementalDecoder_iter_decode_generatornext)r)r*r+decoder generatorrr r r iter_decodes  r9ccs|j}t|}xf|D].}||}|r|jdk s2t|jV|VPqW|ddd}|jdk s`t|jV|rr|VdSx|D]}||}|r||Vq|W|ddd}|r|VdS)zqReturn a generator that first yields the :obj:`Encoding`, then yields output chukns as Unicode strings. NT)final)r iterrAssertionError)r)r7r chunckoutputr r r r5s,     r5cCst||j}t||S)uY “Pull”-based encoder. :param input: An iterable of Unicode strings. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. :returns: An iterable of byte strings. )IncrementalEncoderr_iter_encode_generator)r)rr+rr r r iter_encodes rBccs:x|D]}||}|r|VqW|ddd}|r6|VdS)NT)r;r )r)rr>r?r r r rAs   rAc@s$eZdZdZd ddZd ddZdS) r4uO “Push”-based decoder. :param fallback_encoding: An :class:`Encoding` object or a label string. The encoding to use if :obj:`input` does note have a BOM. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. r'cCs&t||_||_d|_d|_d|_dS)Nr:)r_fallback_encoding_errors_buffer_decoderr)r r*r+r r r r!s  zIncrementalDecoder.__init__FcCs||j}|dk r|||S|j|}t|\}}|dkrVt|dkrP|sP||_dS|j}|j|jj}||_||_ |||S)zDecode one chunk of the input. :param input: A byte string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: An Unicode string. Nr.rC) rGrFr(lenrDrincrementaldecoderrEr r)r r)r;r7rr r r r 's    zIncrementalDecoder.decodeN)r')F)r#r$r%r&r!r r r r r r4s  r4c@seZdZdZedfddZdS)r@u “Push”-based encoder. :param encoding: An :class:`Encoding` object or a label string. :param errors: Type of error handling. See :func:`codecs.register`. :raises: :exc:`~exceptions.LookupError` for an unknown encoding label. .. method:: encode(input, final=False) :param input: An Unicode string. :param final: Indicate that no more input is available. Must be :obj:`True` if this is the last call. :returns: A byte string. r3cCst|}|j|j|_dS)N)rrincrementalencoderr)r rr+r r r r!TszIncrementalEncoder.__init__N)r#r$r%r&r2r!r r r r r@Csr@)r')r')r& __future__rrlabelsrVERSIONrrrrrobjectrr2r0r1r r(rr9r5rBrAr4r@r r r r  s2       3PK!E#__pycache__/mklabels.cpython-37.pycnu[B Re@sfdZddlZyddlmZWn ek r<ddlmZYnXddZddZedkrbe ed dS) z webencodings.mklabels ~~~~~~~~~~~~~~~~~~~~~ Regenarate the webencodings.labels module. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. N)urlopencCs||kst|S)N)lowerAssertionError)stringr/builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_vendor/webencodings/mklabels.py assert_lowersrcsfdg}ddtt|dD}tdd|D|fdd|D|dd |S) Na""" webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. """ # XXX Do not edit! # This file is automatically generated by mklabels.py LABELS = { cSsLg|]D}|dD]6}|dD](}tt|dt|ddfqqqS) encodingslabelsuname)reprrlstrip).0categoryencodinglabelrrr -s zgenerate..asciicss|]\}}t|VqdS)N)len)rrr rrr 2szgenerate..c3s,|]$\}}d|dt||fVqdS)z %s:%s %s,  N)r)rrr )max_lenrrr4s}) jsonloadsrreaddecodemaxextendappendjoin)urlpartsr r)rrgenerates   r%__main__z.http://encoding.spec.whatwg.org/encodings.json) __doc__rurllibr ImportErrorurllib.requestrr%__name__printrrrr s!PK!=Բ )__pycache__/x_user_defined.cpython-37.pycnu[B Re @sdZddlmZddlZGdddejZGdddejZGdd d ejZGd d d eejZGd d d eejZej dej ej eeeedZ dZ ee ZdS)z webencodings.x_user_defined ~~~~~~~~~~~~~~~~~~~~~~~~~~~ An implementation of the x-user-defined encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literalsNc@s eZdZdddZdddZdS) CodecstrictcCst||tS)N)codecscharmap_encodeencoding_table)selfinputerrorsr /builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_vendor/webencodings/x_user_defined.pyencodesz Codec.encodecCst||tS)N)rcharmap_decodedecoding_table)rr r r r r decodesz Codec.decodeN)r)r)__name__ __module__ __qualname__r rr r r r rs rc@seZdZdddZdS)IncrementalEncoderFcCst||jtdS)Nr)rrr r)rr finalr r r r szIncrementalEncoder.encodeN)F)rrrr r r r r rsrc@seZdZdddZdS)IncrementalDecoderFcCst||jtdS)Nr)rrr r)rr rr r r r$szIncrementalDecoder.decodeN)F)rrrrr r r r r#src@s eZdZdS) StreamWriterN)rrrr r r r r(src@s eZdZdS) StreamReaderN)rrrr r r r r,srzx-user-defined)namer rincrementalencoderincrementaldecoder streamreader streamwriteru  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~)__doc__ __future__rrrrrrr CodecInfor r codec_infor charmap_buildrr r r r  s&   PK!mz!__pycache__/labels.cpython-37.pycnu[B Re#@sdZddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d d d d d d d d d d d d d d d d d d d d d d d d d d dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd d!d!d!d!d!d"d"d"d#d#d$d$d$d$d$d$d$d%d%d%d%d%d%d%d%d%d%d&d&d'd(d(d)d*Zd+S),z webencodings.labels ~~~~~~~~~~~~~~~~~~~ Map encoding labels to their name. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. zutf-8ibm866z iso-8859-2z iso-8859-3z iso-8859-4z iso-8859-5z iso-8859-6z iso-8859-7z iso-8859-8z iso-8859-8-iz iso-8859-10z iso-8859-13z iso-8859-14z iso-8859-15z iso-8859-16zkoi8-rzkoi8-u macintoshz windows-874z windows-1250z windows-1251z windows-1252z windows-1253z windows-1254z windows-1255z windows-1256z windows-1257z windows-1258zx-mac-cyrillicgbkgb18030z hz-gb-2312big5zeuc-jpz iso-2022-jp shift_jiszeuc-krz iso-2022-krzutf-16bezutf-16lezx-user-defined)zunicode-1-1-utf-8zutf-8utf8866cp866csibm866r csisolatin2z iso-8859-2z iso-ir-101z iso8859-2iso88592z iso_8859-2ziso_8859-2:1987l2latin2 csisolatin3z iso-8859-3z iso-ir-109z iso8859-3iso88593z iso_8859-3ziso_8859-3:1988l3latin3 csisolatin4z iso-8859-4z iso-ir-110z iso8859-4iso88594z iso_8859-4ziso_8859-4:1988l4latin4csisolatincyrilliccyrillicz iso-8859-5z iso-ir-144z iso8859-5iso88595z iso_8859-5ziso_8859-5:1988arabiczasmo-708 csiso88596e csiso88596icsisolatinarabiczecma-114z iso-8859-6z iso-8859-6-ez iso-8859-6-iz iso-ir-127z iso8859-6iso88596z iso_8859-6ziso_8859-6:1987csisolatingreekzecma-118elot_928greekgreek8z iso-8859-7z iso-ir-126z iso8859-7iso88597z iso_8859-7ziso_8859-7:1987 sun_eu_greek csiso88598ecsisolatinhebrewhebrewz iso-8859-8z iso-8859-8-ez iso-ir-138z iso8859-8iso88598z iso_8859-8ziso_8859-8:1988visual csiso88598iz iso-8859-8-ilogical csisolatin6z iso-8859-10z iso-ir-157z iso8859-10 iso885910l6latin6z iso-8859-13z iso8859-13 iso885913z iso-8859-14z iso8859-14 iso885914 csisolatin9z iso-8859-15z iso8859-15 iso885915z iso_8859-15l9z iso-8859-16cskoi8rkoikoi8zkoi8-rkoi8_rzkoi8-u csmacintoshmacrz x-mac-romanzdos-874z iso-8859-11z iso8859-11 iso885911ztis-620z windows-874cp1250z windows-1250zx-cp1250cp1251z windows-1251zx-cp1251zansi_x3.4-1968asciicp1252cp819 csisolatin1ibm819z iso-8859-1z iso-ir-100z iso8859-1iso88591z iso_8859-1ziso_8859-1:1987l1latin1zus-asciiz windows-1252zx-cp1252cp1253z windows-1253zx-cp1253cp1254 csisolatin5z iso-8859-9z iso-ir-148z iso8859-9iso88599z iso_8859-9ziso_8859-9:1989l5latin5z windows-1254zx-cp1254cp1255z windows-1255zx-cp1255cp1256z windows-1256zx-cp1256cp1257z windows-1257zx-cp1257cp1258z windows-1258zx-cp1258zx-mac-cyrilliczx-mac-ukrainianchinesecsgb2312csiso58gb231280gb2312gb_2312z gb_2312-80rz iso-ir-58zx-gbkrz hz-gb-2312rz big5-hkscszcn-big5csbig5zx-x-big5cseucpkdfmtjapanesezeuc-jpzx-euc-jp csiso2022jpz iso-2022-jp csshiftjisms_kanjiz shift-jisrsjisz windows-31jzx-sjiscseuckr csksc56011987zeuc-krz iso-ir-149koreanzks_c_5601-1987zks_c_5601-1989ksc5601ksc_5601z windows-949 csiso2022krz iso-2022-krzutf-16bezutf-16zutf-16lezx-user-definedN)__doc__LABELSrcrc/builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_vendor/webencodings/labels.py sPK!LN __pycache__/tests.cpython-37.pycnu[B Re@sdZddlmZddlmZmZmZmZmZm Z m Z m Z m Z ddZ ddZd d Zd d Zd dZddZddZddZddZdS)z webencodings.tests ~~~~~~~~~~~~~~~~~~ A basic test suite for Encoding. :copyright: Copyright 2012 by Simon Sapin :license: BSD, see LICENSE for details. )unicode_literals) lookupLABELSdecodeencode iter_decode iter_encodeIncrementalDecoderIncrementalEncoderUTF8cOs4y|||Wn|k r"dSXtd|dS)NzDid not raise %s.)AssertionError) exceptionfunctionargskwargsr/builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_vendor/webencodings/tests.py assert_raisess rcCs tdjdksttdjdks$ttdjdks6ttdjdksHttdjdksZttdjdkslttdjdks~ttddksttddksttd jd ksttd jd ksttd jd ksttd jd ksttddksttddkstdS)Nzutf-8zUtf-8zUTF-8utf8zutf8 z utf8 u8uutf-8 zUS-ASCIIz windows-1252z iso-8859-1latin1ZLATIN1zlatin-1uLATİN1)rnamer rrrr test_labelssrcCsxtD]}td|dt|fks$ttd|dks6txLdD]D}tdg||\}}t|gksdtttdg||gks.iter_decode_to_stringrrrr/r)shelloZhellosheslloshelloséuésésaua�ssuï»sssshzx-user-defineduhllo)r )r5rrrtest_iter_decodeks.r=cCsdtgddkstdtdgddks2tdtdgddksLtdtddddgddksltdtddddgddkstdtddddgddkstdtddddgd d kstdtdd dd gd dkstdS)Nrrrr)r/zutf-16szutf-16lezutf-16besuhZllozx-user-definedshllo)r1r r rrrrtest_iter_encodes    r>cCs@d}d}d}d}t|d|tdfks*tt|d|ksrArrrr s ,    PK![Px_user_defined.pycnu[PK!xqS)S) \__init__.pynu[PK!ᅞ,, 9__init__.pyonu[PK!K   flabels.pycnu[PK!P1 {mklabels.pynu[PK!g8pHtests.pynu[PK!ǭ## #labels.pynu[PK!  ##__pycache__/mklabels.cpython-35.pycnu[PK!y1%%#__pycache__/__init__.cpython-37.pycnu[PK!E#__pycache__/mklabels.cpython-37.pycnu[PK!=Բ )__pycache__/x_user_defined.cpython-37.pycnu[PK!mz!__pycache__/labels.cpython-37.pycnu[PK!LN __pycache__/tests.cpython-37.pycnu[PK22C1