+
    *QjɊ                        R t ^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RI
HtHtHt ^ RIHtHt ^ RIHt R	tR
t]t]t. ERwOt]P0                  ^ ,          ^8  d   ]tR tMR tR tR t/ tR tR t Rs!R t"]PF                  ! ^ 4      t$]PF                  ! ^R7      t% ! R R]4      t&]&! 4       ;t&t'R t(R](n)        R t*R]*n)         ! R R]4      t+]+! 4       t, ! R R]4      t-]-! 4       t. ! R R]P^                  4      t0/ 3R lt1R]1n)        R t2]3R 8X  d   ]2! 4        . R!NR"NR#NR$NR%NR&NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRSNRTNRUNRVNRWNRXNRYNRZNR[NR\NR]NR^NR_NR`NRaNRbNRcNRdNReNRfNRgNRhNRiNRjNRkNRlNRmNRnNRoNRpNRqNRrNRsNRtNRuNRvNRwNRxNRyNRzNR{NR|NR}NR~NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNER NERNERNERNERNERNERNERNERNER	NER
NERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNER NER!NER"NER#NER$NER%NER&NER'NER(NER)NER*NER+NER,NER-NER.NER/NER0NER1NER2NER3NER4NER5NER6NER7NER8NER9NER:NER;NER<NER=NER>NER?NER@NERANERBNERCNERDNERENERFNERGNERHNERINERJNERKNERLNERMNERNNERONERPNERQNERRNERSNERTNERUNERVNERWNERXNERYNERZNER[NER\NER]NER^NER_NER`NERaNERbNERcNERdNEReNERfNERgNERhNERiNERjNERkNERlNERmNERnNERoNERpNERqNERrNERsNERtNERuNERvNERwNERxNERyNERzNER{NER|NER}NER~NERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNER NERNERNERNERNERNERNERNERNER	NER
NERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNER NER!NER"NER#NER$NER%NER&NER'NER(NER)NER*NER+NER,NER-NER.NER/NER0NER1NER2NER3NER4NER5NER6NER7NER8NER9NER:NER;NER<NER=NER>NER?NER@NERANERBNERCNERDNERENERFNERGNERHNERINERJNERKNERLNERMNERNNERONERPNERQNERRNERSNERTNERUNERVNERWNERXNERYNERZNER[NER\NER]NER^NER_NER`NERaNERbNERcNERdNEReNERfNERgNERhNERiNERjNERkNERlNERmNERnNERoNERpNRNERqNERrNERsNERtNt4]! ERu ]4 4       4      t5]! ]54      t6. R!NR"NR#NR$NR%NR'NR(NR)NR*NR+NR,NR-NR.NR/NR0NR1NR2NR3NR4NR5NR6NR7NR8NR9NR:NR;NR<NR=NR>NR?NR@NRANRBNRCNRDNRENRFNRGNRHNRINRJNRKNRLNRMNRNNRONRPNRQNRRNRTNRUNRVNRWNRXNRYNRZNR[NR\NR]NR_NR`NRaNRbNRcNRdNReNRfNRgNRhNRiNRjNRkNRmNRnNRoNRpNRqNRrNRsNRtNRuNRwNRxNRyNRzNR|NR}NR~NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNER NERNERNERNERNERNERNERNER	NER
NERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNER#NER%NER&NER'NER(NER)NER*NER+NER-NER.NER/NER0NER1NER3NER4NER5NER6NER7NER8NER:NER<NER=NER>NER?NER@NERANERCNERDNERENERFNERGNERHNERINERJNERKNERLNERMNERNNERONERPNERQNERRNERTNERVNERWNERXNERYNERZNER[NER\NER]NER^NER_NERbNERcNERdNERfNERhNERiNERjNERkNERlNERmNERnNERoNERpNERqNERrNERsNERuNERwNERxNERyNERzNER{NER}NER~NERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNERNER	NERNERNERNERNERNERNERNERNERNERNERNERNER NER2NER3NER4NER5NER6NER7NER8NER:NER;NER<NER=NER>NER?NER@NERANERCNERDNERENERFNERGNERHNERINERJNERKNERLNERMNERNNERONERPNERQNERSNERTNERUNERWNERXNERYNER[NER\NEReNERgNERhNERjNERkNERnNERoNRNt7]! ERv ]7 4       4      t7]! ]74      t8R# (x  z
datetime.tzinfo timezone definitions generated from the
Olson timezone database:

    ftp://elsie.nci.nih.gov/pub/tz*.tar.gz

See the datetime section of the Python Library Reference for information
on how to use these modules.
N)AmbiguousTimeError)InvalidTimeError)NonExistentTimeError)UnknownTimeZoneError)LazyDictLazyListLazySet)	unpickler
BaseTzInfo)build_tzinfo2026bz2026.2c                v    \        V 4      \        8X  d   V P                  R4      p V # V P                  R4       V # )z
>>> ascii('Hello')
'Hello'
>>> ascii('\N{TRADE MARK SIGN}') #doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
    ...
