+
    in`  c                   sh   ^ RI t ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHtHtHt ^RI	H
t
Ht ]! R^^4      t]! R^^4      P                  4       t]P                  ! RR7      R 4       t ! R R	]4      t ! R
 R4      t]! RRR4      t ! R R4      tR t ! R R4      t ! R R4      tR tR tR tR tR# )    N)datetime	timedeltatzinfo)_common_tzpathi  i   )Zmaxsizec                 s    \        V R 7      # )Zseconds)r   r      &+/usr/lib64/python3.14/zoneinfo/_zoneinfo.py_load_timedeltar	      s    W%%    c                   s^  a a ] tR t^t o^t]P                  ! 4       t]P                  ! 4       t
RtR tR t]R 4       t]V 3R l4       t]RV 3R ll4       t]RR/R	 l4       t]R
 4       tR tR tR tR tR tR tR tR tR tR t]R 4       tR tR t ]!R 4       t"]!R 4       t#Rt$Vt%V ;t&# )ZoneInfoZzoneinfoc                sn    \         P                  ! 4       V n        \        P                  ! 4       V n        R # N)collectionsOrderedDict_strong_cacheweakrefWeakValueDictionary_weak_cache)clsr   r   __init_subclass__ZZoneInfo.__init_subclass__$   s#    '335!557r
   c                sx   V P                   P                  VR 4      pVf2   V P                   P                  WP                  V4      4      pRVn        V P
                  P                  W4      V P
                  V&   \        V P
                  4      V P                  8  d   V P
                  P                  RR7       V# )NTF)Zlast)
r   ZgetZ
setdefault_new_instance_from_cacher   poplen_strong_cache_sizeZpopitem)r   keyZinstance   && r   __new__ZZoneInfo.__new__(   s    ??&&sD111#7H7H7MNH#'H  "%!2!2!6!6s!E#s  !C$:$::%%5%1r
   c                s6    V P                  V4      pR Vn        V# )F)r   r   )r   r   objr   r   no_cacheZZoneInfo.no_cache6   s    $
r
   c                sD  < \         SV `  V 4      pWn        VP                  V4      Vn        VP                  e   \        VP                  R4      pM\        P                  ! V4      pV;_uu_ 4       pVP                  V4       R R R 4       V#   + '       g   i     T# ; i)NZrb)	superr   _key_find_tzfile
_file_pathZopenr   Zload_tzdata
_load_file)r   r   r   file_objZf	__class__s   &&   r   r   ZZoneInfo._new_instance=   s    goc"))#.>>%CNND1H**3/HXNN1  
 X 
s   2BB	Nc               s   < \         SV `  V 4      pW#n        R Vn        VP	                  V4       \        V4      Vn        VP                  Vn        V# r   )	r   r   r    r"   r#   repr
_file_repr_file_reduce
__reduce__)r   r$   r   r   r%   s   ""& r   	from_fileZZoneInfo.from_fileM   sH    goc"x h ))
r
   	only_keysc               s    VeD   V F;  pV P                   P                  VR 4       V P                  P                  VR 4       K=  	  R # V P                   P                  4        V P                  P                  4        R # r   )r   r   r   Zclear)r   r+   r   s   &$ r   clear_cacheZZoneInfo.clear_cacheZ   s`      ##C.!!%%c40 !
 OO!!###%r
   c                s    V P                   # r   )r    selfr   r   r   ZZoneInfo.keye   s    yyr
   c                8    V P                  V4      P                  # r   )_find_transutcoffr.   dt   &&r   	utcoffsetZZoneInfo.utcoffseti       #***r
   c                r/   r   )r0   dstoffr2   r4   r   dstZZoneInfo.dstl   r6   r
   c                r/   r   )r0   tznamer2   r4   r   r9   ZZoneInfo.tznameo   r6   r
   c                sp   \        V\        4      '       g   \        R 4      hVP                  V Jd   \	        R4      hV P                  V4      p\        V P                  4      pV^8  d(   W P                  ^ ,          8  d   V P                  p^ pEMyV^ 8X  g   W P                  R,          8  dJ   \        V P                  \        4      '       g*   V P                  P                  W!P                  4      w  rEEMV^ 8X  d   V P                  p^ pM\        P                  ! V P                  V4      pV^8  d1   W P                  ^,          8  d   V P                  V^,
          V w  rtMVW P                  R,          8  d!   V P                  R,          pV P                  pMV P                  pV P                  ^ ,          pVP                   VP                   ,
          pVP#                  4       W P                  V^,
          ,          ,
          8  pWP                   ,          pV'       d   VP%                  ^R7      # V# )z&fromutc() requires a datetime argumentzdt.tzinfo is not self)fold)
