403Webshell
Server IP : 35.80.110.71  /  Your IP : 216.73.216.221
Web Server : Apache/2.4.58 (Ubuntu)
System : Linux ip-172-31-21-44 6.17.0-1019-aws #19~24.04.1-Ubuntu SMP Tue Jun 23 18:53:06 UTC 2026 x86_64
User : ubuntu ( 1000)
PHP Version : 8.3.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/matplotlib/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/matplotlib/tests/__pycache__/test_simplification.cpython-312.pyc
�

G8�c`I����ddlZddlZddlZddlmZmZddlZddlm	Z	m
Z
mZddlm
ZddlmZmZddlmZe
dgd��d	��Ze
d
gd��d��Ze
dgd��d
��Zd�Zd�Zd�Zej4j7ddej8dzej8dzej8dzg�ej4j7dddg�d���Zd�Ze
dgdd��d��Ze	�d��Z e	�d��Z!e
dgd��d ��Z"e
d!gd��d"��Z#d#�Z$d$�Z%e
d%gd��d&��Z&e
d'gd��d(��Z'e
d)g�d*��Z(d+�Z)y),�N)�assert_array_almost_equal�assert_array_equal)�check_figures_equal�image_comparison�remove_ticks_and_titles)�patches�
transforms)�Path�clippingT)�remove_textc��tjddd�}tjdtjz|z�}t	j
�\}}|j
||d��|jd�y)N��@�{�G�z�?���?)�	linewidth)g������ɿg�Q���ѿ)�np�arange�sin�pi�plt�subplots�plot�set_ylim)�t�s�fig�axs    �F/usr/lib/python3/dist-packages/matplotlib/tests/test_simplification.py�
test_clippingr!s[��
�	�	�#�s�D�!�A�
���q����w�q�y��A��l�l�n�G�C���G�G�A�q�C�G� ��K�K����overflowc���tjgd��}tjt|��}t	j
�\}}|j
||�|jdd�y)N)rr�@gjAr�)r�arrayr�lenrrr�set_xlim��x�yrrs    r �
test_overflowr-sM��
���'�(�A�
�	�	�#�a�&��A��l�l�n�G�C���G�G�A�q�M��K�K��1�r"�clipping_diamondc��tjgd��}tjgd��}tj�\}}|j	||�|jdd�|j
dd�y)N)rrr��r)rrr0rrg333333�g333333�?)rr'rrrr)rr*s    r �test_diamondr1(sX��
���+�,�A�
���+�,�A��l�l�n�G�C���G�G�A�q�M��K�K��c���K�K��c�r"c���tgd��}|jd��}t|jdg�|jtj
gk(sJ�tgd�tjtjtjg�}|jd��}t|jdg�|jtj
gk(sJ�tgd�tjtjtjg�}|j�}|jd��}t|j|j�t|j|j�y)N)�rr��r�rr5)�
r7�r8��clipr3)r3r4)r�)	r
�cleanedr�vertices�codes�STOP�MOVETO�LINETO�CURVE3)�path�
simplified�simplified_clippeds   r �test_clipping_out_of_boundsrF3s���(�)�D����#3��4�J��z�*�*�V�H�5�����	�	�{�*�*�*��(����d�k�k�4�;�;�7�9�D����#3��4�J��z�*�*�V�H�5�����	�	�{�*�*�*��(����d�k�k�4�;�;�7�9�D�����J����+;��<���z�*�*�,>�,G�,G�H��z�'�'�);�)A�)A�Br"c���tjjd�tjjd��dz}t	j
�\}}|j
|dd��}|jj�|dj�}|dj�}|j|�}|jd�	�}|jjd
k(sJ�y)Nr�P���size�2�roundr��solid_joinstylerT��simplifyi�c)r�random�seed�uniformrrr�canvas�draw�get_path�
get_transform�transform_pathr<r=rJ�r+rr�p1rC�	transformrDs       r �
test_noiser\Js����I�I�N�N�1��
�	�	���u��%��*�A��l�l�n�G�C��	����G�s��	;�B��J�J�O�O��
�a�5�>�>��D��1��#�#�%�I��#�#�D�)�D����t��,�J����#�#�u�,�,�,r"c�b�d�}gd�}gd�}|||�}tddgddgddgddgg|jdd	�dd�f�gd�}gd
�}|||�}tddgddgddgddgg|jdd	�dd�f�gd�}gd�}|||�}tddgddgddgddgddgg|jdd	�dd�f�gd�}gd
�}|||�}tddgddgddgg|jdd	�dd�f�gd�}gd�}|||�}tddgddgddgddgg|jdd	�dd�f�y)Nc�(�tj�\}}|j||�}|dj�}|dj	�}|j|�}|j
d��}|j�j|�}|S)NrTrO)rrrrVrWrXr<�inverted)r+r,rrrZrCr[rDs        r �_get_simplifiedz9test_antiparallel_simplification.<locals>._get_simplified\s����,�,�.���R�
�W�W�Q��]���!�u�~�~����q�E�'�'�)�	��'�'��-���\�\�4�\�0�
��'�'�)�8�8��D�
��r")rrrrrr5)��?r5���r5rrarrar0rr���)rar5rbr5rcrag�)rar5rbr5rra)rar5rr5r;rar%)rar5rr5r5ra)rr=)r`r+r,rDs    r � test_antiparallel_simplificationrd[s���
�	�A��A� ��A�&�J���C�y� "�C�y� "�B�x� "�C�y�*�)�1�1�#�2�#�q�&�9�	;�	�A��A� ��A�&�J���C�y� "�B�x� "�C�y� "�C�y�*�)�1�1�#�2�#�q�&�9�	;�	�A��A� ��A�&�J���C�y� "�B�x� "�C�y� "�B�x� "�C�y�	*�
)�1�1�#�2�#�q�&�9�;�	�A��A� ��A�&�J���C�y� "�B�x� "�C�y�*�)�1�1�#�2�#�q�&�9�;�	�A��A� ��A�&�J���C�y� "�B�x� "�B�x� "�C�y�*�)�1�1�#�2�#�q�&�9�	;r"�angle�r;r�offsetrac�*�d}tjjd�tjjd�|z
|z}d|d<d|d<tj|�|z}tj
|�|z}|ddj
�}|ddj�}|ddj
�}|ddj�}	|dkDr%tddg||g||	g|d|dgddgggd���}
n!tddg||g|d|dgddgggd	���}
ttj||g�j�}|jd
��}t|
j|j�t|
j|j�y)N�i!N,�rr5rb)r5rrrr)r>)r5rrrTrO)rrQrR�randr�cos�max�minr
�vstack�Tr<rr=rr>)
rerg�scale�vert_offsetsr+r,�x_max�x_min�y_max�y_min�
p_expected�p�p2s
             r �test_angled_antiparallelrz�s���
�E��I�I�N�N�8���I�I�N�N�2�&��/�5�8�L��L��O��L��O�
���u�
��$�A�
���u�
��$�A�
�a�b�E�I�I�K�E�
�a�b�E�I�I�K�E�
�a�b�E�I�I�K�E�
�a�b�E�I�I�K�E�
��z��A�q�6�!�5�>�!�5�>��b�E�1�R�5�>��q�6�	#�
!0�1�
��A�q�6�!�5�>��b�E�1�R�5�>��q�6�#�!-�	.�
�	
�R�Y�Y��1�v�
�
 �
 �!�A�	
���D��	!�B��j�1�1� �k�k�+��z�'�'����2r"c�R�tjjd�tjtjdtj
dzd��tjj
d��dzz}tj�\}}|j|dd��}|jj�|dj�}|dj�}|j|�}|jd�	�}|j j"d
k(sJ�y)NrrrHrIrrLrMTrOi�b)rrQrRr�linspacerrSrrrrTrUrVrWrXr<r=rJrYs       r �test_sine_plus_noiser}�s����I�I�N�N�1��	������A�r�u�u�s�{�E�2�	3�	���	�	��	�	&��	-�
.�A��l�l�n�G�C��	����G�s��	;�B��J�J�O�O��
�a�5�>�>��D��1��#�#�%�I��#�#�D�)�D����t��,�J����#�#�u�,�,�,r"�simplify_curveg�� �rh�?)r�tolc
��tjtdddtjdfddddgtj
tjtjtjtjtjtjtjg�d��}tj�\}}|j|�|jd	�|jd	�y)
Nr3)r5r)r5r5r5)rr)rr�none)�fc)rr)
r�	PathPatchr
r�nanr@rB�	CLOSEPOLYrr�	add_patchr)r)�pp1rrs   r �test_simplify_curver��s���
�
�
��f�f�f�r�v�v�q�k�6�6�6����k�k�4�;�;����T�[�[�$�+�+��k�k�4�;�;����8�	9���C��l�l�n�G�C���L�L����K�K����K�K��r"c
���|jdd�j�}|jdd�j�}tdtjgddgddgddgddggtj
tjtjtjtjg�}|djtj|d���tdtjgddgddgddgdtjggtj
tjtjtjtjg�}|djtj|d���tddgddgddgdtjgddggtj
tjtjtjtjg�}|djtj|d���tddgddgddgdtjgddggtj
tjtjtjtjg�}|djtj|d���tdtjgddgddgddgddgddgddgddgdtjgddgg
tj
tjtjtjtjtj
tjtjtjtjg
�}|djtj|d���tdtjgddgddgddgdtjgddgddgddgdtjgddgg
tj
tjtjtjtjtj
tjtjtjtjg
�}|djtj|d���td	d	gdd	gdtjgddgd	dgd	d	ggtj
tjtjtjtjtjg�}|djtj|d���td	d	gdd	gdtjgddgd	dgd	d	ggtj
tjtjtjtjtjg�}|djtj|d���tddgddgddgdtjgddgddggtj
tjtjtjtjtjg�}|djtj|d���tddgddgddgdtjgddgddggtj
tjtjtjtjtjg�}|djtj|d���td	d	gdd	gdtjgddgddgd	dgd	d	ggtj
tjtjtjtjtjtjg�}|djtj|d���td	d	gdd	gdtjgddgddgd	dgd	d	ggtj
tjtjtjtjtjtjg�}|djtj|d���tddgddgddgdtjgddgddgddggtj
tjtjtjtjtjtjg�}|djtj|d���tddgddgddgdtjgddgddgddggtj
tjtjtjtjtjtjg�}|djtj|d���tddgddgddgddgdtjgddgddggtj
tjtjtjtjtjtjg�}|djtj|d���tddgddgddgddgdtjgddgddggtj
tjtjtjtjtjtjg�}|djtj|d���g|j�|j�D]}|jd
d
���t|�t|�y)Nr���r;rr���	facecolorrcr5rb)g�g@)�xlim�ylim)r�flattenr
rr�r@rAr�r�rr�rB�CURVE4�flat�setr)�fig_test�fig_ref�ax_test�ax_refrCrs      r �test_closed_path_nan_removalr��s5	������1�%�-�-�/�G�
�
�
�a��
#�
+�
+�
-�F��
�b�f�f���2�w��A���Q��"�b��:�	
���d�k�k�4�;�;����T�^�^�L�N�D��A�J����*�*�4�6�B�C��
�b�f�f���2�w��A���Q��"�b�f�f��>�	
���d�k�k�4�;�;����T�[�[�I�K�D��1�I����)�)�$�&�A�B��
�b��A�r�7�Q��F�R����L�2�r�(�;�	
���d�k�k�4�;�;����T�^�^�L�N�D��A�J����*�*�4�6�B�C��
�b��A�r�7�Q��F�R����L�2�r�(�;�	
���d�k�k�4�;�;����T�[�[�I�K�D��1�I����)�)�$�&�A�B��
�b�f�f���2�w��A���Q��"�b��
�b��A�r�7�Q��F�R����L�2�r�(�	<�	
���d�k�k�4�;�;����T�^�^�	
���d�k�k�4�;�;����T�^�^�	M�N�D�
�A�J����*�*�4�6�B�C��
�b�f�f���2�w��A���Q��"�b�f�f��
�b��A�r�7�Q��F�R����L�2�r�(�	<�	
���d�k�k�4�;�;����T�[�[�	
���d�k�k�4�;�;����T�[�[�	J�K�D�
�1�I����)�)�$�&�A�B��
�b��A�r�7�Q����K�!�Q��"�a��2�r�(�C�	
���d�k�k�4�;�;����T�[�[�	
���	��D��A�J����*�*�4�6�B�C��
�b��A�r�7�Q����K�!�Q��"�a��2�r�(�C�	
���d�k�k�4�;�;����T�[�[�	
���	��D��1�I����)�)�$�&�A�B��
�b��A�r�7�Q��F�Q����K�"�a��2�r�(�C�	
���d�k�k�4�;�;����T�[�[�	
���	��D��A�J����*�*�4�6�B�C��
�b��A�r�7�Q��F�Q����K�"�a��2�r�(�C�	
���d�k�k�4�;�;����T�[�[�	
���	��D��1�I����)�)�$�&�A�B��
�b��A�r�7�Q����K�!�Q��!�Q��"�a��2�r�(�K�	
���d�k�k�4�;�;����T�[�[�	
���d�n�n�	&�'�D��A�J����*�*�4�6�B�C��
�b��A�r�7�Q����K�!�Q��!�Q��"�a��2�r�(�K�	
���d�k�k�4�;�;����T�[�[�	
���d�n�n�	&�'�D��1�I����)�)�$�&�A�B��
�b��A�r�7�Q��F�Q����K�!�Q��"�a��2�r�(�K�	
���d�k�k�4�;�;����T�[�[�	
���d�k�k�	#�$�D��A�J����*�*�4�6�B�C��
�b��A�r�7�Q��F�Q����K�!�Q��"�a��2�r�(�K�	
���d�k�k�4�;�;����T�[�[�	
���d�k�k�	#�$�D��1�I����)�)�$�&�A�B��
�b��A�r�7�Q��F�Q��F�Q����K�"�a��2�r�(�K�	
���d�k�k�4�;�;����T�[�[�	
���d�k�k�	#�$�D��A�J����*�*�4�6�B�C��
�b��A�r�7�Q��F�Q��F�Q����K�"�a��2�r�(�K�	
���d�k�k�4�;�;����T�[�[�	
���d�k�k�	#�$�D��1�I����)�)�$�&�A�B�,����+�v�{�{�+�3��
���K�k��2�3��H�%��G�$r"c
��g}td�D]}d|zdz}ddgddgddgddgd|dzz
dgd|dzz
|g|dz|g|dzdgg}tj||d��}tj||dd�dd�ff�}|j	|���tj
t
|d�tj�}tj|d<tj|d	<tj|t
|��}tj|�}|jd
�t||�}|jtj|d���|jd
�|j!�}tj||tjk(<t||�}|jtj|d���y)
N�g�������?g�g�?r5rr)�axisrb)ririr�r�)�ranger�roll�concatenate�append�fullr(r
rAr@r��tile�set_size_inches�
add_artistrr��copy)r�r�r=r�rg�patternr>rCs        r �test_closed_path_clippingr�es����H��a��!���t��c�!���3�K�$����T�{�S�#�J�
��!��^�S�!�A���
�N�F�#;�
�a�Z�� �6�A�:�s�"3�	
���'�'�'�4�a�0���.�.�'�7�2�A�2�q�5�>�!:�;������ �!�&
�G�G�C����$�d�k�k�2�E��{�{�E�!�H����E�"�I��G�G�E�3�x�=�)�E��~�~�h�'�H����V�$���%� �D�����)�)�$�&�A�B����F�#��J�J�L�E�%)�[�[�E�%�4�>�>�
!�"���%� �D����w�(�(���@�Ar"�hatch_simplifyc	���tj�\}}|jtjddddd���|j	d�|jd�y)Nr3r5F�/)�fill�hatch)g�������?g�������?)rrr��	Rectangler)r)rrs  r �
test_hatchr��sF���l�l�n�G�C���L�L����v�q�!�%�s�C�D��K�K����K�K��r"�	fft_peaksc�X�tj�\}}tjd�}|j	ttjj
tjdtjzdz|z�tjt|��z���}|jj�|dj�}|dj�}|j|�}|j!d��}|j"j$dk(sJ�y)NirrrTrO�$)rrrrr�abs�fftrr�blackmanr(rTrUrVrWrXr<r=rJ)rrrrZrCr[rDs       r �test_fft_peaksr��s����l�l�n�G�C��
�	�	�%��A�	����R�V�V�Z�Z����q����w�s�{�1�}� 5�b�k�k�#�a�&�6I� I�J�K�	L�B��J�J�O�O��
�a�5�>�>��D��1��#�#�%�I��#�#�D�)�D����t��,�J����#�#�r�)�)�)r"c�f�d}tjtj|�d��}|j	t|�dzdf�}t
|�}|jtj�d��}t|�}t|�dk(sJ�|ddtjk(sJ�y)	Ns�
ZwAAAAku+v9UAQAA+Tj6/z8CAADpQ/r/KAMAANlO+v8QBAAAyVn6//UEAAC6ZPr/2gUAAKpv+v+8
BgAAm3r6/50HAACLhfr/ewgAAHyQ+v9ZCQAAbZv6/zQKAABepvr/DgsAAE+x+v/lCwAAQLz6/7wM
AAAxx/r/kA0AACPS+v9jDgAAFN36/zQPAAAF6Pr/AxAAAPfy+v/QEAAA6f36/5wRAADbCPv/ZhIA
AMwT+/8uEwAAvh77//UTAACwKfv/uRQAAKM0+/98FQAAlT/7/z0WAACHSvv//RYAAHlV+/+7FwAA
bGD7/3cYAABea/v/MRkAAFF2+//pGQAARIH7/6AaAAA3jPv/VRsAACmX+/8JHAAAHKL7/7ocAAAP
rfv/ah0AAAO4+/8YHgAA9sL7/8QeAADpzfv/bx8AANzY+/8YIAAA0OP7/78gAADD7vv/ZCEAALf5
+/8IIgAAqwT8/6kiAACeD/z/SiMAAJIa/P/oIwAAhiX8/4QkAAB6MPz/HyUAAG47/P+4JQAAYkb8
/1AmAABWUfz/5SYAAEpc/P95JwAAPmf8/wsoAAAzcvz/nCgAACd9/P8qKQAAHIj8/7cpAAAQk/z/
QyoAAAWe/P/MKgAA+aj8/1QrAADus/z/2isAAOO+/P9eLAAA2Mn8/+AsAADM1Pz/YS0AAMHf/P/g
LQAAtur8/10uAACr9fz/2C4AAKEA/f9SLwAAlgv9/8ovAACLFv3/QDAAAIAh/f+1MAAAdSz9/ycx
AABrN/3/mDEAAGBC/f8IMgAAVk39/3UyAABLWP3/4TIAAEFj/f9LMwAANm79/7MzAAAsef3/GjQA
ACKE/f9+NAAAF4/9/+E0AAANmv3/QzUAAAOl/f+iNQAA+a/9/wA2AADvuv3/XDYAAOXF/f+2NgAA
29D9/w83AADR2/3/ZjcAAMfm/f+7NwAAvfH9/w44AACz/P3/XzgAAKkH/v+vOAAAnxL+//04AACW
Hf7/SjkAAIwo/v+UOQAAgjP+/905AAB5Pv7/JDoAAG9J/v9pOgAAZVT+/606AABcX/7/7zoAAFJq
/v8vOwAASXX+/207AAA/gP7/qjsAADaL/v/lOwAALZb+/x48AAAjof7/VTwAABqs/v+LPAAAELf+
/788AAAHwv7/8TwAAP7M/v8hPQAA9df+/1A9AADr4v7/fT0AAOLt/v+oPQAA2fj+/9E9AADQA///
+T0AAMYO//8fPgAAvRn//0M+AAC0JP//ZT4AAKsv//+GPgAAojr//6U+AACZRf//wj4AAJBQ///d
PgAAh1v///c+AAB+Zv//Dz8AAHRx//8lPwAAa3z//zk/AABih///TD8AAFmS//9dPwAAUJ3//2w/
AABHqP//ej8AAD6z//+FPwAANb7//48/AAAsyf//lz8AACPU//+ePwAAGt///6M/AAAR6v//pj8A
AAj1//+nPwAA/////w==z<i4)�dtyper)rr�Y@r�r9r5r)r�
frombuffer�base64�decodebytes�reshaper(r
�
iter_segmentsr	�IdentityTransform�listr@)�data�vertsrC�segss    r �test_start_with_movetor��s����D�,
�M�M�&�,�,�T�2�%�@�E��M�M�3�u�:��?�A�.�/�E���;�D����j�:�:�<�#;��=�D���:�D��t�9��>��>���7�1�:����$�$�$r"c��dtjd<tjd�}tjjd�}tj|d<tj�\}}|j||�tjt�5|jtj��ddd�y#1swYyxYw)NFz
path.simplifyi��i�)r�rcParamsrrrQrkr�rr�pytest�raises�
OverflowError�savefig�io�BytesIO)�xx�yyrrs    r �(test_throw_rendering_complexity_exceededr��s���$)�C�L�L��!�	���9�	�B�	�����	�	"�B��v�v�B�t�H��l�l�n�G�C���G�G�B��O�	���}�	%�"����B�J�J�L�!�"�"�"�s�$C
�
C�clipper_edgec���d}tjd��}|jdddd��|jddd�	�}|j	|�|j
j
tjd
��|jj
tjd
��|j
jd�|jjd�|jd
d�y)N)
rr5rrrr;rrfrrir6)�figsizer)�left�bottom�wspace�hspace)rrrr)rriF)r��autoscale_onr5r�r�ri�	)r�figure�subplots_adjust�add_axesr�xaxis�set_major_locator�MultipleLocator�yaxis�set_ticks_positionr))�datrrs   r �test_clipperr��s���
(�C�

�*�*�V�
$�C����Q�q��1��=�	���&�V�%��	H�B��G�G�C�L��H�H���s�2�2�1�5�6��H�H���s�2�2�1�5�6��H�H����)��H�H����'��K�K��1�r"�para_equal_perpc��tjgd�dgdzz�}tjgd�dgdzz�}tj�\}}|j	|dz|dz�|j	|dz|dzd�y)N)rr5rr5rrbrr5r5�)r5r5rr5rrbrrr�ro)rr'rrrr*s    r �test_para_equal_perpr��ss��
���*�a�S�3�Y�6�7�A�
���*�a�S�3�Y�6�7�A��l�l�n�G�C���G�G�A��E�1�q�5���G�G�A��E�1�q�5�$�r"�clipping_with_nansc��tjddd�}tj|�}tj|ddd�<t	j
�\}}|j
||�|jdd�y)Nrg��Q�@i��dgпg�?)rr|rr�rrrrr*s    r �test_clipping_with_nansr��s\��
���A�x��&�A�
���q�	�A��v�v�A�e��e�H��l�l�n�G�C���G�G�A�q�M��K�K��t�r"c���tddggdz�}t|jgd����}|gk(sJ�tddgddggd	d
g�}t|jgd����}|D��cgc]\}}t|�|f��c}}ddgd	fddgd
fgk(sJ�tddggd	g�}t|jgd����}|D��cgc]\}}t|�|f��c}}ddgd	fgk(sJ�ycc}}wcc}}w)Ngꌠ9Y>)Fri)rrr�r�r9rK�(�K�Ar5r)r
r�r�)rxrDr+r,s    r �test_clipping_fullr��s���t�T�l�^�a�
� �A��a�o�o�+;�o�<�=�J�������r�2�h��R��
!�A�q�6�*�A��a�o�o�+;�o�<�=�J�&0�1�d�a��d�1�g�q�\�1��2�h��]�b�"�X�q�M�*�
+�,�
+�	
�r�2�h�Z�!���A��a�o�o�+;�o�<�=�J�&0�1�d�a��d�1�g�q�\�1��2�h��]�O�
��
��
2��

2s�,C.�C4)*r�r��numpyr�
numpy.testingrrr��matplotlib.testing.decoratorsrrr�matplotlib.pyplot�pyplotr�
matplotlibrr	�matplotlib.pathr
r!r-r1rFr\rd�mark�parametrizerrzr}r�r�r�r�r�r�r�r�r�r�r��r"r �<module>r�s���
�	��G�
�D�D��*� ��:�,�D�1� �2� ��:�,�D�1��2���%�&�D�9��:��C�.-�"G;�^������1�b�e�e�A�g�r�u�u�Q�w����a��"@�A�������A�r�7�+�)3�,�B�)3�X-�$�#�$�$�E�B��C����h%��h%�V��%B��%B�P�#�$�$�7��8���;�-�T�2�*�3�*�%�D	"��>�"��5��6���$�%�4�8� �9� ��'�(�)��*��
r"

Youez - 2016 - github.com/yon3zu
LinuXploit