UnicodeEncodeError: ...
ASCII)typebytesdecodeencodess   &f/Users/ahmed/devFolder/Ultron/claude-voice/gateway/.venv/lib/python3.14/site-packages/pytz/__init__.pyasciir   /   s8     7e!A  HHW    c                $    V P                  R4      # )z
>>> ascii('Hello')
'Hello'
>>> ascii(u'Hello')
'Hello'
>>> ascii(u'\N{TRADE MARK SIGN}') #doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
    ...
UnicodeEncodeError: ...
r   )r   r   s   &r   r   r   @   s     xx  r   c                R   V P                  R4      P                  R4      pV FI  pV\        P                  P                  8X  g   \        P
                  V9   g   K9  \        RV,          4      h	  \        P                  P                  RR4      pVe$   \        P                  P                  ! V.VO5!  pM\        P                  P                  ! \        P                  P                  \        4      R.VO5!  p\        P                  P                  V4      '       gX    ^ RIHp Ve.   V! \         4      P"                  ! R.VO5!  P%                  R4      #  ^ RIHp Ve   V! \         R	V ,           4      # \%        VR4      #   \         d    Rp Lki ; i  \         d    Rp LFi ; i)
a  Open a resource from the zoneinfo subdir for reading.

Uses the pkg_resources module if available and no standard file
found at the calculated location.

It is possible to specify different location for zoneinfo
subdir by using the PYTZ_TZDATADIR environment variable.
/zBad path segment: %rPYTZ_TZDATADIRNzoneinfo)filesrb)resource_streamz	zoneinfo/)lstripsplitospathpardirsep
ValueErrorenvirongetjoindirname__file__existsimportlib.resourcesr   ImportError__name__joinpathopenpkg_resourcesr   )name
name_partspartzoneinfo_dirfilenamer   r   s   &      r   open_resourcer8   N   sT    S!'',J277>>!RVVt^3d:;;  ::>>"2D9L77<<:z:77<< 9 *9-79ww~~h''5  X//
HZHMMdSS
'9 *&xt1CDD$#    '"&'s$   !F F FFF&%F&c                     \         P                  P                  RR4      '       d   R# \        V 4      P	                  4        R#   \
         d     R# i ; i)z(Return true if the given resource existsPYTZ_SKIPEXISTSCHECK TF)r"   r'   r(   r8   closeIOError)r3   s   &r   resource_existsr>   y   sH    ::>>0"55 d!!# s   %A A AAc                   V f   \        R4      hV P                  4       R8X  d   \        #  \        V 4      p \        \        T 4      4      p T \        9  dR   T \        9   d<   \        T 4      p \        Y4      \        T &   TP                  4        \        T ,          # \        T 4      h\        T ,          #   \         d    \        T 4      hi ; i  TP                  4        i ; i)a  Return a datetime.tzinfo implementation for the given timezone

>>> from datetime import datetime, timedelta
>>> utc = timezone('UTC')
>>> eastern = timezone('US/Eastern')
>>> eastern.zone
'US/Eastern'
>>> timezone(unicode('US/Eastern')) is eastern
True
>>> utc_dt = datetime(2002, 10, 27, 6, 0, 0, tzinfo=utc)
>>> loc_dt = utc_dt.astimezone(eastern)
>>> fmt = '%Y-%m-%d %H:%M:%S %Z (%z)'
>>> loc_dt.strftime(fmt)
'2002-10-27 01:00:00 EST (-0500)'
>>> (loc_dt - timedelta(minutes=10)).strftime(fmt)
'2002-10-27 00:50:00 EST (-0500)'
>>> eastern.normalize(loc_dt - timedelta(minutes=10)).strftime(fmt)
'2002-10-27 01:50:00 EDT (-0400)'
>>> (loc_dt + timedelta(minutes=10)).strftime(fmt)
'2002-10-27 01:10:00 EST (-0500)'

Raises UnknownTimeZoneError if passed an unknown zone.

>>> try:
...     timezone('Asia/Shangri-La')
... except UnknownTimeZoneError:
...     print('Unknown')
Unknown

>>> try:
...     timezone(unicode('\N{TRADE MARK SIGN}'))
... except UnknownTimeZoneError:
...     print('Unknown')
Unknown

NUTC)r   upperutcr   UnicodeEncodeError_case_insensitive_zone_lookup_unmunge_zone_tzinfo_cacheall_timezones_setr8   r   r<   )zonefps   & r   timezonerJ      s    J |"4((zz|u
)T{
 )t)<=D= $$t$B&24&<d#
  't,,  )"4(() 
