HOME


Mini Shell 1.0
Redirecting to https://devs.lapieza.net/iniciar-sesion Redirecting to https://devs.lapieza.net/iniciar-sesion.
DIR: /proc/self/root/usr/lib/python3/dist-packages/debian/__pycache__/
Upload File :
Current File : //proc/self/root/usr/lib/python3/dist-packages/debian/__pycache__/debian_support.cpython-311.pyc
�

)uyc,k��:�dZddlZddlZddlZ	ddlmZmZmZmZm	Z	m
Z
mZmZm
Z
mZmZmZmZmZmZmZn#e$rYnwxYwddlmZ	ddlZ	ej��dZn#ej$rdZYnwxYwn
#e$rdZYnwxYw	ddlZejZn#e$rd�ZYnwxYw	ddlZej Z!n#e$rd�Z!YnwxYwddl"Z#e#j$j%Z%Gd	�d
e&��Z'Gd�de(��Z)Gd
�de)��Z*Gd�de)��Z+erGd�de*��Z,nGd�de+��Z,d�Z-Gd�d��Z.Gd�d��Z/Gd�de/��Z0d�Z1ee1��Z2e1��Z3d(d�Z4ee4��Z5[2[1d�Z6d�Z7ee7��Z8dZ9ej:e9��Z;ej:e9�<d ����Z=	d(d!�Z>ee>��Z?d"�Z@ee@��ZAd)d#�ZBeeB��ZCd$�ZDeeD��ZEd%�ZFeeF��ZGd*d&�ZHeeH��ZId'�ZJeeJ��ZKdS)+z2 Facilities to deal with Debian-specific metadata �N)�Any�AnyStr�BinaryIO�Dict�Iterable�Iterator�	Generator�List�Match�NoReturn�Optional�Pattern�Text�TextIO�Tuple�Union)�function_deprecated_byTFc� �td����Nz�Built-in sha1 implementation not found; cannot use hashlib implementation because it depends on OpenSSL, which may not be linked with this library due to license incompatibilities��NotImplementedError��argss �7/usr/lib/python3/dist-packages/debian/debian_support.py�new_sha1rD���!�
!�"�"�	"�c� �td���rrrs r�
new_sha256rSrrc�J��eZdZdZ�fd�Zd�Zd�Zd�Zee��Z	�xZ
S)�
ParseErrorz�An exception which is used to signal a parse failure.

    Attributes:

    filename - name of the file
    lineno - line number in the file
    msg - error message

    c���t|t��sJ�||_||_||_tt|���|��dS�N)�
isinstance�int�filename�lineno�msg�superr!�__init__)�selfr&r'r(�	__class__s    �rr*zParseError.__init__msT����&�#�&�&�&�&�&� ��
�������
�j�$���(�(��.�.�.�.�.rc��|jSr#)r(�r+s r�__str__zParseError.__str__ys	���x�rc�0�d|j|j|jfzS)NzParseError(%r, %d, %r))r&r'r(r.s r�__repr__zParseError.__repr__}s"��'�4�=�+/�;�+/�8�+5�5�	5rc��|�d|j|j|jfz��|���dS)z0Writes a machine-parsable error message to file.z
%s:%d: %s
N)�writer&r'r(�flush)r+�files  r�	print_outzParseError.print_out�s9��	
�
�
�=�D�M�4�;���#I�I�J�J�J��
�
�����r)�__name__�
__module__�__qualname__�__doc__r*r/r1r6r�printOut�
__classcell__�r,s@rr!r!bsu���������
/�
/�
/�
/�
/����5�5�5����&�%�i�0�0�H�H�H�H�Hrr!c���eZdZdZejd��ZdZd�Zd�Z	�fd�Z
�fd�Zd�Zd	�Z
d
�Zd�Zd�Zd
�Zd�Zd�Zd�Zd�Zd�Z�xZS)�BaseVersiona�Base class for classes representing Debian versions

    It doesn't implement any comparison, but it does check for valid versions
    according to Section 5.6.12 in the Debian Policy Manual.  Since splitting
    the version into epoch, upstream_version, and debian_revision components is
    pretty much free with the validation, it sets those fields as properties of
    the object, and sets the raw version to the full_version property.  A
    missing epoch or debian_revision results in the respective property set to
    None.  Setting any of the properties results in the full_version being
    recomputed and the rest of the properties set from that.

    It also implements __str__, just returning the raw version given to the
    initializer.
    zd^((?P<epoch>\d+):)?(?P<upstream_version>[A-Za-z0-9.+:~-]+?)(-(?P<debian_revision>[A-Za-z0-9+.~]+))?$)�full_version�epoch�upstream_version�debian_revision�debian_versionc�\�t|t��rt|��}||_dSr#)r$r?�strr@�r+�versions  rr*zBaseVersion.__init__�s-���g�{�+�+�	#��'�l�l�G�#����rc��|j�|��}|std|z���|�d���)d|�d��vrtd|z���||_|�d��|_|�d��|_|�d��|_dS)NzInvalid version string %rrA�:rBrC)�re_valid_version�match�
ValueError�group�_BaseVersion__full_version�_BaseVersion__epoch�_BaseVersion__upstream_version�_BaseVersion__debian_revision)r+rH�ms   r�_set_full_versionzBaseVersion._set_full_version�s����!�'�'��0�0���	D��8�7�B�C�C�C�
�7�7�7���#��q�w�w�7I�/J�/J�(J�(J��8�7�B�C�C�C�&����w�w�w�'�'���"#�'�'�*<�"=�"=���!"���):�!;�!;����rc���||jvr+tt|���||��dS|dkrd}|dkr$|�t|����dS|�t|��}d|z}t
||��}t|||��	|���dS#t$r<t|||��|���td|�d|�d����wxYw)NrDrCr@�_BaseVersion__%szSetting z to z results in invalid version)
�magic_attrsr)r?�__setattr__rTrF�getattr�setattr�_update_full_versionrM)r+�attr�value�private�	old_valuer,s     �rrXzBaseVersion.__setattr__�s2����t�'�'�'��+�t�$�$�0�0��u�=�=�=��F��#�#�#�$�D��>�!�!��"�"�3�u�:�:�.�.�.�.�.�� ��E�
�
��(�4�/�G���g�.�.�I��D�'�5�)�)�)�
2��)�)�+�+�+�+�+���
2�
2�
2���g�y�1�1�1��)�)�+�+�+� �j�$(�D�D�%�%�%�"1�2�2�2�	
2���s
� B6�6AC<c���||jvr(tt|���|��S|dkrd}d|z}t	||��S)NrDrCrV)rWr)r?�__getattribute__rY)r+r\r^r,s   �r�__getattr__zBaseVersion.__getattr__�s\����t�'�'�'���d�+�+�<�<�T�B�B�B��#�#�#�$�D�$�t�+���t�W�%�%�%rc�|�d}|j�
||jdzz
}||jz
}|jr
|d|jzz
}||_dS)N�rJ�-)rPrQrRr@rGs  rr[z BaseVersion._update_full_version�sX�����<�#��t�|�c�)�)�G��4�*�*���!�	4��s�T�3�3�3�G�#����rc�"�|j�|jndS)Nrd)r@r.s rr/zBaseVersion.__str__�s��$(�$5�$A�t� � �r�Irc�&�|jj�d|�d�S)Nz('z'))r,r7r.s rr1zBaseVersion.__repr__�s��!�^�4�4�4�d�d�d�;�;rc��t�r#r�r+�others  r�_comparezBaseVersion._compare�s��!�!rc�4�|�|��dkS�Nr�rkris  r�__lt__zBaseVersion.__lt__�����}�}�U�#�#�a�'�'rc�4�|�|��dkSrmrnris  r�__le__zBaseVersion.__le__�����}�}�U�#�#�q�(�(rc�4�|�|��dkSrmrnris  r�__eq__zBaseVersion.__eq__rsrc�4�|�|��dkSrmrnris  r�__ne__zBaseVersion.__ne__rsrc�4�|�|��dkSrmrnris  r�__ge__zBaseVersion.__ge__
rsrc�4�|�|��dkSrmrnris  r�__gt__zBaseVersion.__gt__rprc�:�tt|����Sr#)�hashrFr.s r�__hash__zBaseVersion.__hash__s���C��I�I���r)r7r8r9r:�re�compilerKrWr*rTrXrbr[r/r1rkrorrrurwryr{r~r<r=s@rr?r?�sC�������
�
�"�r�z�	4�5�5��-�K�$�$�$�<�<�<� 2�2�2�2�2�6
&�
&�
&�
&�
&�$�$�$�J�J�J�<�<�<�"�"�"�(�(�(�)�)�)�)�)�)�)�)�)�)�)�)�(�(�(�������rr?c�(��eZdZdZ�fd�Zd�Z�xZS)�
AptPkgVersionzARepresents a Debian package version, using apt_pkg.VersionComparec���tstd���tt|���|��dS)Nz5apt_pkg not available; install the python-apt package)�
_have_apt_pkgrr)r�r*)r+rHr,s  �rr*zAptPkgVersion.__init__sF����	<�%�';�<�<�
<�
�m�T�"�"�+�+�G�4�4�4�4�4rc�`�tjt|��t|����Sr#)�apt_pkg�version_comparerFris  rrkzAptPkgVersion._compare!s!���&�s�4�y�y�#�e�*�*�=�=�=r)r7r8r9r:r*rkr<r=s@rr�r�sM�������K�K�5�5�5�5�5�>�>�>�>�>�>�>rr�c���eZdZdZejd��Zejd��Zejd��Zejd��Z	d�Z
ed���Zed���Z
ed	���Zd
S)�
NativeVersionzBRepresents a Debian package version, with native Python comparisonz\d+|\D+z\d+z\dz[A-Za-z]c���|�dSt|t��sE	tt|����}n'#t$r}td|�d|�����d}~wwxYwt	|jpd��}t	|jpd��}||krdS||krdS|�|jpd|jpd��}|dkr|S|�|jpd|jpd��S)N�zCouldn't convert z to BaseVersion: �0���r)	r$r?rFrMr%rA�_version_cmp_partrBrC)r+rj�e�lepoch�repoch�ress      rrkzNativeVersion._compare0s-���=��1��%��-�-�	/�
/�#�C��J�J�/�/�����
/�
/�
/� �j�$)�E�E�1�1�".�/�/�/�����
/�����T�Z�&�3�'�'���U�[�'�C�(�(���F�?�?��2��F�?�?��1��$�$�T�%:�%A�c�%*�%;�%B�s�D�D���!�8�8��J��%�%�d�&:�&A�c�&+�&;�&B�s�D�D�	Ds�8�
A�A�Ac���|dkrdS|j�|��rt|��dzS|j�|��rt	|��St	|��dzS)z'Return an integer value for character x�~r�r��)�re_digitrLr%�re_alpha�ord)�cls�xs  r�_orderzNativeVersion._orderOsm��
��8�8��2��<���a� � �	��q�6�6�A�:���<���a� � �	��q�6�6�M��1�v�v��|�rc�����fd�|D��}�fd�|D��}|s|rFd}d}|r|�d��}|r|�d��}||krdS||krdS|�D|�FdS)Nc�:��g|]}��|����S��r���.0r�r�s  �r�
<listcomp>z5NativeVersion._version_cmp_string.<locals>.<listcomp>^�#���
(�
(�
(��c�j�j��m�m�
(�
(�
(rc�:��g|]}��|����Sr�r�r�s  �rr�z5NativeVersion._version_cmp_string.<locals>.<listcomp>_r�rrr�r�)�pop)r��va�vb�la�lb�a�bs`      r�_version_cmp_stringz!NativeVersion._version_cmp_string[s����)�
(�
(�
(�R�
(�
(�
(��
(�
(�
(�
(�R�
(�
(�
(���
	�B�
	��A��A��
��F�F�1�I�I���
��F�F�1�I�I���1�u�u��r��1�u�u��q��
	�B�
	��qrc���|j�|��}|j�|��}|s|r�d}d}|r|�d��}|r|�d��}|j�|��rI|j�|��r/t|��}t|��}||krdS||krdSn|�||��}	|	dkr|	S|��|��dS)Nr�rr�r�)�re_all_digits_or_not�findallr��	re_digitsrLr%r�)
r�r�r�r�r�r�r��aval�bvalr�s
          rr�zNativeVersion._version_cmp_partms���
%�
-�
-�b�
1�
1��
�
%�
-�
-�b�
1�
1���	�B�	��A��A��
��F�F�1�I�I���
��F�F�1�I�I���}�"�"�1�%�%�

�#�-�*=�*=�a�*@�*@�

��1�v�v���1�v�v���$�;�;��2��$�;�;��1���-�-�a��3�3���!�8�8��J�#�	�B�	�$�qrN)r7r8r9r:rr�r�r�r�r�rk�classmethodr�r�r�r�rrr�r�(s�������L�L�%�2�:�j�1�1����
�6�"�"�I��r�z�%� � �H��r�z�*�%�%�H�D�D�D�>�	�	��[�	�����[��"����[���rr�c��eZdZdS��VersionN�r7r8r9r�rrr�r����������rr�c��eZdZdSr�r�r�rrr�r��r�rc�b�t|��}t|��}||krdS||krdSdS)Nr�r�r)r�)r�r�r�r�s    rr�r��s9��	����B�	����B�	�B�w�w��r�	�B�w�w��q��1rc��eZdZdZejd��Zejd��Z		d
d�Zd�Z	d�Z
dd	�Zee��Z
dS)�PackageFilezmA Debian package file.

    Objects of this class can be used to read Debian's Source and
    Packages files.z+^([A-Za-z][A-Za-z0-9-_]+):(?:\s*(.*?))?\s*$z^\s+(?:\.|(\S.*?)\s*)$N�utf-8c�b�|�t|d��}||_||_d|_||_dS)z�Creates a new package file object.

        name - the name of the file the data comes from
        file_obj - an alternate data source; the default is to open the
                  file with the indicated name.
        N�rbr)�open�namer5r'�encoding)r+r��file_objr�s    rr*zPackageFile.__init__�s9�����D�$�'�'�H���	���	���� ��
�
�
rc#�K�|���}|xjdz
c_g}|�r&|�d��dkrB|s|�d��|V�g}|���}|xjdz
c_�^|j�|��}|s|�d��|���\}}|pd}	|���}|xjdz
c_|j�|��}|r"|���\}|�d}|�d|��}nn�d|�||f��|��&|r|V�dSdS)Nr�z 	�
zexpected package recordzexpected package fieldrd)	�_aux_read_liner'�strip�raise_syntax_error�re_fieldrL�groups�re_continuation�append)r+�line�pkgrLr��contents�	ncontentss       r�__iter__zPackageFile.__iter__�s������"�"�$�$�����q�������	)��z�z�%� � �D�(�(��G��+�+�,E�F�F�F��	�	�	����*�*�,�,�����q� �����M�'�'��-�-�E��
B��'�'�(@�A�A�A�$�|�|�~�~��T�8��~�2�H�

��*�*�,�,�����q� ����,�2�2�4�8�8����#(�<�<�>�>�L�Y� �(�$&�	�+3�8�8�Y�Y�?�H�H��

�
�J�J��h�'�(�(�(�7�	)�8�	��I�I�I�I�I�	�	rc��|j���}t|t��r|�|j��S|Sr#)r5�readliner$�bytes�decoder�)r+r�s  rr�zPackageFile._aux_read_line�sB���y�!�!�#�#���d�E�"�"�	.��;�;�t�}�-�-�-��rc�@�|�|j}t|j||���r#)r'r!r�)r+r(r's   rr�zPackageFile.raise_syntax_error�s"���>��[�F����F�C�0�0�0r)Nr�r#)r7r8r9r:rr�r�r�r*r�r�r�r�raiseSyntaxErrorr�rrr�r��s���������
�r�z�H�I�I�H� �b�j�!:�;�;�O��!�!�!�!�!�&"�"�"�H���1�1�1�1�.�-�.@�A�A���rr�c�N�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
dS)
�
PseudoEnumz8A base class for types which resemble enumeration types.c�"�||_||_dSr#)�_namer�)r+r��orders   rr*zPseudoEnum.__init__�s����
�����rc�0�|jj�d|j�d�S)N�(�))r,r7r�r.s rr1zPseudoEnum.__repr__�s���>�2�2�2�D�J�J�J�?�?rc��|jSr#)r�r.s rr/zPseudoEnum.__str__�s
���z�rc�"�|j|jkSr#r�ris  rrozPseudoEnum.__lt__����{�U�\�)�)rc�"�|j|jkSr#r�ris  rrrzPseudoEnum.__le__����{�e�l�*�*rc�"�|j|jkSr#r�ris  rruzPseudoEnum.__eq__r�rc�"�|j|jkSr#r�ris  rrwzPseudoEnum.__ne__r�rc�"�|j|jkSr#r�ris  rryzPseudoEnum.__ge__r�rc�"�|j|jkSr#r�ris  rr{zPseudoEnum.__gt__r�rc�*�t|j��Sr#)r}r�r.s rr~zPseudoEnum.__hash__s���D�K� � � rN)r7r8r9r:r*r1r/rorrrurwryr{r~r�rrr�r��s�������B�B����@�@�@����*�*�*�+�+�+�+�+�+�+�+�+�+�+�+�*�*�*�!�!�!�!�!rr�c�*��eZdZdZiZ	d�fd�	Z�xZS)�Releasez�
    Debian release defined with respect to its name, order of release
    and version. The latter can be empty in case of 'sid'.

    See https://www.debian.org/releases/
    rdc�h��tt|���||��||_dSr#)r)r�r*rH)r+r�r�rHr,s    �rr*zRelease.__init__&s0���
	�g�t���%�%�d�E�2�2�2�����r)rd)r7r8r9r:�releasesr*r<r=s@rr�r�sS����������H�
����������rr�c��i}d}t|��D]\}}|\}}t|||��||<�|t_|S)z*
     Returns dict of Debian releases
    ))�buzzz1.1)�rexz1.2)�boz1.3)�hammz2.0)�slinkz2.1)�potatoz2.2)�woodyz3.0)�sargez3.1)�etchz4.0)�lennyz5.0)�squeezez6.0)�wheezy�7)�jessie�8)�stretch�9)�buster�10)�bullseye�11)�bookworm�12)�trixie�13)�forky�14)�sidrd)�	enumerater�r�)r��rels�idx�relr�rHs      r�
list_releasesr/sX��
�H��D�(�d�O�O�5�5���S��
��g� ��s�G�4�4������G���Orc�>�|�t}|�|��Sr#)�
_release_list�get)r�r�s  r�intern_releaserUs���� ���<�<����rc��t��}|D]U}t|t��r|�|���-|�|�d�����V|���S�N�UTF-8)rr$r��update�encode�	hexdigest��linesrS�ls   r�read_lines_sha256rcsl�����A�
�(�(���a����	(�
�H�H�Q�K�K�K�K�
�H�H�Q�X�X�g�&�&�'�'�'�'��;�;�=�=�rc��t��}|D]U}t|t��r|�|���-|�|�d�����V|���Sr)rr$r�rrrrs   r�read_lines_sha1rnsl���
�
�A�
�(�(���a����	(�
�H�H�Q�K�K�K�K�
�H�H�Q�X�X�g�&�&�'�'�'�'��;�;�=�=�rz^(\d+)(?:,(\d+))?([acd])$rc#�K�t|��}|}|D�]'}|s#t|t��rtnt}|�|��}|�t
d|z���|���\}}}t|��}	|�dnt|��}
t|��dkr|	dz
}	|
�|	dz}
|	|
gfV���t|��dkr|
�t
d|z���|	}
n|	dz
}	|
�|	dz}
g}|D]3}|dvrt
d|z���|d	vrn|�
|���4|	|
|fV���)dS)
a1Converts source to a stream of patches.

    Patches are triples of line indexes:

    - number of the first line to be replaced
    - one plus the number of the last line to be replaced
    - list of line replacements

    This is enough to model arbitrary additions, deletions and
    replacements.
    Nzinvalid patch command: %r�dr��azinvalid patch argument: %r)rdrzend of stream in command: %r)z.
�.s.
�.)�iterr$r��_patch_re_b�	_patch_rerLrMr�r%r�r�)
�source�re_cmd�i�patch_rer�rL�first_�last_�cmd�first�lastr�cs
             r�patches_from_ed_scriptr2�s�����"	
