
    i                         S r SSKrSSKJrJr  SSKJr  SSK	J
r
Jr  S/rS r\
\" 5       S\R                  \R                     4S	 j5       5       rg)
aZ  
This module provides :pypi:`dateutil <python-dateutil>` timezones.

You can use this strategy to make :func:`~hypothesis.strategies.datetimes`
and :func:`~hypothesis.strategies.times` produce timezone-aware values.

.. tip::
    Consider using the stdlib :mod:`zoneinfo` module, via
    :func:`st.timezones() <hypothesis.strategies.timezones>`.
    N)tzzoneinfo)
strategies)	cacheabledefines_strategy	timezonesc                     U c   eU R                  [        R                  " SSS5      5      nUc  SOUn[        U5      U* [	        U 5      4$ )zYSort by absolute UTC offset at reference date,
positive first, with ties broken by name.
i     i  )	utcoffsetdtdatetimeabsstr)zoneoffsets     X/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/hypothesis/extra/dateutil.py__zone_sort_keyr       sM     ^^BKKa34FNSFK&#d),,    returnc                     [        S [        R                  " 5       R                   5       [        S9n U R                  S[        R                  5        SU ;  d   e[        R                  " U  Vs/ s H	  oc  M  UPM     sn5      $ s  snf )a  Any timezone from :pypi:`dateutil <python-dateutil>`.

This strategy minimises to UTC, or the timezone with the smallest offset
from UTC as of 2000-01-01, and is designed for use with
:py:func:`~hypothesis.strategies.datetimes`.

Note that the timezones generated by the strategy may vary depending on the
configuration of your machine. See the dateutil documentation for more
information.
c              3   N   #    U  H  n[         R                  " U5      v   M     g 7f)N)r   gettz).0ts     r   	<genexpr>timezones.<locals>.<genexpr>8   s     ED!Ds   #%)keyr   N)
sortedr   get_zonefile_instancezonesr   insertr   UTCstsampled_from)all_timezoneszs     r   r   r   *   so     Eh<<>DDEM BFF# }$$$??}F}!A}FGGFs   /B9B)__doc__r   r   dateutilr   r   
hypothesisr   r#   %hypothesis.strategies._internal.utilsr   r   __all__r   SearchStrategytzinfor    r   r   <module>r/      s\   	  ! ' M-- H2$$RYY/ H  Hr   