s   B4 -C 4CC c                F    V P                  RR4      P                  RR4      # )z?Undo the time zone name munging done by older versions of pytz._plus_+_minus_-)replacerH   s   &r   rE   rE      s     <<#&..y#>>r   c                    \         f   \        R \         4       4      s \         P                  V P	                  4       4      ;'       g    T # )z@case-insensitively matching timezone, else return zone unchangedc              3   D   "   T F  qP                  4       V3x  K  	  R # 5iN)lower.0tzs   & r   	<genexpr>0_case_insensitive_zone_lookup.<locals>.<genexpr>   s     /dKcRR0@Kcs    ) _all_timezones_lower_to_standarddict_all_timezones_uncheckedr(   rU   rQ   s   &r   rD   rD      s;     (/+//dKc/d+d(+//

=EEEr   )hoursc                   ~   a a ] tR t^t oRtR t]t]t]t	V 3R lt
R tR tR tR tRR ltRR ltR	 tR
 tRtVtV ;t# )r@   zUTC

Optimized UTC implementation. It unpickles using the single module global
instance defined beneath this class declaration.
c                |   < VP                   f   V P                  V4      # \        \        P                  V `  V4      # rT   )tzinfolocalizesuperrB   	__class__fromutc)selfdtrd   s   &&r   re   UTC.fromutc   s2    99==$$S]]D1"55r   c                    \         # rT   ZEROrf   rg   s   &&r   	utcoffsetUTC.utcoffset       r   c                    R # r@    rl   s   &&r   tzname
UTC.tzname       r   c                    \         # rT   rj   rl   s   &&r   dstUTC.dst   ro   r   c                    \         R3# )Nrr   )_UTCrf   s   &r   
__reduce__UTC.__reduce__   s    Rxr   c                X    VP                   e   \        R4      hVP                  V R7      # z Convert naive time to local timez*Not naive datetime (tzinfo is already set))ra   ra   r&   rP   rf   rg   is_dsts   &&&r   rb   UTC.localize   )    99 IJJzzz&&r   c                z    VP                   V J d   V# VP                   f   \        R4      hVP                  V 4      # z6Correct the timezone information on the given datetimezNaive time - no tzinfo setra   r&   
astimezoner   s   &&&r   	normalizeUTC.normalize  8    99I999::}}T""r   c                    R # )z<UTC>rr   r{   s   &r   __repr__UTC.__repr__
  s    r   c                    R # rq   rr   r{   s   &r   __str__UTC.__str__  ru   r   rr   F)r/   
__module____qualname____firstlineno____doc__rH   rk   
_utcoffset_dst_tznamere   rm   rs   rw   r|   rb   r   r   r   __static_attributes____classdictcell____classcell__)rd   __classdict__s   @@r   r@   r@      sR     
 DJDG6
'# r   r@   c                     \         # )a  Factory function for utc unpickling.

Makes sure that unpickling a utc instance always returns the same
module global.

These examples belong in the UTC class above, but it is obscured; or in
the README.rst, but we are not depending on Python 2.4 so integrating
the README.rst examples with the unit tests is not trivial.

>>> import datetime, pickle
>>> dt = datetime.datetime(2005, 3, 1, 14, 13, 21, tzinfo=utc)
>>> naive = dt.replace(tzinfo=None)
>>> p = pickle.dumps(dt, 1)
>>> naive_p = pickle.dumps(naive, 1)
>>> len(p) - len(naive_p)
17
>>> new = pickle.loads(p)
>>> new == dt
True
>>> new is dt
False
>>> new.tzinfo is dt.tzinfo
True
>>> utc is UTC is timezone('UTC')
True
>>> utc is timezone('GMT')
False
)rB   rr   r   r   rz   rz     s	    : Jr   Tc                     \        V !  # )zFactory function for unpickling pytz tzinfo instances.

Just a wrapper around tzinfo.unpickler to save a few bytes in each pickle
by shortening the path.
)r	   )argss   *r   _pr   7  s     dr   c                   0   a  ] tR tRt o RtR tR tRtV tR# )_CountryTimezoneDictiC  aC  Map ISO 3166 country code to a list of timezone names commonly used
in that country.

iso3166_code is the two letter code used to identify the country.

>>> def print_list(list_of_strings):
...     'We use a helper so doctests work under Python 2.3 -> 3.x'
...     for s in list_of_strings:
...         print(s)

>>> print_list(country_timezones['nz'])
Pacific/Auckland
Pacific/Chatham
>>> print_list(country_timezones['ch'])
Europe/Zurich
>>> print_list(country_timezones['CH'])
Europe/Zurich
>>> print_list(country_timezones[unicode('ch')])
Europe/Zurich
>>> print_list(country_timezones['XXX'])
Traceback (most recent call last):
...
KeyError: 'XXX'

Previously, this information was exposed as a function rather than a
dictionary. This is still supported::

>>> print_list(country_timezones('nz'))
Pacific/Auckland
Pacific/Chatham
c                    W,          # )zBackwards compatibility.rr   )rf   iso3166_codes   &&r   __call___CountryTimezoneDict.__call__c  s    !!r   c                   / p\        R 4      p V Fn  pVP                  R4      pVP                  R4      '       d   K-  VP                  R^4      R,          w  rEpV\        9  d   KV   W,          P                  V4       Kp  	  Wn        VP                  4        R#   \         d
    T.Y&    K  i ; i  TP                  4        i ; i)zzone.tabUTF-8#N:N   N)	r8   r   