isinstancer   Z	TypeErrorr   
ValueError_get_local_timestampr   
_trans_utc_tti_before	_tz_after_ttinfoget_trans_info_fromutcyearbisectbisect_right_ttinfosr1   total_secondsZreplace)	r.   r3   Z	timestamp	num_transZttir:   idxZtti_prevZshifts	   &&       r   fromutcZZoneInfo.fromutcr   s    "h''DEE99D 455--b1	(	>i//!*<<""CDNi//"*==T^^W55==77IC !^..CD%%dooyAC1}ooa.@!@ $cAg <#__R00==,nn++mmA& OOcjj0E&&(9sQw7O+OOD
jj::1:%%Ir
   c                sH   Vf%   V P                   '       d   V P                  # \        # V P                  V4      pV P                  VP
                  ,          p\        V4      pV'       d   W#^ ,          8  d   V P                  # V'       d   W#R,          8  d]   \        V P                  \        4      '       d1   V P                  P                  W!P                  VP
                  4      # V P                  # \        P                  ! W24      ^,
          pV P                  V,          # )Nr;   )_fixed_offsetrA   
_NO_TTINFOr>   _trans_localr:   r   r@   r<   _TZStrget_trans_inforD   rE   rF   rG   )r.   r3   tsZltrI   rJ   s   &&    r   r0   ZZoneInfo._find_trans   s    :!!!~~%!!&&r*rww'G	e###bb6k$..&11~~44R"''JJ~~% %%b-1C==%%r
   c                s    VP                  4       \        ,
          R ,          VP                  R,          ,           VP                  ^<,          ,           VP                  ,           # )Q   )	toordinalEPOCHORDINALhourminutesecondr2   r4   r   r>   ZZoneInfo._get_local_timestamp   sH    \\^l*e3ggnii"n ii	
