o
    f                     @   s   dddZ dddZdS )digitsunsigned longc                    s2   d| d  d  fddt| d ddD  S )z
    Generate an unrolled shift-then-or loop over the first 'count' digits.
    Assumes that they fit into 'join_type'.

    (((d[2] << n) | d[1]) << n) | d[0]
    (    | c                 3   s(    | ]}d  ||rdndf V  qdS )z(%s)%s[%d])%s)z << PyLong_SHIFT N ).0_i
digits_ptr	join_typer   S/var/www/html/mig_web/myenv/lib/python3.10/site-packages/Cython/Utility/__init__.py	<genexpr>	   s
    
zpylong_join.<locals>.<genexpr>   joinrangecountr   r   r   r
   r   pylong_join   s   
r   c                    s8   fdddd  fddt| d ddD  S )	z
    Generate an or-ed series of shifts for the first 'count' digits.
    Assumes that they fit into 'join_type'.

    (d[2] << 2*n) | (d[1] << 1*n) | d[0]
    c                    s   | r	d|  | f S dS )Nz@ << (%d * PyLong_SHIFT < 8 * sizeof(%s) ? %d * PyLong_SHIFT : 0)r   r   )n)r   r   r   shift   s   z_pylong_join.<locals>.shiftz(%s)r   c                 3   s$    | ]}d  ||f V  qdS )z(((%s)%s[%d])%s)Nr   )r   ir   r   r   r   r   r      s
    
z_pylong_join.<locals>.<genexpr>r   r   r   r   r   r   r   _pylong_join   s   
r   N)r   r   )r   r   r   r   r   r   <module>   s   
