Ë
    ®ÀZhÕ  ã                   ó(   — d Z ddlZd„ Zd„ Zd„ Zd„ Zy)a	  
Given a list of integers, made up of (hopefully) a small number of long runs
of consecutive integers, compute a representation of the form
((start1, end1), (start2, end2) ...). Then answer the question "was x present
in the original list?" in time O(log(# runs)).
é    Nc                 ó  — t        | «      }g }d}t        t        |«      «      D ]V  }|dz   t        |«      k  r||   ||dz      dz
  k(  rŒ&||dz   |dz    }|j                  t	        |d   |d   dz   «      «       |}ŒX t        |«      S )a  Represent a list of integers as a sequence of ranges:
    ((start_0, end_0), (start_1, end_1), ...), such that the original
    integers are exactly those x such that start_i <= x < end_i for some i.

    Ranges are encoded as single integers (start << 32 | end), not as tuples.
    éÿÿÿÿé   r   )ÚsortedÚrangeÚlenÚappendÚ_encode_rangeÚtuple)Úlist_Úsorted_listÚrangesÚ
last_writeÚiÚcurrent_ranges         ú]/mounts/lovelace/software/anaconda3/envs/py312/lib/python3.12/site-packages/idna/intranges.pyÚintranges_from_listr   
   s¥   € ô ˜“-€KØ€FØ€JÜ”3{Ó#Ó$ò ˆØˆQ‰3”[Ó!Ò!Ø˜1‰~ ¨Q¨q©SÑ!1°!Ñ!3Ò3ØØ# J¨q¡L°°1±Ð5ˆØ‰”m M°!Ñ$4°mÀBÑ6GÈ!Ñ6KÓLÔMØ‰
ðô ‹=Ðó    c                 ó   — | dz  |z  S )Né    © )ÚstartÚends     r   r
   r
      s   € ØR‰K˜3ÑÐr   c                 ó   — | dz	  | dz  fS )Nr   l   ÿÿ r   )Úrs    r   Ú_decode_ranger   "   s   € Ø‰Gq˜MÑ*Ð+Ð+r   c                 óÞ   — t        | d«      }t        j                  ||«      }|dkD  r!t        ||dz
     «      \  }}|| cxk  r|k  ry |t	        |«      k  rt        ||   «      \  }}|| k(  ryy)z=Determine if `int_` falls into one of the ranges in `ranges`.r   r   TF)r
   ÚbisectÚbisect_leftr   r   )Úint_r   Útuple_ÚposÚleftÚrightÚ_s          r   Úintranges_containr&   &   s   € ä˜4 Ó#€FÜ
×
Ñ
˜V VÓ
,€Cð ˆQ‚wÜ# F¨3¨q©5¡MÓ2‰ˆˆeØ4Ô˜%ÒØð  ð ŒS‹[ÒÜ  s¡Ó,‰ˆˆaØ4Š<ØØr   )Ú__doc__r   r   r
   r   r&   r   r   r   ú<module>r(      s#   ðñó òò*ò,ór   