r
   c                sN    V P                   e   V P                    # \        V 4      # r   )r    r&   r-   r   r   __str__ZZoneInfo.__str__   s"    99 ii[!:r
   c                s    V P                   e(   V P                  P                   RV P                   : R2# V P                  P                   RV P                   R2# )Nz(key=)z.from_file()r    r%   __name__r'   r-   r   r   __repr__ZZoneInfo.__repr__   sQ    99 nn--.eDII=BBnn--.k$//9J!LLr
   c                s^    V P                   P                  V P                  V P                  33# r   )r%   	_unpickler    r   r-   r   r   r)   ZZoneInfo.__reduce__   s&    ((499d6F6F*GHHr
   c                s,    ^ RI pVP                  R4      h)r    Nz9Cannot pickle a ZoneInfo file created from a file stream.)pickleZPicklingError)r.   r^      & r   r(   ZZoneInfo._file_reduce   s    ""G
 	
r
   c               sD    V'       d	   V ! V4      # V P                  V4      # r   )r   )r   r   Z
from_caches   """r   r]   ZZoneInfo._unpickle   s    s8O<<$$r
   c                s.    \         P                  ! V4      # r   )r   Zfind_tzfile)r.   r   r4   r   r!   ZZoneInfo._find_tzfile   s    ""3''r
   c                s   \         P                  ! V4      w  r#rErgV P                  W$V4      pV P                  W#V4      p	\	        WHV4       U
UUu. uF%  w  rp\        \        V
4      \        V4      V4      NK'  	  ppp
pW0n        Wn        V Uu. uF  qV,          NK  	  upV n	        \        \        V4      4       F   pW_,          '       d   K  W,          V n         M4	  V P                  '       d   V P                  ^ ,          V n        MRV n        Ve'   VR8w  d    \        VP                  4       4      V n        M^V P                  '       g   V'       g   \!        R4      hV P                  '       d   V P                  R,          V n        MVR,          V n        \        V4      ^8  g!   \#        V P                  \
        4      '       g
   RV n        R# V'       g
   RV n        R# V^ ,          V P                  8H  V n        R# u uppp
i u upi )r    Nr
   zNo time zone information found.FTr;   )r   Z	load_data_utcoff_to_dstoff_ts_to_localZziprB   r	   r?   rN   rG   ranger   r@   _parse_tz_strZdecoderA   r=   r<   rL   )r.   Zfobj	trans_idxZ	trans_utcr1   isdstZabbrtz_strr7   Ztrans_localr5   Z	dstoffsetr9   Z_ttinfo_listrJ   is   &&              r   r#   ZZoneInfo._load_file   s   <C<M<M=
9	fT
 ''	5A ''	fE 14FD0I	
 1J,	f 	*OI,F 1J	 	 
 $'6?@isc**i@ s5z"A88#/?  #
 }}}#'==#3 #'  &C-*6==?;DN=== !BCC}}}!%r!2!-b!1* |q 
4>>7(K(K!&D!%D!-aDNN!BDu
 As   +H Hc                sr   \        V4      p^ .V,          p\        V4      p^ p\        ^\        V 4      4       F  pWV8X  d    V# W,          pW(,          p	V	'       g   K&  WH,          ^ 8w  d   K5  ^ p
W,          pW^,
          ,          pW,,          '       g   WV,          ,
          p
V
'       g<   W^,
          8  d/   W^,           ,          pW,,          '       d   K  WV,          ,
          p
V
'       g   K  V^,          pWV&   K  	  \        V4       F'  pWH,          '       d   K  W(,          '       g   K#  RWH&   K)  	  V# )r    rS   )r   Zsumrb   )rd   
utcoffsetsZisdstsZtypecntZdstoffsZdst_cntZ	dst_foundrg   rJ   r8   r7   r1   Zcomp_idxs   &&&          r   r`   ZZoneInfo._utcoff_to_dstoff*  s    f+#-f+	q#i.)A#X U ,C+C  |q F_F Q'H##X"66cq[1$U+
 ##X"66vQ	%K *T W~||#'GL & r
   c                s2   V'       g   . . .# \        V4      \        V4      .p\        V4      ^8  d"   V^ ,          pW ^ ,          ,          pWT8  d   YErEM
V^ ,          ;rEV^ ,          ^ ;;,          V,          uu&   V^,          ^ ;;,          V,          uu&   \        ^\        V 4      4       Fh  pW V^,
          ,          ,          pW V,          ,          pWT8  d   YErEV^ ,          V;;,          V,          uu&   V^,          V;;,          V,          uu&   Kj  	  V# )   )Zlistr   rb   )rd   Ztrans_list_utcrh   Ztrans_list_wallZoffset_0Zoffset_1rg   s   &&&    r   ra   ZZoneInfo._ts_to_locali  s    
 8O  /n1EFz?Q!!}H!A,/H"%-(",Q-/H1)1)q#i.)A!AE"23H!A,/H"%-(Aq!X-!Aq!X-! * r
   )rL   rN   r?   r@   rG   rA   r   )'r[   
__module____qualname____firstlineno__r   r   r   r   r   r   r   r   r   classmethodr   r   r*   r,   Zpropertyr   r5   r8   r9   rK   r0   r>   rY   r\   r)   r(   r]   r!   r#   Zstaticmethodr`   ra   __static_attributes____classdictcell__Z__classcell__)r%   __classdict__s   @@r   r   r      s%    ++-M--/KJ8     
 
 &d & &  +++*X&6
MI
 % %(GCR < <|   r
   r   c                   s:   a  ] tR tRt o . ROtR tR tR tRtV t	R# )rB   i  c                s*    Wn         W n        W0n        R # r   r1   r7   r9   )r.   r1   r7   r9      &&&&r   __init__Z_ttinfo.__init__  s    r
   c                s    V P                   VP                   8H  ;'       d;    V P                  VP                  8H  ;'       d    V P                  VP                  8H  # r   rq   )r.   Zotherr4   r   __eq__Z_ttinfo.__eq__  sK    KK5<<' , ,u||+, ,u||+	
r
   c                s    V P                   P                   R V P                   RV P                   RV P                   R2,           # )Z(z, rZ   )r%   r[   r1   r7   r9   r-   r   r   r\   Z_ttinfo.__repr__  s@    ~~&&'$++bR}A>?	
r
   )r7   r9   r1   Nrq   )
r[   rj   rk   rl   	__slots__rs   rt   r\   rn   ro   rp      @r   rB   rB     s     .I


 
r
   rB   c                   s@   a  ] tR tRt o RtR	R ltR tR tR tRt	V t
R# )
rO   i  Nc                s.   WB,
          V n         \        V4      p\        V\        ^ 4      VR7      V n        WPn        W`n        \        V4      p\        V P                   4      p\        WGVR7      V n        V P                  V n        V P                  V n
        R# )r    rq   N)dst_diffr	   rB   stdstartendr8   _get_trans_inforP   _get_trans_info_fromutcrC   )r.   std_abbr
std_offsetdst_abbr
dst_offsetrz   r{   Zdeltas   &&&&&&& r   rs   Z_TZStr.__init__  s     #/$Z0
oa&8
 
$Z0
.*8L #22&*&B&B#r
   c                st    V P                   P                  V4      pV P                  P                  V4      pW#3# r   )rz   year_to_epochr{   )r.   rD   rz   r{   s   &&  r   transitionsZ_TZStr.transitions  s2    

((.hh$$T*zr
   c                sD   V P                  V4      w  rEW0P                  ^ 8  8X  d   WPP                  ,          pMW@P                  ,          pWE8  d   YAu;8*  ;'       d    V8  Mu pMYQu;8*  ;'       d    V8  Mu '       * pV'       d   V P                  # V P                  # r    )r   rx   r8   ry   )r.   rQ   rD   r:   rz   r{   re   s   &&&&   r   r|   Z_TZStr._get_trans_info  sz    %%d+
 MMQ&'== C]]"E;%%#%E**U*+E txx.dhh.r
   c                s"   V P                  V4      w  r4W0P                  P                  P                  4       ,          pW@P                  P                  P                  4       ,          pW48  d   Y1u;8*  ;'       d    V8  Mu pMYAu;8*  ;'       d    V8  Mu '       * pV P
                  ^ 8  d   TpW@P
                  ,           pMTpW0P
                  ,
          pYau;8*  ;'       d    V8  Mu pV'       d   V P                  V3# V P                  V3# r   )r   ry   r1   rH   r8   rx   )	r.   rQ   rD   rz   r{   re   Zambig_startZ	ambig_endr:   s	   &&&      r   r}   Z_TZStr._get_trans_info_fromutc  s    %%d+
..00xx,,..;%%#%E**U*+E
 ==1Kmm+IK-I,,9,!66txx66r
   )r8   rx   r{   rP   rC   rz   ry   )ry   r8   rz   r{   rP   rC   rx   )NN)r[   rj   rk   rl   ru   rs   r   r|   r}   rn   ro   rv   rw   r   rO   rO     s&     IC0
/07 7r
   rO   c                 s    V ^,
          pVR,          V^,          ,           V^d,          ,
          VR,          ,           \         ,
          # )ri   m  i  )rU   )rD   Zyr_   r   _post_epoch_days_before_yearr     s5    qAs7Q!Va3h&c1L@@r
   c                   s8   a  ] tR tRt o . ROtRR ltR tRtV tR# )
_DayOffseti  c                s    ^ V,           pYau;8:  d   R8:  g   M \        RV RV 24      hWn        W n        W0n        W@n        WPn        R# )r    r   zd must be in [z, 365], not: N)r=   djulianrV   rW   rX   )r.   r   r   rV   rW   rX   Zmin_days   &&&&&& r   rs   Z_DayOffset.__init__  sG    f*"s"~gYmA3GHH	r
   c                sR   \        V4      pV P                  pV P                  '       d-   V^;8  d&   \        P                  ! V4      '       d
   V^,          pW#,           R,          pW@P
                  R,          V P                  ^<,          ,           V P                  ,           ,          pV# );   rR   rS   )r   r   r   calendarisleaprV   rW   rX   )r.   rD   Zdays_before_yearr   epochs   &&   r   r   Z_DayOffset.year_to_epoch  sv    7=FF;;;17xt'<'<FA!%.T!DKK"$44t{{BBr
   )r   rV   r   rW   rX   N)r   r   rV   rW   rX      r    r    )	r[   rj   rk   rl   ru   rs   r   rn   ro   rv   rw   r   r   r     s     ;I	
 
r
   r   c                   sL   a  ] tR tRt o . ROtRtR	R lt]R 4       tR t	Rt
V tR# )
_CalendarOffseti  c                s    ^Tu;8:  d   ^8:  g   M \        R4      h^Tu;8:  d   ^8:  g   M \        R4      h^ Tu;8:  d   ^8:  g   M \        R4      hWn        W n        W0n        W@n        WPn        W`n        R# )ri   zm must be in [1, 12]zw must be in [1, 5]zd must be in [0, 6]N)r=   mwr   rV   rW   rX   )r.   r   r   r   rV   rW   rX   s   &&&&&&&r   rs   Z_CalendarOffset.__init__2  se    A||344A{{233A{{233	r
   c                s    \        V4      V P                  V,          ,           V^8  ;'       d    \        P                  ! V4      ,           V,           # )r   )r   _DAYS_BEFORE_MONTHr   r   )r   rD   ZmonthZdayrr   r   _ymd2ordZ_CalendarOffset._ymd2ordC  sK     ).$$U+,qy22X__T24 	
r
   c                s   \         P                  ! WP                  4      w  r#V P                  V^,           ,
          ^,          ^,           pW@P                  ^,
          ^,          ,          pWC8  d
   V^,          pV P                  WP                  V4      pVR,          pW`P                  R,          V P                  ^<,          ,           V P                  ,           ,          pV# )ri   rR   rS   )	r   Z
monthranger   r   r   r   rV   rW   rX   )r.   rD   Z	first_dayZdays_in_monthZ	month_dayZordinalr   s   &&     r   r   Z_CalendarOffset.year_to_epochM  s     $,#6#6tVV#D 	 VVy1}-2Q6	 	ffqjA%%	
 $NI--ffi8%T!DKK"$44t{{BBr
   )r   rV   r   rW   rX   r   N)r   r   r   rV   rW   rX   )r;   r    i   r   iZ   ix   i   i   i   i   i  i0  iN  r   )r[   rj   rk   rl   ru   r   rs   rm   r   r   rn   ro   rv   rw   r   r   r     s5     ;I " 
 
 r
   r   c                 s   V P                  R ^4      vr\        P                  ! R\        P                  \        P                  ,          4      pVP                  V4      pVf   \        V  R24      hVP                  R4      pVP                  R4      pRpVP                  R4      pV'       d   VP                  R4      pVP                  R4      ;p'       d    \        V4      pM^ pVex   VP                  R	4      ;p'       d    \        V4      pM	VR,           pV'       g   \        RV  24      hV^ ,          P                  R ^4      p
 R V
 4       w  r\        YXYgY4      # V'       d   \        RV  24      h\        \        V4      \        ^ 4      V4      #   \         d   p	\        RT  24      T	hRp	?	ii ; i  \         d   p	\        R
T  24      T	hRp	?	ii ; i  \         d   p	\        RT  24      T	hRp	?	ii ; i)Z,a.  
        (?P<std>[^<0-9:.+-]+|<[a-zA-Z0-9+-]+>)
        (?:
            (?P<stdoff>[+-]?\d{1,3}(?::\d{2}(?::\d{2})?)?)
            (?:
                (?P<dst>[^0-9:.+-]+|<[a-zA-Z0-9+-]+>)
                (?P<dstoff>[+-]?\d{1,3}(?::\d{2}(?::\d{2})?)?)?
            )? # dst
        )? # stdoff
        Nz is not a valid TZ stringry   r8   z<>ZstdoffzInvalid STD offset in r7   zInvalid DST offset in rS   zMissing transition rules: c              3   s8   "   T F  p\        V4      x  K  	  R # 5ir   )_parse_dst_start_end).0Zxr_   r   	<genexpr>Z _parse_tz_str.<locals>.<genexpr>  s     J>a.q11>s   zInvalid TZ string: z%Transition rule present without DST: )splitreZcompileASCIIZVERBOSE	fullmatchr=   groupZstrip_parse_tz_deltarO   rB   r	   )rf   Z
offset_strZstart_end_strZ	parser_rer   r~   r   r   r   ZeZstart_end_strsrz   r{   s   &            r   rc   rc   o  s    "(c1!5J

		 	I 	J'AyF8#<=>>wwu~Hwwu~HJ~~d#H>>$'WWX&&z&	G(4J 
**:*K,Z8
 $d*J9&BCC&q)//Q7	DJ>JJE hH%MM	@IJJ J');X
 	
9  	G5fX>?QF	G  K #9&!BCJK  	D26(;<!C	DsH   F F9 
G F6"F11F69GGGG:&G55G:c                 s   V P                  R ^4      vrVR,          pVR8X  dl   Rp\        P                  ! RV\        P                  4      pVf   \	        RV  24      h\        \        \        VP                  4       4      4      p\        V!  pM+VR8X  d   RpVR,          pMRp\        V4      p\        W4      pV'       d&   \        V^ ,          4      w  Vn        Vn        Vn        V# )	Z/:Nri   NZMFzM(\d{1,2})\.(\d).(\d)zInvalid dst start/end date: ZJT:ri   NN)r   r   r   r   r=   ZtupleZmapintZgroupsr   r   _parse_transition_timerV   rW   rX   )	ZdststrZdateZtimeZtypeZn_is_julianr   Zdate_offsetZoffsetZdoys	   &        r   r   r     s    ,,sA&KD8Ds{LL14B9;F8DEECQXXZ01 +.3;K8DK$iC-4J4PQ74S1V]FMMr
   c                 s   \         P                  ! R V \         P                  4      pVf   \        RV  24      hR VP	                  RRR4       4       w  r#pV^8  d   \        RV  24      hVP	                  R4      R8X  d	   V) V) V) rCpW#V3# )	=(?P<sign>[+-])?(?P<h>\d{1,3})(:(?P<m>\d{2})(:(?P<s>\d{2}))?)?zInvalid time: c              3   L   "   T F  p\        T;'       g    ^ 4      x  K  	  R# 5ir    Nr   r   Zvr_   r   r   Z)_parse_transition_time.<locals>.<genexpr>       ?$>qs166{{$>   $$hr   szHour must be in [0, 167]: sign-)r   r   r   r=   r   )Ztime_strmatchr   r   r   s   &    r   r   r     s    LLH
E
 }>(455?EKKS#$>?GA!3w(
3
 	
 {{6c!"qb1"a7Nr
   c                 s$   \         P                  ! R V \         P                  4      pR VP                  RRR4       4       w  r#pVR,          V^<,          ,           V,           pV^8  d   \	        RV  24      hVP                  R4      R8w  d   V) pV# )	r   c              3   r   r   r   r   r_   r   r   Z"_parse_tz_delta.<locals>.<genexpr>  r   r   r   r   r   rS   z!Offset hours must be in [0, 24]: r   r   )r   r   r   r   r=   )Ztz_deltar   r   r   r   Ztotals   &     r   r   r     s    LLH
E @EKKS#$>?GA!Hq2v!E2v/z:
 	

 {{6c!Lr
   )rE   r   r   Z	functoolsr   r   r   r   r   Z r   r   ZEPOCHrT   rU   Z	lru_cacher	   r   rB   rM   rO   r   r   r   rc   r   r   r   ) r
   r   <module>r      s        	  0 0 q!a#--/ S!& "&kv k\
 
, T4&
V7 V7rA 6M M`K
\4,r
   