
    hg                     (    d dl Z  G d d          ZdS )    Nc                   $    e Zd ZdZd Zd Zd ZdS )Maskerz
    Data sent from the server must be masked to prevent malicious clients
    from sending data over the wire in predictable patterns.

    Servers do not have to mask data they send to the client.
    https://tools.ietf.org/html/rfc6455#section-5.3
    c                 "    || _         d| _        d S )Nr   )keyoffset)selfr   s     p/var/www/fb-scrape/myenv/lib/python3.11/site-packages/seleniumwire/thirdparty/mitmproxy/net/websockets/masker.py__init__zMasker.__init__   s        c                 @   t          |          }|dz  }t                              |t          j                  }||z   dz   dz  }t                              | j        |z  |||z            t          j                  }||z                      |t          j                  S )N      )lenint
from_bytessys	byteorderr   to_bytes)r   r   datadatalen
offset_modnum_keysmasks          r	   r   zMasker.mask   s    d))aZ
~~dCM22j(1,2~~tx(2Jw4>@? 5? @ADP Pt%%gs}===r   c                 v    |                      | j        |          }| xj        t          |          z  c_        |S )N)r   r   r   )r   r   rets      r	   __call__zMasker.__call__   s2    iiT**s3xx
r   N)__name__
__module____qualname____doc__r
   r   r    r   r	   r   r      sK           > > >    r   r   )r   r   r!   r   r	   <module>r"      s@    



         r   