startswithr!   rG   appendKeyErrordatar<   )rf   r   zone_tablinecodecoordinatesrH   s   &      r   _fill_CountryTimezoneDict._fillg  s     ,	 {{7+??3''*.**T1*=b*A'400(J%%d+ ! INN	   ("&DJ( NNs0   AB2 (B?
B2 B/+B2 .B//B2 2Cr   N)	r/   r   r   r   r   r   r   r   r   r   s   @r   r   r   C  s     >" r   r   c                   *   a  ] tR tRt o RtR tRtV tR# )_CountryNameDicti~  z[Dictionary proving ISO3166 code -> English name.

>>> print(country_names['au'])
Australia
c                F   / p\        R 4      p VP                  4        FS  pVP                  R4      pVP                  R4      '       d   K-  VP	                  R^4      w  rEVP                  4       W&   KU  	  Wn        VP                  4        R#   TP                  4        i ; i)ziso3166.tabr   r   N)r8   	readlinesr   r   r!   stripr   r<   )rf   r   r   r   r   r3   s   &     r   r   _CountryNameDict._fill  s     /		 **,{{7+??3''!ZZa0
!ZZ\
 - INNHNNs   A-B B r   N)r/   r   r   r   r   r   r   r   r   s   @r   r   r   ~  s     
 r   r   c                   \   a  ] tR tRt o RtR tR tR tR tR t	R t
RR	 ltRR
 ltRtV tR# )_FixedOffseti  Nc                    \        V4      R 8  d   \        RV4      hWn        \        P                  ! VR7      V n        R# )i  zabsolute offset is too large)minutesN)absr&   _minutesdatetime	timedelta_offset)rf   r   s   &&r   __init___FixedOffset.__init__  s3    w<4;WEE))':r   c                    V P                   # rT   )r   rl   s   &&r   rm   _FixedOffset.utcoffset  s    ||r   c                (    \         V P                  33# rT   )FixedOffsetr   r{   s   &r   r|   _FixedOffset.__reduce__  s    T]]---r   c                    \         # rT   rj   rl   s   &&r   rw   _FixedOffset.dst  ro   r   c                    R # rT   rr   rl   s   &&r   rs   _FixedOffset.tzname  s    r   c                (    R V P                   ,          # )zpytz.FixedOffset(%d))r   r{   s   &r   r   _FixedOffset.__repr__  s    %55r   c                X    VP                   e   \        R4      hVP                  V R7      # r   r   r   s   &&&r   rb   _FixedOffset.localize  r   r   c                z    VP                   V J d   V# VP                   f   \        R4      hVP                  V 4      # r   r   r   s   &&&r   r   _FixedOffset.normalize  r   r   )r   r   r   )r/   r   r   r   rH   r   rm   r|   rw   rs   r   rb   r   r   r   r   s   @r   r   r     s7     D;.6'# #r   r   c                    V ^ 8X  d   \         # VP                  V 4      pVf   VP                  V \        V 4      4      pV# )a  return a fixed-offset timezone based off a number of minutes.

    >>> one = FixedOffset(-330)
    >>> one
    pytz.FixedOffset(-330)
    >>> str(one.utcoffset(datetime.datetime.now()))
    '-1 day, 18:30:00'
    >>> str(one.dst(datetime.datetime.now()))
    '0:00:00'

    >>> two = FixedOffset(1380)
    >>> two
    pytz.FixedOffset(1380)
    >>> str(two.utcoffset(datetime.datetime.now()))
    '23:00:00'
    >>> str(two.dst(datetime.datetime.now()))
    '0:00:00'

The datetime.timedelta must be between the range of -1 and 1 day,
non-inclusive.

    >>> FixedOffset(1440)
    Traceback (most recent call last):
    ...
    ValueError: ('absolute offset is too large', 1440)

    >>> FixedOffset(-1440)
    Traceback (most recent call last):
    ...
    ValueError: ('absolute offset is too large', -1440)

An offset of 0 is special-cased to return UTC.

    >>> FixedOffset(0) is UTC
    True

There should always be only one instance of a FixedOffset per timedelta.
This should be true for multiple creation calls.

    >>> FixedOffset(-330) is one
    True
    >>> FixedOffset(1380) is two
    True

