o
    CD©iŽ  ã                   @   s   d Z dd„ ZG dd„ dƒZdS )l       @ c                 C   s   | d@ S )Nl   ÿÿ © )Únr   r   úF/var/www/Datamplify/venv/lib/python3.10/site-packages/smb/utils/U32.pyÚnorm   s   r   c                   @   sØ   e Zd ZdZd3dd„Zd3dd„Zdd„ Zdd	„ Zd
d„ ZeZ	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zd d!„ Zd"d#„ Zd$d%„ Zd&d'„ Zd(d)„ Zd*d+„ Zd,d-„ Zd.d/„ Zd0d1„ Zd2S )4ÚU32é    c                 C   ó   t ttt|ƒƒƒ | _d S ©N©ÚCr   ÚabsÚintÚv©ÚselfÚvaluer   r   r   Ú__init__"   ó   zU32.__init__c                 C   r   r   r	   r   r   r   r   Úset&   r   zU32.setc                 C   ó   t t| jƒƒS r   )Úhexr   r   ©r   r   r   r   Ú__repr__*   s   zU32.__repr__c                 C   r   r   ©r   r   r   r   r   r   r   Ú__long__.   ó    zU32.__long__c                 C   r   r   r   r   r   r   r   Ú__int__1   r   zU32.__int__c                 C   r   r   )Úchrr   r   r   r   r   r   Ú__chr__6   r   zU32.__chr__c                 C   s    t ƒ }tt| j|j ƒ |_|S r   ©r   r
   r   r   ©r   ÚbÚrr   r   r   Ú__add__9   ó   zU32.__add__c                 C   sJ   t ƒ }| j|jk rttd|j| j  ƒ |_|S tt| j|j ƒ |_|S )Nl        )r   r   r
   r   r   r   r   r   Ú__sub__?   s   ÿzU32.__sub__c                 C   s    t ƒ }tt| j|j ƒ |_|S r   r   r   r   r   r   Ú__mul__G   r#   zU32.__mul__c                 C   s$   t ƒ }tt| jƒt|jƒ  |_|S r   r   r   r   r   r   Ú__div__M   ó   zU32.__div__c                 C   s$   t ƒ }tt| jƒt|jƒ  |_|S r   r   r   r   r   r   Ú__mod__S   r'   zU32.__mod__c                 C   ó
   t | jƒS r   ©r   r   r   r   r   r   Ú__neg__Y   ó   
 zU32.__neg__c                 C   r)   r   r*   r   r   r   r   Ú__pos__\   r,   zU32.__pos__c                 C   r)   r   r*   r   r   r   r   Ú__abs___   r,   zU32.__abs__c                 C   s   t ƒ }tt| j ƒ |_|S r   r   )r   r!   r   r   r   Ú
__invert__b   s   zU32.__invert__c                 C   s   t ƒ }tt| j|> ƒ |_|S r   r   r   r   r   r   Ú
__lshift__h   ó   zU32.__lshift__c                 C   s   t ƒ }tt| jƒ|?  |_|S r   r   r   r   r   r   Ú
__rshift__n   r1   zU32.__rshift__c                 C   s    t ƒ }tt| j|j@ ƒ |_|S r   r   r   r   r   r   Ú__and__t   r#   zU32.__and__c                 C   s    t ƒ }tt| j|jB ƒ |_|S r   r   r   r   r   r   Ú__or__z   r#   z
U32.__or__c                 C   s    t ƒ }tt| j|jA ƒ |_|S r   r   r   r   r   r   Ú__xor__€   r#   zU32.__xor__c                 C   s   t t| jƒ ƒS r   )r   r   r   r   r   r   r   Ú__not__†   s   zU32.__not__c                 C   r)   r   ©r   r   r   r   r   r   ÚtruthŠ   ó   
z	U32.truthc                 C   s4   t | jƒt |jƒkrdS t | jƒt |jƒk rdS dS )Né   éÿÿÿÿr   r7   )r   r    r   r   r   Ú__cmp__Ž   s   zU32.__cmp__c                 C   r)   r   r7   r   r   r   r   Ú__bool__”   r9   zU32.__bool__N)r   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   Ú	__index__r   r"   r$   r%   r&   r(   r+   r-   r.   r/   r0   r2   r3   r4   r5   r6   r8   r<   r=   r   r   r   r   r      s6    

r   N)r
   r   r   r   r   r   r   Ú<module>   s   