
    ,h                         d Z  G d d      Zy)z&Serial Number Arthimetic from RFC 1982c                   `    e Zd ZddedefdZd Zd Zd Zd Zd Z	d	 Z
d
 Zd Zd Zd Zd Zy)Serialvaluebitsc                 ,    |d|z  z  | _         || _        y )N   r   r   )selfr   r   s      L/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/dns/serial.py__init__zSerial.__init__   s    QW_
	    c                 <    d| j                    d| j                   dS )Nzdns.serial.Serial(z, )r   )r	   s    r
   __repr__zSerial.__repr__   s    #DJJ<r$))A>>r   c                     t        |t              rt        || j                        }n/t        |t              r|j                  | j                  k7  rt        S | j
                  |j
                  k(  S N
isinstanceintr   r   NotImplementedr   r	   others     r
   __eq__zSerial.__eq__   N    eS!5$)),EE6*ejjDII.E!!zzU[[((r   c                     t        |t              rt        || j                        }n/t        |t              r|j                  | j                  k7  rt        S | j
                  |j
                  k7  S r   r   r   s     r
   __ne__zSerial.__ne__   r   r   c                    t        |t              rt        || j                        }n/t        |t              r|j                  | j                  k7  rt        S | j
                  |j
                  k  r-|j
                  | j
                  z
  d| j                  dz
  z  k  ry| j
                  |j
                  kD  r-| j
                  |j
                  z
  d| j                  dz
  z  kD  ryyNr      TFr   r   s     r
   __lt__zSerial.__lt__       eS!5$)),EE6*ejjDII.E!!::#djj(@1UVCW(WZZ%++%$**u{{*BQIIMF
 +
 r   c                     | |k(  xs | |k  S r    r   s     r
   __le__zSerial.__le__*       u},u,r   c                    t        |t              rt        || j                        }n/t        |t              r|j                  | j                  k7  rt        S | j
                  |j
                  k  r-|j
                  | j
                  z
  d| j                  dz
  z  kD  ry| j
                  |j
                  kD  r-| j
                  |j
                  z
  d| j                  dz
  z  k  ryyr   r   r   s     r
   __gt__zSerial.__gt__-   r    r   c                     | |k(  xs | |kD  S r   r"   r   s     r
   __ge__zSerial.__ge__;   r$   r   c                 .   | j                   }t        |t              r|j                   }nt        |t              r|}nt        t        |      d| j                  dz
  z  dz
  kD  rt        ||z  }|d| j                  z  z  }t        || j                        S Nr   r   r   r   r   r   
ValueErrorabsr   r	   r   vdeltas       r
   __add__zSerial.__add__>       JJeV$KKEs#Eu:tyy1}-12	U
499a##r   c                    | j                   }t        |t              r|j                   }nt        |t              r|}nt        t        |      d| j                  dz
  z  dz
  kD  rt        ||z  }|d| j                  z  z  }|| _         | S r*   r+   r.   s       r
   __iadd__zSerial.__iadd__L   ~    JJeV$KKEs#Eu:tyy1}-12	U
499
r   c                 .   | j                   }t        |t              r|j                   }nt        |t              r|}nt        t        |      d| j                  dz
  z  dz
  kD  rt        ||z  }|d| j                  z  z  }t        || j                        S r*   r+   r.   s       r
   __sub__zSerial.__sub__[   r2   r   c                    | j                   }t        |t              r|j                   }nt        |t              r|}nt        t        |      d| j                  dz
  z  dz
  kD  rt        ||z  }|d| j                  z  z  }|| _         | S r*   r+   r.   s       r
   __isub__zSerial.__isub__i   r5   r   N)    )__name__
__module____qualname__r   r   r   r   r   r   r#   r&   r(   r1   r4   r7   r9   r"   r   r
   r   r      sL    c  ?))--$$r   r   N)__doc__r   r"   r   r
   <module>r?      s    -p pr   