It should also be true for pickling.

    >>> import pickle
    >>> pickle.loads(pickle.dumps(one)) is one
    True
    >>> pickle.loads(pickle.dumps(two)) is two
    True
)r@   r(   
setdefaultr   )offset_tzinfosinfos   && r   r   r     sB    j {
<<D|
 ""6<+?@Kr   c                      ^ RI p \        P                  P                  ^ \        P
                  4       ^ RIpV P                  V4      # )    N)doctestsysr#   insertr"   r$   pytztestmod)r   r   s     r   _testr     s-    HHOOAryy!??4  r   __main__zAfrica/AbidjanzAfrica/AccrazAfrica/Addis_AbabazAfrica/AlgierszAfrica/AsmarazAfrica/AsmerazAfrica/BamakozAfrica/BanguizAfrica/BanjulzAfrica/BissauzAfrica/BlantyrezAfrica/BrazzavillezAfrica/BujumburazAfrica/CairozAfrica/CasablancazAfrica/CeutazAfrica/ConakryzAfrica/DakarzAfrica/Dar_es_SalaamzAfrica/DjiboutizAfrica/DoualazAfrica/El_AaiunzAfrica/FreetownzAfrica/GaboronezAfrica/HararezAfrica/JohannesburgzAfrica/JubazAfrica/KampalazAfrica/KhartoumzAfrica/KigalizAfrica/KinshasazAfrica/LagoszAfrica/LibrevillezAfrica/LomezAfrica/LuandazAfrica/LubumbashizAfrica/LusakazAfrica/MalabozAfrica/MaputozAfrica/MaseruzAfrica/MbabanezAfrica/MogadishuzAfrica/MonroviazAfrica/NairobizAfrica/NdjamenazAfrica/NiameyzAfrica/NouakchottzAfrica/OuagadougouzAfrica/Porto-NovozAfrica/Sao_TomezAfrica/TimbuktuzAfrica/TripolizAfrica/TuniszAfrica/WindhoekzAmerica/AdakzAmerica/AnchoragezAmerica/AnguillazAmerica/AntiguazAmerica/AraguainazAmerica/Argentina/Buenos_AireszAmerica/Argentina/Catamarcaz America/Argentina/ComodRivadaviazAmerica/Argentina/CordobazAmerica/Argentina/JujuyzAmerica/Argentina/La_RiojazAmerica/Argentina/MendozazAmerica/Argentina/Rio_GallegoszAmerica/Argentina/SaltazAmerica/Argentina/San_JuanzAmerica/Argentina/San_LuiszAmerica/Argentina/TucumanzAmerica/Argentina/UshuaiazAmerica/ArubazAmerica/AsuncionzAmerica/AtikokanzAmerica/AtkazAmerica/BahiazAmerica/Bahia_BanderaszAmerica/BarbadoszAmerica/BelemzAmerica/BelizezAmerica/Blanc-SablonzAmerica/Boa_VistazAmerica/BogotazAmerica/BoisezAmerica/Buenos_AireszAmerica/Cambridge_BayzAmerica/Campo_GrandezAmerica/CancunzAmerica/CaracaszAmerica/CatamarcazAmerica/CayennezAmerica/CaymanzAmerica/ChicagozAmerica/ChihuahuazAmerica/Ciudad_JuarezzAmerica/Coral_HarbourzAmerica/CordobazAmerica/Costa_RicazAmerica/CoyhaiquezAmerica/CrestonzAmerica/CuiabazAmerica/CuracaozAmerica/DanmarkshavnzAmerica/DawsonzAmerica/Dawson_CreekzAmerica/DenverzAmerica/DetroitzAmerica/DominicazAmerica/EdmontonzAmerica/EirunepezAmerica/El_SalvadorzAmerica/EnsenadazAmerica/Fort_NelsonzAmerica/Fort_WaynezAmerica/FortalezazAmerica/Glace_BayzAmerica/GodthabzAmerica/Goose_BayzAmerica/Grand_TurkzAmerica/GrenadazAmerica/GuadeloupezAmerica/GuatemalazAmerica/GuayaquilzAmerica/GuyanazAmerica/HalifaxzAmerica/HavanazAmerica/HermosillozAmerica/Indiana/IndianapoliszAmerica/Indiana/KnoxzAmerica/Indiana/MarengozAmerica/Indiana/PetersburgzAmerica/Indiana/Tell_CityzAmerica/Indiana/VevayzAmerica/Indiana/VincenneszAmerica/Indiana/WinamaczAmerica/IndianapoliszAmerica/InuvikzAmerica/IqaluitzAmerica/JamaicazAmerica/JujuyzAmerica/JuneauzAmerica/Kentucky/LouisvillezAmerica/Kentucky/MonticellozAmerica/Knox_INzAmerica/KralendijkzAmerica/La_PazzAmerica/LimazAmerica/Los_AngeleszAmerica/LouisvillezAmerica/Lower_PrinceszAmerica/MaceiozAmerica/ManaguazAmerica/ManauszAmerica/MarigotzAmerica/MartiniquezAmerica/MatamoroszAmerica/MazatlanzAmerica/MendozazAmerica/MenomineezAmerica/MeridazAmerica/MetlakatlazAmerica/Mexico_CityzAmerica/MiquelonzAmerica/MonctonzAmerica/MonterreyzAmerica/MontevideozAmerica/MontrealzAmerica/MontserratzAmerica/NassauzAmerica/New_YorkzAmerica/NipigonzAmerica/NomezAmerica/NoronhazAmerica/North_Dakota/BeulahzAmerica/North_Dakota/CenterzAmerica/North_Dakota/New_SalemzAmerica/NuukzAmerica/OjinagazAmerica/PanamazAmerica/PangnirtungzAmerica/ParamaribozAmerica/PhoenixzAmerica/Port-au-PrincezAmerica/Port_of_SpainzAmerica/Porto_AcrezAmerica/Porto_VelhozAmerica/Puerto_RicozAmerica/Punta_ArenaszAmerica/Rainy_RiverzAmerica/Rankin_InletzAmerica/RecifezAmerica/ReginazAmerica/ResolutezAmerica/Rio_BrancozAmerica/RosariozAmerica/Santa_IsabelzAmerica/SantaremzAmerica/SantiagozAmerica/Santo_DomingozAmerica/Sao_PaulozAmerica/ScoresbysundzAmerica/ShiprockzAmerica/SitkazAmerica/St_BarthelemyzAmerica/St_JohnszAmerica/St_KittszAmerica/St_LuciazAmerica/St_ThomaszAmerica/St_VincentzAmerica/Swift_CurrentzAmerica/TegucigalpazAmerica/ThulezAmerica/Thunder_BayzAmerica/TijuanazAmerica/TorontozAmerica/TortolazAmerica/VancouverzAmerica/VirginzAmerica/WhitehorsezAmerica/WinnipegzAmerica/YakutatzAmerica/YellowknifezAntarctica/CaseyzAntarctica/DaviszAntarctica/DumontDUrvillezAntarctica/MacquariezAntarctica/MawsonzAntarctica/McMurdozAntarctica/PalmerzAntarctica/RotherazAntarctica/South_PolezAntarctica/SyowazAntarctica/TrollzAntarctica/VostokzArctic/Longyearbyenz	Asia/AdenzAsia/Almatyz
Asia/AmmanzAsia/Anadyrz
Asia/AqtauzAsia/AqtobezAsia/AshgabatzAsia/AshkhabadzAsia/AtyrauzAsia/BaghdadzAsia/Bahrainz	Asia/BakuzAsia/BangkokzAsia/BarnaulzAsia/BeirutzAsia/BishkekzAsia/BruneizAsia/Calcuttaz
Asia/ChitazAsia/ChoibalsanzAsia/ChongqingzAsia/ChungkingzAsia/Colomboz
Asia/DaccazAsia/Damascusz
Asia/Dhakaz	Asia/Diliz
Asia/DubaizAsia/DushanbezAsia/Famagustaz	Asia/GazazAsia/HarbinzAsia/HebronzAsia/Ho_Chi_MinhzAsia/Hong_Kongz	Asia/HovdzAsia/IrkutskzAsia/IstanbulzAsia/JakartazAsia/JayapurazAsia/Jerusalemz
Asia/KabulzAsia/KamchatkazAsia/KarachizAsia/KashgarzAsia/KathmanduzAsia/KatmanduzAsia/KhandygazAsia/KolkatazAsia/KrasnoyarskzAsia/Kuala_LumpurzAsia/KuchingzAsia/Kuwaitz
Asia/Macaoz
Asia/MacauzAsia/MagadanzAsia/MakassarzAsia/ManilazAsia/MuscatzAsia/NicosiazAsia/NovokuznetskzAsia/Novosibirskz	Asia/Omskz	Asia/OralzAsia/Phnom_PenhzAsia/PontianakzAsia/Pyongyangz
Asia/QatarzAsia/QostanayzAsia/QyzylordazAsia/RangoonzAsia/RiyadhzAsia/SaigonzAsia/SakhalinzAsia/Samarkandz
Asia/SeoulzAsia/ShanghaizAsia/SingaporezAsia/SrednekolymskzAsia/TaipeizAsia/TashkentzAsia/TbilisizAsia/TehranzAsia/Tel_AvivzAsia/ThimbuzAsia/Thimphuz
Asia/Tokyoz
Asia/TomskzAsia/Ujung_PandangzAsia/UlaanbaatarzAsia/Ulan_BatorzAsia/UrumqizAsia/Ust-NerazAsia/VientianezAsia/VladivostokzAsia/YakutskzAsia/YangonzAsia/YekaterinburgzAsia/YerevanzAtlantic/AzoreszAtlantic/BermudazAtlantic/CanaryzAtlantic/Cape_VerdezAtlantic/FaeroezAtlantic/FaroezAtlantic/Jan_MayenzAtlantic/MadeirazAtlantic/ReykjavikzAtlantic/South_GeorgiazAtlantic/St_HelenazAtlantic/StanleyzAustralia/ACTzAustralia/AdelaidezAustralia/BrisbanezAustralia/Broken_HillzAustralia/CanberrazAustralia/CurriezAustralia/DarwinzAustralia/EuclazAustralia/HobartzAustralia/LHIzAustralia/LindemanzAustralia/Lord_HowezAustralia/MelbournezAustralia/NSWzAustralia/NorthzAustralia/PerthzAustralia/QueenslandzAustralia/SouthzAustralia/SydneyzAustralia/TasmaniazAustralia/VictoriazAustralia/WestzAustralia/YancowinnazBrazil/AcrezBrazil/DeNoronhazBrazil/EastzBrazil/WestCETCST6CDTzCanada/AtlanticzCanada/CentralzCanada/EasternzCanada/MountainzCanada/NewfoundlandzCanada/PacificzCanada/SaskatchewanzCanada/YukonzChile/ContinentalzChile/EasterIslandCubaEETESTEST5EDTEgyptEirezEtc/GMTz	Etc/GMT+0z	Etc/GMT+1z
Etc/GMT+10z
Etc/GMT+11z
Etc/GMT+12z	Etc/GMT+2z	Etc/GMT+3z	Etc/GMT+4z	Etc/GMT+5z	Etc/GMT+6z	Etc/GMT+7z	Etc/GMT+8z	Etc/GMT+9z	Etc/GMT-0z	Etc/GMT-1z
Etc/GMT-10z
Etc/GMT-11z
Etc/GMT-12z
Etc/GMT-13z
Etc/GMT-14z	Etc/GMT-2z	Etc/GMT-3z	Etc/GMT-4z	Etc/GMT-5z	Etc/GMT-6z	Etc/GMT-7z	Etc/GMT-8z	Etc/GMT-9zEtc/GMT0zEtc/GreenwichzEtc/UCTzEtc/UTCzEtc/UniversalzEtc/ZuluzEurope/AmsterdamzEurope/AndorrazEurope/AstrakhanzEurope/AthenszEurope/BelfastzEurope/BelgradezEurope/BerlinzEurope/BratislavazEurope/BrusselszEurope/BucharestzEurope/BudapestzEurope/BusingenzEurope/ChisinauzEurope/CopenhagenzEurope/DublinzEurope/GibraltarzEurope/GuernseyzEurope/HelsinkizEurope/Isle_of_ManzEurope/IstanbulzEurope/JerseyzEurope/KaliningradzEurope/KievzEurope/KirovzEurope/KyivzEurope/LisbonzEurope/LjubljanazEurope/LondonzEurope/LuxembourgzEurope/MadridzEurope/MaltazEurope/MariehamnzEurope/MinskzEurope/MonacozEurope/MoscowzEurope/NicosiazEurope/OslozEurope/PariszEurope/PodgoricazEurope/PraguezEurope/RigazEurope/RomezEurope/SamarazEurope/San_MarinozEurope/SarajevozEurope/SaratovzEurope/SimferopolzEurope/SkopjezEurope/SofiazEurope/StockholmzEurope/TallinnzEurope/TiranezEurope/TiraspolzEurope/UlyanovskzEurope/UzhgorodzEurope/VaduzzEurope/VaticanzEurope/ViennazEurope/VilniuszEurope/VolgogradzEurope/WarsawzEurope/ZagrebzEurope/ZaporozhyezEurope/ZurichGBzGB-EireGMTzGMT+0zGMT-0GMT0	GreenwichHSTHongkongIcelandzIndian/AntananarivozIndian/ChagoszIndian/ChristmaszIndian/CocoszIndian/ComorozIndian/KerguelenzIndian/MahezIndian/MaldiveszIndian/MauritiuszIndian/MayottezIndian/ReunionIranIsraelJamaicaJapan	KwajaleinLibyaMETMSTMST7MDTzMexico/BajaNortezMexico/BajaSurzMexico/GeneralNZzNZ-CHATNavajoPRCPST8PDTzPacific/ApiazPacific/AucklandzPacific/BougainvillezPacific/ChathamzPacific/ChuukzPacific/EasterzPacific/EfatezPacific/EnderburyzPacific/FakaofozPacific/FijizPacific/FunafutizPacific/GalapagoszPacific/GambierzPacific/GuadalcanalzPacific/GuamzPacific/HonoluluzPacific/JohnstonzPacific/KantonzPacific/KiritimatizPacific/KosraezPacific/KwajaleinzPacific/MajurozPacific/MarquesaszPacific/MidwayzPacific/NauruzPacific/NiuezPacific/NorfolkzPacific/NoumeazPacific/Pago_PagozPacific/PalauzPacific/PitcairnzPacific/PohnpeizPacific/PonapezPacific/Port_MoresbyzPacific/RarotongazPacific/SaipanzPacific/SamoazPacific/TahitizPacific/TarawazPacific/TongatapuzPacific/TrukzPacific/WakezPacific/WalliszPacific/YapPolandPortugalROCROK	SingaporeTurkeyUCTz	US/AlaskazUS/Aleutianz
US/Arizonaz
US/CentralzUS/East-Indianaz
US/Easternz	US/HawaiizUS/Indiana-StarkezUS/MichiganzUS/Mountainz
US/PacificzUS/Samoa	UniversalzW-SUWETZuluc              #   L   "   T F  p\        V4      '       g   K  Vx  K  	  R # 5irT   )r>   rV   s   & r   rY   rY   e  s      F-r1D-s   $
$c              #   >   "   T F  q\         9   g   K  Vx  K  	  R # 5irT   )all_timezonesrV   s   & r   rY   rY     s      B)2=-@BB)s   
)rJ   rB   country_timezonescountry_namesr   r   r   r   r  rG   common_timezonescommon_timezones_setr
   r   )9r   r   r   os.pathr"   pytz.exceptionsr   r   r   r   	pytz.lazyr   r   r   pytz.tzinfor	   r
   pytz.tzfiler   OLSON_VERSIONVERSION__version__OLSEN_VERSION__all__version_infostrunicoder   r8   r>   rF   rJ   rE   r[   rD   r   rk   HOURr@   rB   rz   __safe_for_unpickling__r   r   r  r   r  ra   r   r   r   r/   r]   r  rG   r  r  rr   r   r   <module>r"     s5      . , 0 0 1 1 - $ 
 A G"!( V  <~?
 $(  F !"/* /d E c@  $  " 58 5p )* x * !"
