ok

Mini Shell

Direktori : /opt/alt/python311/lib64/python3.11/__pycache__/
Upload File :
Current File : //opt/alt/python311/lib64/python3.11/__pycache__/platform.cpython-311.opt-2.pyc

�

�f/�����	dZdZddlZddlZddlZddlZddlZddlZddddddddd	d	d
�
Zej	d��Z
d�Zej	d
ej��Z
d^d�Zd_d�Zej	d��Z		d`d�Zdddddddddddd �Zdd!d"d#d$d%d&�Zd'�Zd(�Zdad)�Zd*�Zdbd,�Zd-�Zdcd.�Zd/�Zd0�Zd_d1�Zd2�Zd_d3�Zd4d5d6d�Z ej!ddfd7�Z"d8�Z#Gd9�d:��Z$d;�Z%Gd<�d=ej&d>d?����Z'da(d@�Z)dA�Z*dB�Z+dC�Z,dD�Z-dE�Z.dF�Z/ej	dGej��Z0ej	dHej��Z1ej	dI��Z2ej	dJ��Z3iZ4dddK�Z5dL�Z6dM�Z7dN�Z8dO�Z9dP�Z:dQ�Z;dR�Z<iZ=dedS�Z>ej	dT��Z?ej	dU��Z@dVZAdaBdW�ZCdX�ZDeEdYkrKdZejFvpd[ejFvZGd\ejFvod]ejFvZHeIe>eHeG����ejJd��dSdS)fa
    Copyright (c) 1999-2000, Marc-Andre Lemburg; mailto:mal@lemburg.com
    Copyright (c) 2000-2010, eGenix.com Software GmbH; mailto:info@egenix.com

    Permission to use, copy, modify, and distribute this software and its
    documentation for any purpose and without fee or royalty is hereby granted,
    provided that the above copyright notice appear in all copies and that
    both that copyright notice and this permission notice appear in
    supporting documentation or portions thereof, including modifications,
    that you make.

    EGENIX.COM SOFTWARE GMBH DISCLAIMS ALL WARRANTIES WITH REGARD TO
    THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
    FITNESS, IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL,
    INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
    FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
    NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
    WITH THE USE OR PERFORMANCE OF THIS SOFTWARE !

z1.0.8�N�
���(�2��)
�dev�alpha�a�beta�b�c�RC�rc�pl�pz([0-9]+|[._+-])c��g}t�|��D]\}|dvrV	t|d��}d}n+#t$rt�|d��}YnwxYw|�||f���]|S)Nz._+-r�dr)�
_component_re�split�int�
ValueError�_ver_stages�get�extend)�version�result�v�ts    �//opt/alt/python311/lib64/python3.11/platform.py�_comparable_versionr!�s���
�F�
�
 �
 ��
)�
)�"�"���F�?�?�
*���2�J�J�������
*�
*�
*��O�O�A�q�)�)����
*�����M�M�1�a�&�!�!�!���Ms�7�%A�AsC(__libc_init)|(GLIBC_([0-9.]+))|(libc(_\w+)?\.so(?:\.(\d[0-9.]*))?)��@c��	|s}	tjd��}|�d���}t|��dkrt	|��Sn#t
ttf$rYnwxYwtj	}|s||fSt}tj�|��}t|d��5}|�|��}d}	|	t|��k�r\d|vsd|vrt�||	��}
nd}
|
r%|
���t|��krH|�|��}|r.|t%|	t|��d	z
��d�|z}d}	��|
sn�d
�|
���D��\}}
}}}}|r|sd}ns|
r&|dkrd}|}nf||��||��kr|}nK|rI|dkrCd}|r|r||��||��kr|}|r!|t|��d�|kr||z}|
���}	|	t|��k��\ddd��n#1swxYwY||fS)
N�CS_GNU_LIBC_VERSION�)�maxsplit��rbrslibcsGLIBCi�c�@�g|]}|�|�d��n|��S)N�latin1)�decode)�.0�ss  r �
<listcomp>zlibc_ver.<locals>.<listcomp>�sC��E%�E%�E%��'(�m�����"�"�"��E%�E%�E%��libc�glibc)�os�confstrr�len�tuple�AttributeErrorr�OSError�sys�
executabler!�path�realpath�open�read�_libc_search�search�end�max�groups)r:�libr�	chunksize�ver�parts�V�f�binary�pos�m�chunk�libcinitr2�glibcversion�so�threads�	soversions                  r �libc_verrS�s���� �	��*�2�3�3�C��I�I�q�I�)�)�E��5�z�z�Q����U�|�|�#����
�G�4�	�	�	��D�	�����^�
��	 ���<���A���!�!�*�-�-�J�	
�j�$�	�	�"�1����	�"�"�����C��K�K����&� � �H��$6�$6� �'�'���4�4������
������3�v�;�;�.�.����y�)�)����#�C��S��[�[�4�-?�$@�$@�$A�$A�B�U�J�F��C�����E%�E%������E%�E%�E%�A�H�e�\�2�w�	��
4��
4�����
4��'�>�>�!�C�*�G�G��Q�|�_�_�q�q��z�z�1�1�*�G���
4��'�>�>� �C� �,�'�,�Q�Q�y�\�\�A�A�g�J�J�5N�5N�"+���4�7�C��L�L�=�>�>�#:�g�#E�#E�")�G�"3���%�%�'�'�C�?�C��K�K���"�"�"�"�"�"�"�"�"�"�"����"�"�"�"�F��<�s%�AA�A,�+A,�7FI�I�Ic	�,�	|�d��}|r|�|��	ttttt
|������}n#t$r|}YnwxYwd�|dd���}|S)N�.�)r�append�list�map�strrr�join)r�build�l�stringss    r �
_norm_versionr_�s����	�
�
�c���A���	���������s�3��C����,�,�-�-�����������������h�h�w�r��r�{�#�#�G��Ns�5A%�%A4�3A4z'(?:([\w ]+) ([\w.]+) .*\[.* ([\d.]+)\])��win32�win16�dosc	���	tj|vr|||fSddl}dD]G}	|�||j|jddd���}n##t
|jf$r
}Yd}~�@d}~wwxYw|||fS|���}t�	|��}|�S|�
��\}}}|ddkr
|dd�}|ddkr
|dd�}t|��}|||fS)Nr)rFzcommand /c verz
cmd /c verT�locale)�stdin�stderr�text�encoding�shell���rU)r9�platform�
subprocess�check_output�DEVNULLr8�CalledProcessError�strip�_ver_output�matchrCr_)	�system�releaser�supported_platformsrm�cmd�info�whyrLs	         r �_syscmd_verrzsP��	��|�.�.�.��w��'�'�����6�(�(��	��*�*�3�1;�1C�2<�2D�04�4<�15�+�7�7�D�
�E��	��6�7�	�	�	��H�H�H�H�����	�����w��'�'��:�:�<�<�D����$���A��}�#$�8�8�:�:� �����2�;�#����c�r�c�l�G��2�;�#����c�r�c�l�G� ��(�(���7�G�#�#s�%A�A �A �2000�XP�
2003Server�post2003�Vista�7�8z8.1zpost8.1�10�post10))�r)r�r&�r�r()r�N��r�r�r&�r�r(�r�rV�r�N)rr)rN�
2008Server�2008ServerR2�
2012Server�2012ServerR2�post2012ServerR2)r�r�r�r�r�r�c�"�t��dvS)N)�IoTUAP�
NanoServer�WindowsCoreHeadless�	IoTEdgeOS)�
win32_edition�r0r �win32_is_iotr�Vs���?�?�Z�Z�Zr0c�"�		ddl}n#t$rddl}YnwxYw	d}|�|j|��5}|�|d��dcddd��S#1swxYwYn #t$rYnwxYw#t$rYnwxYwdS)Nr�,SOFTWARE\Microsoft\Windows NT\CurrentVersion�	EditionId)�winreg�ImportError�_winreg�	OpenKeyEx�HKEY_LOCAL_MACHINE�QueryValueExr8)r��cvkey�keys   r r�r�Ys6��
�	%��M�M�M�M���	%�	%�	%�$�$�$�$�$�$�	%����
	�C�E��!�!�&�";�U�C�C�
@�s��*�*�3��<�<�Q�?�
@�
@�
@�
@�
@�
@�
@�
@�
@�
@�
@�
@����
@�
@�
@�
@�
@���	�	�	��D�	������
�
�
���
�����4s[��A?��A?��A?�A/�A#�A/�#A'�'A/�*A'�+A/�/
A<�;A<�?
B�Bc�2�	ddlm}n#t$r	||||fcYSwxYw|��}	ttt��d�d����\}}}n%#t$r|jp	|dd�\}}}YnwxYwd�	|||��}t�||f��pt�|df��p|}|dd�||fkrG	d�	|j��}n+#t$r|dd�d	kr
d
|dd�z}YnwxYwt|dd��dkr:t�||f��pt�|df��p|}		ddl}	n#t$rddl}	YnwxYw	d}
|	�|	j|
��5}|	�|d
��d}ddd��n#1swxYwYn #t*$rYnwxYw#t$rYnwxYw||||fS)Nr)�getwindowsversionr(rUrVz{0}.{1}.{2}zSP{}�
z
Service Pack �SP�product_typer��CurrentType)r9r�r�rYrrzrr�platform_version�format�_WIN32_CLIENT_RELEASESr�service_pack_majorr7�getattr�_WIN32_SERVER_RELEASESr�r�r�r�r�r8)rur�csd�ptyper��winver�major�minorr\r�r�r�s            r �	win32_verr�ks"��,�)�)�)�)�)�)�)���,�,�,����e�+�+�+�+�,�����
�
 �
 �F�D�!�#�{�}�}�Q�'7�'=�'=�c�'B�'B�C�C���u�e�e���D�D�D�$�5�C��������u�e�e�e�D�����"�"�5�%��7�7�G�%�)�)�5�%�.�9�9��%�)�)�5�$�-�8�8�����b�q�b�z�e�U�^�#�#�	&��-�-�� 9�:�:�C�C���	&�	&�	&��3�B�3�x�?�*�*��S����X�o����	&����
�v�~�t�,�,��1�1�)�-�-�u�e�n�=�=��)�-�-�u�d�m�<�<���	�
�	%��M�M�M�M���	%�	%�	%�$�$�$�$�$�$�	%����
	�C�E��!�!�&�";�U�C�C�
C�s��+�+�C��?�?��B��
C�
C�
C�
C�
C�
C�
C�
C�
C�
C�
C����
C�
C�
C�
C����	�	�	��D�	������
�
�
���
�����G�S�%�'�'s��	���>A)�)B�
B�0D�%D3�2D3�F�H�F�H�F�H�!G3�>G'�G3�'G+�+G3�.G+�/G3�3
H�?H�
H�Hc�J�d}tj�|��sdS	ddl}n#t$rYdSwxYwt|d��5}|�|��}ddd��n#1swxYwY|d}d}tj��j}|dvrd}|||fS)Nz0/System/Library/CoreServices/SystemVersion.plistrr)�ProductVersion�r"r"r")�ppczPower Macintosh�PowerPC)	r3r;�exists�plistlibr�r=�load�uname�machine)�fnr�rIrru�versioninfor�s       r �_mac_ver_xmlr��s��	;�B�
�7�>�>�"�����t�������������t�t�����
�b�$����1�
�]�]�1�
�
���������������������!�"�G��K��h�j�j� �G��,�,�,����K��(�(s�*�
8�8�A-�-A1�4A1r�c�2�	t��}|�|S|||fS�N)r�)rur�r�rxs    r �mac_verr��s,����>�>�D������K��(�(r0c�j�ddlm}	|�|��}|�|S|S#t$r|cYSwxYw)Nr)�System)�	java.langr��getPropertyr7)�name�defaultr��values    r �
_java_getpropr��s_�� � � � � � ���"�"�4�(�(���=��N���������������s�#�#�2�2c�t�		ddl}n#t$r	||||fcYSwxYwtd|��}td|��}|\}}}td|��}td|��}td|��}|||f}|\}}	}
td|
��}
td|��}td	|	��}	||	|
f}||||fS)
Nrzjava.vendorzjava.versionzjava.vm.namezjava.vm.vendorzjava.vm.versionzjava.os.archzjava.os.namezjava.os.version)r�r�r�)ru�vendor�vminfo�osinfo�java�vm_name�
vm_release�	vm_vendor�os_name�
os_version�os_archs           r �java_verr��s��	�/��������/�/�/�����.�.�.�.�/�����=�&�
1�
1�F��N�G�4�4�G�%+�"�G�Z���N�G�4�4�G��.�	�:�:�I��0�*�=�=�J�
�j�)�
+�F�#)� �G�Z���N�G�4�4�G��N�G�4�4�G��0�*�=�=�J�
�j�'�
)�F��F�F�F�*�*s���c�(�	|dkr�|dkr|||fS|�d��}|rS	t|d��}|dz
}t|��|d<d�|��}n#t$rYnwxYw|dkrd}n	d}n|dvrd	}|||fS)
N�SunOS�5rUrrV�6�Solaris�rarb�Windows)rrrZr[r)rtrurr]r�s     r �system_aliasr��s���������S�=�=��7�G�+�+��M�M�#�����	&�
&��A�a�D�	�	����	���5�z�z��!���(�(�1�+�+�����
�
�
���
�����S�=�=��F�F��F�F�	�%�	%�	%���
�7�G�#�#s�A-�-
A:�9A:c�~�	d�d�tt|��D����}|�dd��}|�dd��}|�dd��}|�dd��}|�dd��}|�d	d��}|�d
d��}|�dd��}|�dd
��}	|�dd��}||krn|}� |ddkr|dd�}|ddk�|S)N�-c3�>K�|]}|���V��dSr�)rq)r-�xs  r �	<genexpr>z_platform.<locals>.<genexpr>%s*����=�=�a����	�	�=�=�=�=�=�=r0� �_�/�\�:�;�"�(�)�unknownr"r&z--rk)r[�filterr5�replace)�argsrl�cleaneds   r �	_platformr�s\����x�x�=�=�6�#�t�+<�+<�=�=�=�=�=�H�����S�)�)�H�����S�)�)�H�����c�*�*�H�����S�)�)�H�����S�)�)�H�����S�)�)�H�����S�)�)�H�����S�)�)�H����	�2�.�.�H���"�"�4��-�-���h������	�
�2�,�#�
�
��C�R�C�=���2�,�#�
�
��Or0c��		ddl}n#t$r|cYSwxYw	|���S#t$r|cYSwxYw�Nr)�socketr��gethostnamer8)r�r�s  r �_noder�?sv�����
�
�
�
����������������!�!�#�#�#�������������s����/�>�>c��	tj�|��}tj�|��r�tj�tj�tj�|��tj|������}tj�|����|Sr�)r3r;�abspath�islink�normpathr[�dirname�readlink)�filepaths r �_follow_symlinksrNs�����w���x�(�(�H�
�'�.�.��
"�
"�L��7�#�#��G�L�L������2�2�B�K��4I�4I�J�J�L�L��
�'�.�.��
"�
"�L��Or0c�P�	tjdvr|S	ddl}n#t$r|cYSwxYwt	|��}ttjd���}	|�dd|g|j	|���}n#t|jf$r|cYSwxYw|s|S|�d��S)	N)rcrarbr�C)�LC_ALL�filez-b)rg�envzlatin-1)
r9rlrmr�r�dictr3�environrnror8rpr,)�targetr�rmr�outputs     r �_syscmd_filerZs�����|�0�0�0����������������������
�f�
%�
%�F��r�z�#�
&�
&�
&�C���(�(�&�$��)?�0:�0B�-0�)�2�2����
�Z�2�3�����������������=�=��#�#�#s��'�'� A6�6B�B)r"�	WindowsPE)r"r�)r"�MSDOSc��	|s.ddl}|�d��}t|dz��dz}|rt|d��}nd}|sI|tjkr9tjtvr"ttj\}}|r|}|r|}||fSd|vrd|vr||fSd|vrd	}nd
|vrd}d|vrd}nd
|vr
d|vrd}nd
}nd|vrd}nd|vrd}n	||fS)Nr�P��bitr"r:z
shared objectz32-bit�32bitz64-bit�64bit�ELF�PEr�r
�COFFzMS-DOSr)�struct�calcsizerZrr9r:rl�_default_architecture)r:�bits�linkager�size�fileoutr
r]s        r �architecturer�sd���*�%��
�
�
����s�#�#���4�!�8�}�}�u�$�����z�2�.�.������
��S�^�#�#��<�0�0�0�(���6�D�A�q��
����
����W�}���7�"�"��g�'E�'E��W�}���7������	�W�	�	���
�������	
��������!�G�G��G�G�	�7�	�	����	�W�	�	����	
���=�r0c��tj�dd��ptj�dd��S)N�PROCESSOR_ARCHITEW6432r"�PROCESSOR_ARCHITECTURE)r3r	rr�r0r �_get_machine_win32r#�s6��	�
���/��4�4�	5�
�
���/��4�4�r0c�6�eZdZed���Zd�Zd�Zd�ZdS)�
_Processorc�`�t|dtj��|j��}|��pdS)N�get_r")r�r9rl�from_subprocess)�cls�funcs  r rz_Processor.get�s1���s�1�3�<�1�1�3�3F�G�G���t�v�v�|��r0c�Z�tj�dt����S)N�PROCESSOR_IDENTIFIER)r3r	rr#r�r0r �	get_win32z_Processor.get_win32�s ���z�~�~�4�6H�6J�6J�K�K�Kr0c�t�	ddl}|�dd��\}}|dkrdndS#t$rYdSwxYw)NrzSYI$_CPU��Alpha�VAX)�vms_lib�getsyir�)r2�csid�
cpu_numbers   r �get_OpenVMSz_Processor.get_OpenVMS�sb��	;��N�N�N� '�~�~�j�!�<�<��D�*�(�C�/�/�7�7�U�:��	�	�	�	��D�D�	���s�)�
7�7c���		ddl}n#t$rYdSwxYw	|�ddg|jdd������S#t
|jf$rYdSwxYw)Nrr�z-pT�utf8)rgrhri)rmr�rnrorqr8rp)rms r r(z_Processor.from_subprocess�s���	�	��������	�	�	��4�4�	����	��*�*��$��!�)���	+���
�e�g�g�
����6�7�	�	�	��D�D�	���s��
��1A�A!� A!N)�__name__�
__module__�__qualname__�classmethodrr-r6r(r�r0r r%r%�s]����������[��L�L�L�;�;�;�����r0r%c��|dkrdn|S)Nr�r"r�)�vals r �_unknown_as_blankr?s���	�!�!�2�2�s�*r0c�l��eZdZ	dZejd���Z�fd�Zed���Z	d�Z
d�Zd�Z�xZ
S)�uname_result)rt�noderurr��	processorc�N�tt�����Sr�)r?r%r��selfs r rCzuname_result.processors�� ����!1�!1�2�2�2r0c�v��tjt�����|jf��Sr�)�	itertools�chain�super�__iter__rC)rF�	__class__s �r rKzuname_result.__iter__s2������G�G�����
�^��
�
�	
r0c���t|j��dz
}|j|g|�R�}t|��|dzkr$d|�dt|����}t|���|S)Nr&z	Expected z arguments, got )r5�_fields�__new__�	TypeError)r)�iterable�
num_fieldsr�msgs     r �_makezuname_result._make"sr�����%�%��)�
����S�,�8�,�,�,���v�;�;�*�q�.�(�(�G�j�G�G�#�f�+�+�G�G�C��C�.�.� ��
r0c�,�t|��|Sr�)r6)rFr�s  r �__getitem__zuname_result.__getitem__,s���T�{�{�3��r0c�T�ttt|������Sr�)r5r6�iterrEs r �__len__zuname_result.__len__/s���5��d���$�$�%�%�%r0c�h�tt|��dt|j��dz
�fS�Nr&)rAr6r5rNrEs r �
__reduce__zuname_result.__reduce__2s-���U�4�[�[�)?�#�d�l�*;�*;�a�*?�)?�@�@�@r0)r9r:r;rN�	functools�cached_propertyrCrKr<rTrVrYr\�
__classcell__)rLs@r rArA
s��������
�O�G���3�3���3�
�
�
�
�
�����[�� � � �&�&�&�A�A�A�A�A�A�Ar0rA�uname_result_basez#system node release version machinec���	t�tS	tj��x\}}}}}}n2#t$r%tj}t
��}dx}x}}d}YnwxYwt|��s�|dkr#t��\}}}}|p
t��}|r|s=t|��\}}}|dkrd}n!|dkr|dkrd}d|dd�krd	}nd}|d
vr|s|dkrd}nd}d}n<|dd
�dkr.t��\}}}	}
d}d�|	��}|s|}|dkr|r|dkr|}d}|dkr
|dkrd}d	}|||||f}ttt|���atS)Nr"r�razMicrosoft Windowsr��	Microsoftz6.0rVrr�r�16bit�r��Java�, �OpenVMS�0)�_uname_cacher3r�r7r9rlr��anyr�r#rzr�r[rArYr?)rtrBrurr��infosr�r�r�r�r��valss            r r�r�9s��	������:<�(�*�*�D�/���g�w��%�%����������w�w��&(�(��(�'�G�����	�����u�:�:�*!��W���+4�;�;�(�G�W�c�5��5�!3�!5�!5�G��	!�G�	!�'2�6�':�':�$�F�G�W��,�,�,�"����;�&�&�7�i�+?�+?�
#���G�B�Q�B�K�'�'�%�G�G� �G��'�'�'��
&��W�$�$�%�G�G�%�G��F�F�
�B�Q�B�Z�6�
!�
!�.6�j�j�+�G�V�V�V��F��i�i��'�'�G��
!� �������	�'�S�.�.��G��G������I�!5�!5������4��'�7�2�D���%6��!=�!=�>�L��s�-�,A�Ac�*�	t��jSr�)r�rtr�r0r rtrt�s���
�7�7�>�r0c�*�	t��jSr�)r�rBr�r0r rBrB�s����7�7�<�r0c�*�	t��jSr�)r�rur�r0r ruru�����
�7�7�?�r0c�*�	t��jSr�)r�rr�r0r rr�rpr0c�*�	t��jSr�)r�r�r�r0r r�r��rpr0c�*�	t��jSr�)r�rCr�r0r rCrC�s����7�7��r0zL([\w.+]+)\s*\(#?([^,]+)(?:,\s*([\w ]*)(?:,\s*([\w :]*))?)?\)\s*\[([^\]]+)\]?z;IronPython\s*([\d\.]+)(?: \(([\d\.]+)\))? on (.NET [\d\.]+)zU([\d.]+)\s*\(IronPython\s*[\d.]+\s*\(([\d.]+)\) on ([\w.]+ [\d.]+(?: \(\d+-bit\))?)\)zE([\w.+]+)\s*\(#?([^,]+),\s*([\w ]+),\s*([\w :]+)\)\s*\[PyPy [^\]]+\]?c�~�	|�tj}t�|d��}|�|Sd|vr�d}|�d��rt
�|��}nt�|��}|�tdt|��z���|�
��\}}}d}d}�nJtj�d��rhd}t�|��}|�tdt|��z���|�
��\}}}}	}
|�d}tj}n�d|vrYd}t�|��}|�tdt|��z���|�
��\}}}}	d}nft�|��}|�td	t|��z���|�
��\}}}}	}d
}|�d}n
|	r|dz|	z}ttd��rtj\}
}}n*ttd
��rtj\}
}}nd}d}|�d��}
t%|
��dkr*|
�d��d�|
��}|||||||f}|t|<|S)N�
IronPythonz*failed to parse IronPython sys.version: %sr"r��Jythonz&failed to parse Jython sys.version: %s�PyPyz$failed to parse PyPy sys.version: %sz'failed to parse CPython sys.version: %s�CPythonr��_git�
_mercurialrUr(rh)r9r�_sys_version_cacher�
startswith�_ironpython_sys_version_parserrs� _ironpython26_sys_version_parserr�reprrCrl�_sys_version_parser�_pypy_sys_version_parser�hasattrryrzrr5rWr[)�sys_versionrr�rsr�alt_version�compiler�buildno�	builddate�	buildtimer��branch�revisionr]s              r �_sys_versionr��s����&���k�� �
#�
#�K��
6�
6�F�
���
��{�"�"����!�!�,�/�/�	H�2�8�8��E�E�E�E�4�:�:�;�G�G�E��=��<��[�!�!�"�#�#�
#�*/�����&���h����	�	�	��	 �	 ��	(�	(�$4���#�)�)�+�6�6���=��8��[�!�!�"�#�#�
#�5:�L�L�N�N�1���)�Y�����I��<���	�;�	�	���(�.�.�{�;�;���=��C�!�+�.�.�/�0�0�
0�16�����.���)�Y����$�)�)�+�6�6���=��9��[�!�!�"�#�#�
#��l�l�n�n�	9���)�Y�������I�I�
�	4�!�C��)�3�I��s�F����!�h���6�8�8�	��l�	#�	#��!�n���6�8�8�����	�
�
�c���A�
�1�v�v��{�{�	����
�
�
��(�(�1�+�+���G�V�X�w�	�8�
L�F�&,��{�#��Mr0c�,�	t��dSr��r�r�r0r �python_implementationr�R�����>�>�!��r0c�,�	t��dSr[r�r�r0r �python_versionr�_s����>�>�!��r0c�l�	tt��d�d����S)Nr&rU)r6r�rr�r0r �python_version_tupler�is.��������"�(�(��-�-�.�.�.r0c�,�	t��dS)Nr(r�r�r0r �
python_branchr�ts����>�>�!��r0c�,�	t��dS)NrVr�r�r0r �python_revisionr��r�r0c�0�	t��dd�S)Nrdr�r�r�r0r �python_buildr��s����>�>�!�A�#��r0c�,�	t��dS)Nr�r�r�r0r �python_compilerr��s����>�>�!��r0c	��	t�||fd��}|�|St��\}}}}}}||krd}|rt|||��\}}}|dkrt	��d}	|	rd}|	}|dkr:t|��\}
}}}
|rt
||��}n�t
||||��}n�|dvr)t��\}}t
||||d||z��}n�|dkrCt��\}}}\}}}|s|st
|||��}nYt
|||d	|||��}nC|rt
||��}n0ttj��\}}t
||||||��}|t||f<|S)
Nr"�Darwinr�macOSr�)�Linux�withre�on)�_platform_cacherr�r�r�r�r�rSr�rr9r:)�aliased�terserrtrBrurr�rC�
macos_release�rel�versr�r�rl�libcname�libcversion�rrr�r�r�r�rrs                         r rlrl�s����"�
 �
 �'�5�!1�4�
8�
8�F�
���
�:?���6�F�D�'�7�G�Y��)����	��J�#/����#I�#I� ����
�����	�	�!��
��	$��F�#�G�
���� )�'� 2� 2���T�3���	@� ���1�1�H�H� ���'�3�?�?�H�H�	�:�	�	� (�
�
���+��V�W�g�y�#�%�k�1�3�3���
�6�	�	�7?�z�z�4��1�f�4�w�
�G��	?��	?� ���'�:�:�H�H� ���'�!%�!(�*�g�?�?�H�H��	;� ���1�1�H�H�(���8�8�M�D�'� ���'�!*�D�'�;�;�H�)1�O�W�e�$�%��Or0zA^(?P<name>[a-zA-Z0-9_]+)=(?P<quote>["']?)(?P<value>.*)(?P=quote)$z\\([\\\$\"\'`]))z/etc/os-releasez/usr/lib/os-releasec���dddd�}|D]b}t�|��}|�Dt�d|�d����||�d��<�c|S)Nr��linux)�NAME�ID�PRETTY_NAMEz\1r�r�)�_os_release_liners�_os_release_unescape�sub�group)�linesrx�line�mos    r �_parse_os_releaser��s��������D�����
�
#�
#�D�
)�
)��
�>�%9�%=�%=��r�x�x��(�(�&�&�D����&�!�!�"���Kr0c�b�	t��d}tD]Z}	t|d���5}t|��addd��n#1swxYwYnI#t$r}|j}Yd}~�Sd}~wwxYwt	|dd�t�������t���S)Nzutf-8)rizUnable to read files rf)�_os_release_cache�_os_release_candidatesr=r�r8�errnor[�copy)r��	candidaterI�es    r �freedesktop_os_releaser�s���� ���/�	�	�I�
 ��)�g�6�6�6�=�!�(9�!�(<�(<�%�=�=�=�=�=�=�=�=�=�=�=����=�=�=�=�����
 �
 �
 �������������
 ������K��	�	�2H�(I�(I�K�K���
�
�!�!�#�#�#s9�A�A�A�A	�A�	A	�
A�
A*�A%�%A*�__main__r�z--terse�
nonaliasedz--nonaliased)Nr"r"r#)r")r"r"r"r`)r"r"r"r")r"r�r")r"r"r�r�r�)rr)K�
__copyright__�__version__�collectionsr3�rer9r]rHr�compilerr!�ASCIIr?rSr_rrrzr�r�r�r�r�r�r�r�r�r�r�r�rrrr:rr#r%r?�
namedtuplerArir�rtrBrurr�rCr�r}r~r�r{r�r�r�r�r�r�r�r�r�rlr�r�r�r�r�r�r9�argvr�r��print�exitr�r0r �<module>r�s����r�
�*������	�	�	�	�	�	�	�	�
�
�
�
����������
�b��R�	�
�B�

�C�	�	����
�-�.�.�
�
�
�
��r�z�B�DF�8�	M�M��H�H�H�H�T
�
�
�
��b�j�-�.�.��02�#<�0$�0$�0$�0$�f
��
�������
�����(
�����!����[�[�[����$0(�0(�0(�0(�f)�)�)�,)�)�)�)�&	�	�	�+�+�+�+�F&$�&$�&$�T���@
�
�
�
�	�	�	� $� $� $� $�N�
����� �N��R�I�I�I�I�X
�
�
�"�"�"�"�"�"�"�"�J+�+�+�)A�)A�)A�)A�)A��K���-�/�/�)A�)A�)A�X��U�U�U�r���������������
�
�
�!�b�j���h� � ��",�����8�	"%�"%��$.�2�:�:�$�$� �&�2�:�����
��f�f�f�f�P������	/�	/�	/���������������H�H�H�H�^�2�:�I����"�r�z�"4�5�5��C�������&$�$�$�2�z���
���
 �
9�I���$9�E��3�8�+�N�N�c�h�4N�G�	�E�(�(�7�E�
"�
"�#�#�#��C�H�Q�K�K�K�K�K��r0

Zerion Mini Shell 1.0