�V���A��H��$#�$#���	M�&0��u�&=�&=�L�{�{�9�H����t�$�$���=��8�4�?�@�@�@�$�|�|�~�~������F�����}�t�t�#�e�*�*���s�8�8�s�?�?��A�I�E��|��q�y���$��#�#�#�#���s�8�8�r�>�>��� �!=��!D�E�E�E��D�D��A�I�E��|��q�y�����	�	�A��I�~�~� �!?�$�!F�G�G�G��.�.�.����L�L��O�O�O�O��d�E�"�"�"�"�"�I$#�$#rc�&�|D]
\}}}||||�<�dS)z2Applies patches to lines.  Updates lines in place.Nr�)r�patchesr/r0rs     r�patch_linesr5�s5�� '�!�!����d� ��e�D�j���!�!rc��|dz}	t|d|���5}|D]}|�|���	ddd��n#1swxYwYtj||��tj�|��rtj|��dSdS#tj�|��rtj|��wwxYw)Nz.newzw+�r�)r�r3�os�replace�path�exists�unlink)r�localr��	local_new�new_filers      r�replace_filer@�s�����I�!�
�)�T�H�
5�
5�
5�	"���
"�
"�����q�!�!�!�!�
"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"�	"����	"�	"�	"�	"�	�
�9�e�$�$�$�
�7�>�>�)�$�$�	!��I�i� � � � � �	!�	!��2�7�>�>�)�$�$�	!��I�i� � � � �	!���s-�B�A�B�A�B�A�	B�6Cc��ddl}ddlm}||��5}|�|d���5}|���cddd��cddd��S#1swxYwY	ddd��dS#1swxYwYdS)z[Downloads a file from a remote location and gunzips it.

    Returns the lines in the file.rN��urlopen�rt)�mode)�gzip�urllib.requestrCr��	readlines)�remoterFrC�zfd�gfds     r�download_gunzip_linesrL�s.���K�K�K�&�&�&�&�&�&�	�����#�C�
�Y�Y�s��Y�
&�
&�	#�#��=�=�?�?�	#�	#�	#�	#�	#�	#�	#�#�#�#�#�#�#�#�#�	#�	#�	#�	#����	#�	#�	#�	#�	#�#�#�#�#�#�#�#�#�#�#�#�#����#�#�#�#�#�#s4�A4�A�A4�A	�A4�"A	�#A4�4A8�;A8c�J�t|dz��}t||��|S)z�Copies a gzipped remote file to the local system.

    remote - URL, without the .gz suffix
    local - name of the local file
    �.gz)rLr@)rIr=rs   r�
download_filerO�s*��
"�&�5�.�1�1�E��������Lrc��	t|dd���5}|���}ddd��n#1swxYwYn1#t$r$|rtd��t	||��cYSwxYwg}i}ddlm}|dz}tjd	��}		||��5}
tt||
����}ddd��n#1swxYwYn]#t$r$|rtd
��t	||��cYSt$r$|rtd��t	||��cYSwxYwdd
�|D��vr*|rtd��d}t|��}
t}n)|rtd��d}t|��}
t}|D�]}|D]�\}}||dzkr6|	�|��\}}|
|kr|rtd��|ccS�D||dzkrU|���D]?}|dkr�	|	�|��\}}}|s||
kr|�|���@��||dzkr=|���D]'}|dkr�	|	�|��\}}}|||<�(��|rtd|z������|s"|rtd|
��t	||��S|D]�}|rtd|z��t#|dz|zdz��}||��||krt%d|z���t|��}t'|t)|������||��}||krt%d|�d|�����t+||��|S)zjUpdates the local file by downloading a remote patch.

    Returns a list of lines in the local file.
    �rrr7Nz1update_file: no local copy, downloading full filerrBz.diff/Indexz\s+z1update_file: could not interpret patch index filez0update_file: could not download patch index filezSHA256-Currentc�"�g|]}|D]\}}|���
Sr�r�)r��fields�k�vs    rr�zupdate_file.<locals>.<listcomp>%s)��K�K�K�&�F�K�K�S�Q�q�A�K�K�K�Krzupdate_file: using sha256�SHA256zupdate_file: using sha1�SHA1z-Currentz%update_file: local file is up-to-datez-Historyrdz-Patcheszupdate_file: field %r ignoredz*update_file: could not find historic entryz!update_file: downloading patch %rz.diff/rNzpatch %r was garbledzpatch failed, got z instead of )r�rH�IOError�printrOrGrCrr��listr�r!rr�split�
splitlinesr�rLrMr5r2r@)rIr=�verbose�
local_filer�patches_to_apply�patch_hashesrC�
index_name�
re_whitespace�	index_url�index_fields�prefix�
local_hash�
read_linesrS�fieldr]�remote_hash�_�entry�	hist_hash�
patch_name�
patch_hash�patch_contents�patch_contents_unicode�new_hashs                           r�update_filerr�sF��,�
�%��w�
/�
/�
/�	+�:��(�(�*�*�E�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+�	+����	+�	+�	+�	+����,�,�,��	G��E�F�F�F��V�U�+�+�+�+�+�,����
���L�'�&�&�&�&�&��-�'�J��J�v�&�&�M�,�
�W�Z�
 �
 �	D�I���J�	� B� B�C�C�L�	D�	D�	D�	D�	D�	D�	D�	D�	D�	D�	D����	D�	D�	D�	D����,�,�,��	G��E�F�F�F��V�U�+�+�+�+�+��,�,�,��	F��D�E�E�E��V�U�+�+�+�+�+�,����
�K�K�L�K�K�K�K�K��	/��-�.�.�.���&�u�-�-�
�&�
�
��	-��+�,�,�,���$�U�+�+�
�$�
�� ?� ?��$�	?�	?�N�U�E���z�)�)�)�#0�#6�#6�u�#=�#=� ��a���,�,��G��E�F�F�F� �L�L�L�L�L����z�)�)�)�"�-�-�/�/�<�<�E���{�{� �1>�1D�1D�U�1K�1K�.�Y��:�(�<�9�
�+B�+B�(�/�/�
�;�;�;�����z�)�)�)�"�-�-�/�/�:�:�E���{�{� �2?�2E�2E�e�2L�2L�/�Z��J�/9�L��,�,���
?��5��=�>�>�>��?	?�B�,��	L��>�
�K�K�K��V�U�+�+�+�&�K�K�
��	D��5�
�B�C�C�C�.��X��
�*�U�2�4�4���:�n�%�%��j�)A�A�A��3�j�@�A�A�A�!%�n�!5�!5���E�1�2H�I�I�J�J�J�J��z�%� � �H��;����j�$�H�H�k�k�3�4�4�	4��������Lsh�A�5�A�9�A�9�A�+A/�.A/�C�!C�?C�C�C�C�C�+D1�*D1�0D1c�B�i}|D]}|D]}d||<��
t|��S)zdCreate an order set (represented as a list) of the objects in
    the sequences passed as arguments.T)�sorted)r�sr��ys    r�
merge_as_setsrwosC��	�A�
�����	�	�A��A�a�D�D�	��!�9�9�rr#)r)F)Lr:r8�os.pathr�typingrrrrrrr	r
rrr
rrrrr�ImportError�debian.deprecationrr��initr��Error�_sha1�sha1r�_sha256�sha256r�debian._arch_table�debian�_arch_table�
DpkgArchTable�	Exceptionr!�objectr?r�r�r�r�r�r�r�r�listReleasesrr�
internReleaserr�
readLinesSHA1�
_patch_re_rawr�r'rr&r2�patchesFromEdScriptr5�
patchLinesr@�replaceFilerL�downloadGunzipLinesrO�downloadFilerr�
updateFilerw�mergeAsSetsr�rr�<module>r�s���8�8�&
�	�	�	�����	�	�	�	�	���������������������������������������$�	�	�	��D�	����6�5�5�5�5�5�
��N�N�N���������
�
���=�����
�
�
������������M�M�M�����

"��L�L�L��z�H�H���"�"�"�"�"�"�"�"�"����
"��N�N�N���J�J���"�"�"�"�"�"�"�"�"���������"�0�
�'1�'1�'1�'1�'1��'1�'1�'1�TH�H�H�H�H�&�H�H�H�V>�>�>�>�>�K�>�>�>�"\�\�\�\�\�K�\�\�\�~�
�
�
�
�
�
�-�
�
�
�
�
�
�
�
�
�-�
�
�
�
�
�
�OB�OB�OB�OB�OB�OB�OB�OB�d.!�.!�.!�.!�.!�.!�.!�.!�b�����j����$���B&�%�m�4�4���
���
�����'�&�~�6�6�
���������'�&��7�7�
�-�
��B�J�}�%�%�	��b�j��-�-�g�6�6�7�7��
�9#�9#�9#�9#�v-�,�-C�D�D��!�!�!�$�
#�K�
0�
0�
�!�!�!�!�%�$�\�2�2��#�#�#�-�,�-B�C�C��
�
�
�&�%�m�4�4��k�k�k�k�\$�
#�K�
0�
0�
����%�$�]�3�3���sf�$5�=�=�A1�A�A1�A-�*A1�,A-�-A1�1A;�:A;�?B�B�B�B&�&B1�0B1