%#8?? %#P "$ @F '+ #! z	GT		 T		T		T		 T		 	T		
 T		 T		 T		 T		 T		 T		 T		 T		 T		 T		 T		  !T		" #T		$ %T		& 'T		( )T		* +T		, -T		. /T		0 1T		2 3T		4 5T		6 7T		8 9T		: ;T		< =T		> ?T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v "wT		x yT		z ${T		| }T		~ T		@ AT		B CT		D "ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@  AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` "aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@	 A	T		B	 C	T		D	 E	T		F	 G	T		H	 I	T		J	 K	T		L	 M	T		N	 O	T		P	 Q	T		R	 S	T		T	 U	T		V	 W	T		X	 Y	T		Z	 [	T		\	 ]	T		^	 _	T		`	 a	T		b	 c	T		d	 e	T		f	 g	T		h	 i	T		j	 k	T		l	 m	T		n	 o	T		p	 q	T		r	 s	T		t	 u	T		v	 w	T		x	 y	T		z	 {	T		|	 }	T		~	 	T		@
 A
T		B
 C
T		D
 E
T		F
 G
T		H
 I
T		J
 K
T		L
 M
T		N
 O
T		P
 Q
T		R
 S
T		T
 U
T		V
 W
T		X
 Y
T		Z
 [
T		\
 ]
T		^
 _
T		`
 a
T		b
 c
T		d
 e
T		f
 g
T		h
 i
T		j
 k
T		l
 m
T		n
 o
T		p
 q
T		r
 s
T		t
 u
T		v
 w
T		x
 y
T		z
 {
T		|
 }
T		~
 
T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L 	MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ 	]T		^ 	_T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B 
CT		D ET		F 	GT		H IT		J 	KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ 
]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z {T		| }T		~ T		@ AT		B CT		D ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		j kT		l mT		n oT		p qT		r sT		t uT		v wT		x yT		z 
{T		| }T		~ T		@ AT		B CT		D 
ET		F GT		H IT		J KT		L MT		N OT		P QT		R ST		T UT		V WT		X YT		Z [T		\ ]T		^ _T		` aT		b cT		d eT		f gT		h iT		 l  F-F F M* p ppp p 	p
 p p p p p p p p p p p  !p" #p$ %p& 'p( )p* +p, -p. /p0 1p2 3p4 5p6 7p8 9p: ;p< =p> ?p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr "spt upv wpx ypz {p| }p~ "p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj  kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| "}p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@	 A	pB	 C	pD	 E	pF	 G	pH	 I	pJ	 K	pL	 M	pN	 O	pP	 Q	pR	 S	pT	 U	pV	 W	pX	 Y	pZ	 [	p\	 ]	p^	 _	p`	 a	pb	 c	pd	 e	pf	 g	ph	 i	pj	 k	pl	 m	pn	 o	pp	 q	pr	 s	pt	 u	pv	 w	px	 y	pz	 {	p|	 }	p~	 	p@
 A
pB
 C
pD
 E
pF
 G
pH
 I
pJ
 K
pL
 M
pN
 O
pP
 Q
pR
 S
pT
 U
pV
 W
pX
 Y
pZ
 [
p\
 ]
p^
 _
p`
 a
pb
 c
pd
 e
pf
 g
ph
 i
pj
 k
pl
 m
pn
 o
pp
 q
pr
 s
pt
 u
pv
 w
px
 y
pz
 {
p|
 }
p~
 
p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` apb cpd epf gph ipj kpl mpn opp qpr spt upv wpx ypz {p| }p~ p@ ApB CpD EpF GpH IpJ KpL MpN OpP QpR SpT UpV WpX YpZ [p\ ]p^ _p` ap d  B)B B  /0 r   