§
    ¸)ýf¸f ã            	       óè  — d Z dZddlZddlZddlZddlmZ	 d„ Z
dZdZdZg d	¢Zd
gZdZedd…         D ]Ze                     e¦  «         eez  ZŒ[[d„ Zd„ Zd„ Zd„ Zd„ Z ed¦  «        Z ed¦  «        Z ed¦  «        Zedk    sJ ‚edez  dz   k    sJ ‚edez  dz
  k    sJ ‚d„ Zg d¢Zg d¢Zd„ ZdJd„Zd„ Z d„ Z!d„ Z"d„ Z#d „ Z$g d!¢Z%d"„ Z&d#„ Z'd$„ Z(d%„ Z)d&„ Z*d'„ Z+d(„ Z,d)„ Z-d*„ Z.d+„ Z/ G d,„ d-¦  «        Z0 e0d.¦  «        e0_1         e0d/d0d1d1d2¬3¦  «        e0_2         e0d¬4¦  «        e0_3         G d5„ d6¦  «        Z4e4Z5 e4ddd¦  «        e4_1         e4dd7d8¦  «        e4_2         e0d¬9¦  «        e4_3         G d:„ d;¦  «        Z6 G d<„ d=e7¦  «        Z8e8Z9[8e6Z: G d>„ d?¦  «        ZeZ; eddd¦  «        e_1         ed0d1d1d2¦  «        e_2         e0d¬4¦  «        e_3         G d@„ dAe4¦  «        Z< e<ddd¦  «        e<_1         e<dd7d8d0d1d1d2¦  «        e<_2         e0d¬4¦  «        e<_3        dB„ Z= G dC„ dDe6¦  «        Z>e> ?                     e0d¦  «        ¦  «        xZ@e>_A        e> ?                     e0d0d1¬E¦  «         ¦  «        e>_1        e> ?                     e0d0d1¬E¦  «        ¦  «        e>_2         e<dFdde>jA        ¬G¦  «        ZB	 ddHlCT [[[[[[[B[[[[+[,[-[)[*[
[.[5[[[[[ [	[[=[[[[;[:[![[/[$['[&[9[([#[%["ddIlCm Z  dS # eD$ r Y dS w xY w)Kz†Concrete date/time and related types.

See http://www.iana.org/time-zones/repository/tz-link.html for
time zone and DST data sources.
)	ÚdateÚdatetimeÚtimeÚ	timedeltaÚtimezoneÚtzinfoÚMINYEARÚMAXYEARÚUTCé    N)Úindexc                 ó&   — | |k    rdn	| |k    rdndS )Nr   é   éÿÿÿÿ© ©ÚxÚys     úT/home/blender/git/blender-v430/install_release/4.3/python/lib/python3.11/datetime.pyÚ_cmpr      s    € Ø�Q’�ˆ1ˆ1  Q¢ ˜A˜A¨BÐ.ó    r   i'  iÛ¹7 )r   é   é   r   é   r   r   r   r   r   r   r   r   r   c                 ó8   — | dz  dk    o| dz  dk    p| dz  dk    S )zyear -> 1 if leap year, else 0.é   r   éd   é�  r   )Úyears    r   Ú_is_leapr   *   s*   € à�!‰8�qŠ=ÐA˜d S™j¨AšoÐ@°¸±¸q²ÐAr   c                 ó:   — | dz
  }|dz  |dz  z   |dz  z
  |dz  z   S )z2year -> number of days before January 1st of year.r   ém  r   r   r   r   )r   r   s     r   Ú_days_before_yearr"   .   s/   € àˆq‰€AØˆS‰5�1�a‘4‰<˜!˜S™&Ñ  1 c¡6Ñ)Ð)r   c                 ó|   — d|cxk    rdk    sn J |¦   «         ‚|dk    rt          | ¦  «        rdS t          |         S )z9year, month -> number of days in that month in that year.r   é   é   é   )r   Ú_DAYS_IN_MONTH©r   Úmonths     r   Ú_days_in_monthr*   3   sR   € à�ÐÐÒÐ˜ÒÐÐÐÐ˜UÑÔÐØ�‚z€z•h˜t‘n”n€zØˆrÝ˜%Ô Ð r   c                 óz   — d|cxk    rdk    sn J d¦   «         ‚t           |         |dk    ot          | ¦  «        z   S )zCyear, month -> number of days in year preceding first day of month.r   r$   úmonth must be in 1..12r%   )Ú_DAYS_BEFORE_MONTHr   r(   s     r   Ú_days_before_monthr.   :   sO   € à�ÐÐÒÐ˜ÒÐÐÐÐÐ5ÑÔÐÝ˜eÔ$¨°ª	Ð(Dµh¸t±n´nÑEÐEr   c                 óÒ   — d|cxk    rdk    sn J d¦   «         ‚t          | |¦  «        }d|cxk    r|k    sn J d|z  ¦   «         ‚t          | ¦  «        t          | |¦  «        z   |z   S )z>year, month, day -> ordinal, considering 01-Jan-0001 as day 1.r   r$   r,   úday must be in 1..%d)r*   r"   r.   ©r   r)   ÚdayÚdims       r   Ú_ymd2ordr4   ?   s�   € à�ÐÐÒÐ˜ÒÐÐÐÐÐ5ÑÔÐÝ
˜˜uÑ
%Ô
%€CØ�ˆ?ˆ?Š?ˆ?�sŠ?ˆ?ˆ?ˆ?ˆ?Ð3°cÑ9‰?Œ?ˆ?Ý˜dÑ#Ô#Ý˜t UÑ+Ô+ñ,àñð r   i‘  ée   é   iµ  r   é   c                 óV  — | dz  } t          | t          ¦  «        \  }} |dz  dz   }t          | t          ¦  «        \  }} t          | t          ¦  «        \  }} t          | d¦  «        \  }} ||dz  |dz  z   |z   z  }|dk    s|dk    r| dk    sJ ‚|dz
  ddfS |d	k    o|d
k    p|d	k    }|t	          |¦  «        k    sJ ‚| dz   dz	  }t
          |         |dk    o|z   }|| k    r|dz  }|t          |         |dk    o|z   z  }| |z  } d| cxk    rt          ||¦  «        k     sn J ‚||| dz   fS )z@ordinal -> (year, month, day), considering 01-Jan-0001 as day 1.r   r   r!   r   r   r   r$   r   é   é   é2   r6   r%   )ÚdivmodÚ_DI400YÚ_DI100YÚ_DI4Yr   r-   r'   r*   )	ÚnÚn400r   Ún100Ún4Ún1Úleapyearr)   Ú	precedings	            r   Ú_ord2ymdrG   X   s‡  € ð. ˆ�F€AÝ�Q�Ñ Ô �G€Dˆ!Ø�#‰:˜‰>€Dõ �Q�Ñ Ô �G€Dˆ!õ �1•eÑÔ�E€Bˆõ �1�c‰NŒN�E€BˆàˆD�3‰J˜˜a™Ñ "Ñ$Ñ$€DØ	ˆQ‚w€w�$˜!’)�)Ø�AŠvˆvˆvˆvØ�A‰v�r˜2ˆ~Ðð �QŠwÐ2˜B "šHÐ1¨°ª	€HØ•x ‘~”~Ò%Ð%Ð%Ð%Ø�‰V˜‰M€EÝ" 5Ô)¨U°QªYÐ-C¸8ÑD€IØ�1‚}€}Ø�‰
ˆØ•^ EÔ*¨e°qªjÐ.E¸XÑFÑFˆ	Øˆ�N€AØ�Ð/Ð/Ò/Ð/•N 4¨Ñ/Ô/Ò/Ð/Ð/Ð/Ð/Ð/ð �˜˜!™ÐÐr   )NÚJanÚFebÚMarÚAprÚMayÚJunÚJulÚAugÚSepÚOctÚNovÚDec)NÚMonÚTueÚWedÚThuÚFriÚSatÚSunc                 ó�   — t          | ||¦  «        dz   dz  }t          | |¦  «        |z   }t          j        | ||||||||f	¦  «        S )Né   é   )r4   r.   Ú_timeÚstruct_time)	r   ÚmÚdÚhhÚmmÚssÚdstflagÚwdayÚdnums	            r   Ú_build_struct_timerh   œ   sU   € Ý�Q˜˜1ÑÔ Ñ! QÑ&€DÝ˜a Ñ#Ô# aÑ'€DÝÔ˜a  A r¨2¨r°4¸¸wÐGÑHÔHÐHr   Úautoc                 ó¾   — ddddddœ}|dk    r|rdnd	}n|d
k    r|dz  }	 ||         }|                      | |||¦  «        S # t          $ r t          d¦  «        ‚w xY w)Nz{:02d}z{:02d}:{:02d}z{:02d}:{:02d}:{:02d}z{:02d}:{:02d}:{:02d}.{:03d}z{:02d}:{:02d}:{:02d}.{:06d})ÚhoursÚminutesÚsecondsÚmillisecondsÚmicrosecondsri   ro   rm   rn   éè  zUnknown timespec value)ÚformatÚKeyErrorÚ
ValueError)rb   rc   rd   ÚusÚtimespecÚspecsÚfmts          r   Ú_format_timerx   ¡   s¢   € àØ"Ø)Ø5Ø5ðð €Eð �6ÒÐà%'Ð6�>�>¨YˆˆØ	�^Ò	#Ð	#Ø
ˆt‰ˆð*Ø�HŒoˆð �zŠz˜"˜b " bÑ)Ô)Ð)øõ ð 3ð 3ð 3ÝÐ1Ñ2Ô2Ð2ð3øøøs   ¢A ÁAc                 ó"  — d}| �Š| j         dk     rd}|  } nd}t          | t          d¬¦  «        ¦  «        \  }}t          |t          d¬¦  «        ¦  «        \  }}|d|||fz  z  }|s|j        r!|d	|j        z  z  }|j        r|d
|j        z  z  }|S )NÚ r   ú-ú+r   ©rk   ©rl   z%s%02d:%02dz:%02dú.%06d)Údaysr<   r   ro   rm   )ÚoffÚsÚsignrb   rc   rd   s         r   Ú_format_offsetr„   ¶   s½   € Ø
€AØ
€ØŒ8�aŠ<ˆ<ØˆDØ�$ˆCˆCàˆDÝ˜�Y¨QÐ/Ñ/Ô/Ñ0Ô0‰ˆˆBÝ˜�I¨aÐ0Ñ0Ô0Ñ1Ô1‰ˆˆBØ	ˆ]˜d B¨˜^Ñ+Ñ+ˆØð 	/�”ð 	/Ø�˜2œ:Ñ%Ñ%ˆAàŒð /Ø�W˜rœÑ.Ñ.�Ø€Hr   c                 ó  — d }d }d }g }|j         }dt          |¦  «        }	}||	k     �r»||         }
|dz  }|
dk    �r•||	k     �r‚||         }
|dz  }|
dk    r-|€dt          | dd¦  «        z  }|                      |¦  «         �nY|
dk    rÉ|€«d}t          | d	¦  «        r™|                      ¦   «         }|�ƒd
}|j        dk     r| }d}t          |t          d¬¦  «        ¦  «        \  }}t          |t          d¬¦  «        ¦  «        \  }}|j        }|j	        }|rd|||||fz  }n|r
d||||fz  }nd|||fz  }d|vsJ ‚|                      |¦  «         nŠ|
dk    rV|€>d}t          | d¦  «        r,|  
                    ¦   «         }|�|                     dd¦  «        }|                      |¦  «         n. |d¦  «          ||
¦  «         n |d¦  «         n ||
¦  «         ||	k     �°»d                     |¦  «        }t          j        ||¦  «        S )Nr   r   ú%Úfz%06dÚmicrosecondÚzrz   Ú	utcoffsetr|   r{   r}   r~   z%c%02d%02d%02d.%06dz%c%02d%02d%02dz
%c%02d%02dÚZÚtznamez%%)ÚappendÚlenÚgetattrÚhasattrrŠ   r€   r<   r   rm   ro   rŒ   ÚreplaceÚjoinr^   Ústrftime)Úobjectrq   Ú	timetupleÚfreplaceÚzreplaceÚZreplaceÚ	newformatÚpushÚir@   ÚchÚoffsetrƒ   ÚhÚrestr`   r‚   Úus                     r   Ú_wrap_strftimer¡   É   sž  € à€HØ€HØ€Hð €IØÔ€DØ�c�&‰kŒk€q€AØ
ˆaŠ%‰%Ø�AŒYˆØ	ˆQ‰ˆØ�Š9‰9Ø�1Šu‰uØ˜A”Y�Ø�Q‘�Ø˜’9�9ØÐ'Ø#)­G°FØ4AÀ1ñ-Fô -Fñ $F˜à×$Ò$ XÑ.Ô.Ð.Ñ.Ø˜3’Y�YØÐ'Ø#%˜Ý" 6¨;Ñ7Ô7ð KØ%+×%5Ò%5Ñ%7Ô%7˜FØ%Ð1Ø'* Ø#)¤;°¢? ?Ø.4¨W FØ+. DÝ*0°½ÈÐ9KÑ9KÔ9KÑ*LÔ*L¡  4Ý*0°µyÈÐ7KÑ7KÔ7KÑ*LÔ*L¡  4Ø$(¤L Ø$*Ô$7 Ø#$ð !KØ/DÈÈaÐQRÐTUÐWXÐGYÑ/Y H HØ%&ð !KØ/?À4ÈÈAÈqÀ/Ñ/Q H Hà/;¸tÀQÈ¸lÑ/J HØ hÐ.Ð.Ð.Ð.Ø×$Ò$ XÑ.Ô.Ð.Ð.Ø˜3’Y�YØÐ'Ø#%˜Ý" 6¨8Ñ4Ô4ð @Ø &§¢¡¤˜AØ ˜}à+,¯9ª9°S¸$Ñ+?Ô+? Ø×$Ò$ XÑ.Ô.Ð.Ð.à�D˜‘I”I�IØ�D˜‘H”H�H�Hà��S‘	”	�	�	àˆD�‰HŒHˆHðc ˆaŠ%‰%ðd —’˜	Ñ"Ô"€IÝŒ>˜) YÑ/Ô/Ð/r   c                 ó
   — | dv S )NÚ
0123456789r   )Úcs    r   Ú_is_ascii_digitr¥   	  s   € Ø�ÐÐr   c                 óÎ  — t          | ¦  «        }|dk    rdS |dk    sJ ‚d}d}| d         |k    rk| d         |k    r]|dk     rt          d¦  «        ‚|dk    r@| d         |k    r4|dk    rt          d¦  «        ‚|d	k    rt          | d	         ¦  «        rdS d	S dS d	S | d         |k    r>d}||k     r!t          | |         ¦  «        sn|d
z  }||k     °!|dk     r|S |dz  dk    rdS dS dS )Nr]   r{   ÚWr   r6   é   zInvalid ISO stringé	   é
   r   r%   r   )rŽ   rs   r¥   )ÚdtstrÚ	len_dtstrÚdate_separatorÚweek_indicatorÚidxs        r   Ú"_find_isoformat_datetime_separatorr°     s@  € å�E‘
”
€IØ�A‚~€~Øˆqà�qŠ=ˆ=ˆ=ˆ=Ø€NØ€NàˆQ„x�>Ò!Ð!Ø�Œ8�~Ò%Ð%Ø˜1Š}ˆ}Ý Ð!5Ñ6Ô6Ð6Ø˜1Š}ˆ}  q¤¨^Ò!;Ð!;Ø ’>�>Ý$Ð%9Ñ:Ô:Ð:Ø˜r’>�>¥o°e¸B´iÑ&@Ô&@�>ð ˜1Ø�rð �qð �2à�Œ8�~Ò%Ð%àˆCØ˜	’/�/Ý& u¨S¤zÑ2Ô2ð ØØ�q‘�ð ˜	’/�/ð
 �QŠwˆwØ�
à�Q‰w˜!Š|ˆ|à�qà�qð �1r   c                 óœ  — t          | ¦  «        dv sJ ‚t          | dd…         ¦  «        }| d         dk    }d|z   }| ||dz   …         dk    rš|dz  }t          | ||dz   …         ¦  «        }|dz  }d}t          | ¦  «        |k    rC| ||dz   …         dk    |k    rt          d¦  «        ‚||z  }t          | ||dz   …         ¦  «        }t          t	          |||¦  «        ¦  «        S t          | ||dz   …         ¦  «        }|dz  }| ||dz   …         dk    |k    rt          d¦  «        ‚||z  }t          | ||dz   …         ¦  «        }|||gS )	N©r]   r¨   rª   r   r   r{   r   r§   r%   z"Inconsistent use of dash separator)rŽ   Úintrs   ÚlistÚ_isoweek_to_gregorian)r«   r   Úhas_sepÚposÚweeknoÚdaynor)   r2   s           r   Ú_parse_isoformat_daterº   E  s‡  € õ ˆu‰:Œ:˜Ð#Ð#Ð#Ð#Ýˆu�Q�q�SŒz‰?Œ?€DØ�AŒh˜#Šo€Gà
ˆg‰+€CØˆS��q‘ˆ[Ô˜SÒ Ð àˆq‰ˆÝ�U˜3˜s Q™w˜;Ô'Ñ(Ô(ˆØˆq‰ˆàˆÝˆu‰:Œ:˜ÒÐØ�c˜# ™'�kÔ" cÒ)¨gÒ5Ð5Ý Ð!EÑFÔFÐFà�7‰NˆCå˜˜c #¨¡'˜kÔ*Ñ+Ô+ˆEåÕ)¨$°¸Ñ>Ô>Ñ?Ô?Ð?å�E˜#˜c A™g˜+Ô&Ñ'Ô'ˆØˆq‰ˆØ�#�c˜A‘g�+Ô #Ò%¨'Ò1Ð1ÝÐAÑBÔBÐBàˆw‰ˆÝ�%˜˜C !™G˜Ô$Ñ%Ô%ˆà�e˜SÐ!Ð!r   )i † i'  rp   r   rª   c                 ó¼  — t          | ¦  «        }g d¢}d}t          dd¦  «        D ]~}||z
  dk     rt          d¦  «        ‚t          | ||dz   …         ¦  «        ||<   |dz  }| ||dz   …         }|dk    r|dk    }|r|dk    r n |r|dk    rt          d|z  ¦  «        ‚||z  }Œ||k     r±| |         d	vrt          d
¦  «        ‚|dz  }||z
  }|dk    rd}n|}t          | |||z   …         ¦  «        |d<   |dk     r|dxx         t          |dz
           z  cc<   ||k    r<t          t          t          | ||z   d …         ¦  «        ¦  «        st          d¦  «        ‚|S )N)r   r   r   r   r   r9   r%   zIncomplete time componentr   ú:zInvalid time separator: %cz.,zInvalid microsecond componentr\   z%Non-digit values in unparsed fraction)rŽ   Úrangers   r³   Ú_FRACTION_CORRECTIONÚallÚmapr¥   )	ÚtstrÚlen_strÚ
time_compsr·   ÚcompÚ	next_charr¶   Úlen_remainderÚto_parses	            r   Ú_parse_hh_mm_ss_ffrÈ   l  sÁ  € å�$‰iŒi€Gà��€JØ
€CÝ�a˜‘”ð ð ˆØ�c‰M˜QÒÐÝÐ8Ñ9Ô9Ð9å˜t C¨¨A© IœÑ/Ô/ˆ
�4Ñàˆq‰ˆØ˜˜S ™U˜”Oˆ	à�1Š9ˆ9Ø 3Ò&ˆGàð 	˜D AšI˜IØˆEàð 	G�y CÒ'Ð'ÝÐ9¸IÑEÑFÔFÐFàˆw‰ˆˆà
ˆW‚}€}Ø�Œ9˜DÐ Ð ÝÐ<Ñ=Ô=Ð=à�1‰HˆCà# c™MˆMà Ò!Ð!Ø��à(�å  S¨#¨h©,Ð%7Ô 8Ñ9Ô9ˆJ�q‰MØ˜!Š|ˆ|Ø˜1��”Õ!5°h¸q±jÔ!AÑA��‘Ø Ò(Ð(Ý¥¥O°T¸3¸x¹<¸/¸/Ô5JÑ KÔ KÑLÔLð )å Ð!HÑIÔIÐIàÐr   c                 óü  — t          | ¦  «        }|dk     rt          d¦  «        ‚|                      d¦  «        dz   p/|                      d¦  «        dz   p|                      d¦  «        dz   }|dk    r| d |dz
  …         n| }t          |¦  «        }d }||k    r| d         dk    rt          j        }nµ|dk    r¯| |d …         }t          |¦  «        d	v rt          d
¦  «        ‚t          |¦  «        }t          d„ |D ¦   «         ¦  «        rt          j        }nP| |dz
           dk    rdnd}t          |d         |d         |d         |d         ¬¦  «        }	t	          ||	z  ¦  «        }|                     |¦  «         |S )Nr%   zIsoformat time too shortr{   r   r|   r‹   r   r   )r   r   r9   zMalformed time zone stringc              3   ó"   K  — | ]
}|d k    V — ŒdS )r   Nr   )Ú.0r   s     r   ú	<genexpr>z(_parse_isoformat_time.<locals>.<genexpr>¼  s&   è è € Ð(Ð(˜!ˆq�AŠvÐ(Ð(Ð(Ð(Ð(Ð(r   r9   ©rk   rl   rm   ro   )	rŽ   rs   ÚfindrÈ   r   Úutcr¿   r   r�   )
rÁ   rÂ   Útz_posÚtimestrrÃ   ÚtziÚtzstrÚtz_compsÚtzsignÚtds
             r   Ú_parse_isoformat_timer×   œ  s˜  € å�$‰iŒi€GØ�‚{€{ÝÐ3Ñ4Ô4Ð4ð �iŠi˜‰nŒn˜qÑ ÐL D§I¢I¨c¡N¤N°QÑ$6ÐL¸$¿)º)ÀC¹.¼.È1Ñ:L€FØ!'¨!¢ ˆd�9�F˜1‘H�9Œoˆo°€Gå# GÑ,Ô,€Jà
€CØ�ÒÐ˜T "œX¨š_˜_ÝŒlˆˆØ	�!ŠˆØ�V�W�W”ˆõ ˆu‰:Œ:˜Ð"Ð"ÝÐ9Ñ:Ô:Ð:å% eÑ,Ô,ˆåÐ(Ð(˜xÐ(Ñ(Ô(Ñ(Ô(ð 	(Ý”,ˆCˆCà ¨¡
Ô+¨sÒ2Ð2�R�R¸ˆFå ¨!¤°h¸q´kØ#+¨A¤;¸XÀa¼[ðJñ Jô JˆBõ ˜6 B™;Ñ'Ô'ˆCà×Ò�cÑÔÐàÐr   c                 ó¶  — t           | cxk    rt          k    sn t          d| › �¦  «        ‚d|cxk     rdk     sOn d}|dk    r1t          | dd¦  «        dz  }|dk    s|dk    rt	          | ¦  «        rd	}|rt          d
|› �¦  «        ‚d|cxk     rdk     sn t          d|› d�¦  «        ‚|dz
  dz  |dz
  z   }t          | ¦  «        }||z   }t          |¦  «        S )NzYear is out of range: r   é5   Tr   r]   r   r9   FzInvalid week: r¨   zInvalid weekday: z (range is [1, 7]))r   r	   rs   r4   r   Ú_isoweek1mondayrG   )r   Úweekr2   Úout_of_rangeÚfirst_weekdayÚ
day_offsetÚday_1Úord_days           r   rµ   rµ   Ë  s,  € å�dÐ%Ð%Ò%Ð%�gÒ%Ð%Ð%Ð%ÝÐ8°$Ð8Ð8Ñ9Ô9Ð9àˆtˆ=ˆ=Š=ˆ=�bŠ=ˆ=ˆ=ˆ=Øˆà�2Š:ˆ:õ % T¨1¨aÑ0Ô0°1Ñ4ˆMØ Ò"Ð" }¸Ò'9Ð'9Ý'/°¡~¤~ð (:à$�àð 	6ÝÐ4¨dÐ4Ð4Ñ5Ô5Ð5àˆsˆ;ˆ;Š;ˆ;�QŠ;ˆ;ˆ;ˆ;ÝÐD¨SÐDÐDÐDÑEÔEÐEð ˜‘(˜a‘ 3¨¡7Ñ+€Jõ ˜DÑ!Ô!€EØ�jÑ €Gå�GÑÔÐr   c                 óv   — | �4t          | t          ¦  «        s!t          dt          | ¦  «        z  ¦  «        ‚d S d S )Nz4tzinfo.tzname() must return None or string, not '%s')Ú
isinstanceÚstrÚ	TypeErrorÚtype)Únames    r   Ú_check_tznamerç   ì  sJ   € ØÐ¥
¨4µÑ 5Ô 5ÐÝð #Ý%)¨$¡Z¤Zñ0ñ 1ô 1ð 	1ð ÐÐÐr   c                 ó  — | dv sJ ‚|€d S t          |t          ¦  «        s#t          d| ›dt          |¦  «        ›d�¦  «        ‚t          d¦  «         |cxk     rt          d¦  «        k     sn t	          | ›d|›d�¦  «        ‚d S )N)rŠ   Údstztzinfo.z'() must return None or timedelta, not 'ú'r   z()=zG, must be strictly between -timedelta(hours=24) and timedelta(hours=24))râ   r   rä   rå   rs   )ræ   r�   s     r   Ú_check_utc_offsetrë   ÷  sº   € ØÐ'Ð'Ð'Ð'Ð'Ø€~ØˆÝ�f�iÑ(Ô(ð IÝˆiØ48°D°D½$¸v¹,¼,¸,¸,ðHñ Iô Ið 	Iå�a‰LŒLˆ=˜6Ð0Ð0Ò0Ð0¥I¨a¡L¤LÒ0Ð0Ð0Ð0Ýà˜$˜$   ð(ñ )ô )ð 	)ð 1Ð0r   c                 óx  — t          | ¦  «        } t          |¦  «        }t          |¦  «        }t          | cxk    rt          k    s!n t          dt          t          fz  | ¦  «        ‚d|cxk    rdk    sn t          d|¦  «        ‚t	          | |¦  «        }d|cxk    r|k    sn t          d|z  |¦  «        ‚| ||fS )Nzyear must be in %d..%dr   r$   r,   r0   )Ú_indexr   r	   rs   r*   r1   s       r   Ú_check_date_fieldsrî     sÖ   € Ý�$‰<Œ<€DÝ�5‰MŒM€EÝ
�‰+Œ+€CÝ�dÐ%Ð%Ò%Ð%�gÒ%Ð%Ð%Ð%ÝÐ1µW½gÐ4FÑFÈÑMÔMÐMØ�ÐÐÒÐ˜ÒÐÐÐÝÐ1°5Ñ9Ô9Ð9Ý
˜˜uÑ
%Ô
%€CØ�ˆ?ˆ?Š?ˆ?�sŠ?ˆ?ˆ?ˆ?ÝÐ/°#Ñ5°sÑ;Ô;Ð;Ø�˜ÐÐr   c                 ó¨  — t          | ¦  «        } t          |¦  «        }t          |¦  «        }t          |¦  «        }d| cxk    rdk    sn t          d| ¦  «        ‚d|cxk    rdk    sn t          d|¦  «        ‚d|cxk    rdk    sn t          d|¦  «        ‚d|cxk    rdk    sn t          d|¦  «        ‚|d	vrt          d
|¦  «        ‚| ||||fS )Nr   é   zhour must be in 0..23é;   zminute must be in 0..59zsecond must be in 0..59é?B z microsecond must be in 0..999999)r   r   zfold must be either 0 or 1)rí   rs   )ÚhourÚminuteÚsecondrˆ   Úfolds        r   Ú_check_time_fieldsr÷     s  € Ý�$‰<Œ<€DÝ�F‰^Œ^€FÝ�F‰^Œ^€FÝ˜Ñ%Ô%€KØ�ˆ?ˆ?Š?ˆ?˜Š?ˆ?ˆ?ˆ?ÝÐ0°$Ñ7Ô7Ð7Ø�ÐÐÒÐ˜"ÒÐÐÐÝÐ2°FÑ;Ô;Ð;Ø�ÐÐÒÐ˜"ÒÐÐÐÝÐ2°FÑ;Ô;Ð;Ø�Ð%Ð%Ò%Ð%˜vÒ%Ð%Ð%Ð%ÝÐ;¸[ÑIÔIÐIØ�6ÐÐÝÐ5°tÑ<Ô<Ð<Ø�˜ ¨dÐ2Ð2r   c                 óV   — | �$t          | t          ¦  «        st          d¦  «        ‚d S d S )Nz4tzinfo argument must be None or of a tzinfo subclass)râ   r   rä   )Útzs    r   Ú_check_tzinfo_argrú   !  s/   € Ø	€~�j¨­VÑ4Ô4€~ÝÐNÑOÔOÐOð €~€~€~r   c                 óv   — t          dt          | ¦  «        j        ›dt          |¦  «        j        ›d�¦  «        ‚)Nzcan't compare 'z' to 'rê   )rä   rå   Ú__name__r   s     r   Ú	_cmperrorrý   %  s>   € Ý
ˆ)Ý˜‘G”GÔ$Ð$Ð$¥d¨1¡g¤gÔ&6Ð&6Ð&6ð8ñ 9ô 9ð 9r   c                 ó†   — t          | |¦  «        \  }}|dz  }|dk    r||k    n||k     }|s||k    r|dz  dk    r|dz  }|S )zšdivide a by b and round result to the nearest integer

    When the ratio is exactly half-way between two integers,
    the even integer is returned.
    r%   r   r   )r<   )ÚaÚbÚqÚrÚgreater_than_halfs        r   Ú_divide_and_roundr  )  sd   € õ �!�Q‰<Œ<�D€A€qð ˆ�F€AØ!" Q¢ ˜˜Aš˜¨A°ªEÐØð ˜A šF˜F q¨1¡u°¢z zØ	ˆQ‰ˆà€Hr   c                   ó  — e Zd ZdZdZ	 	 d"d„Zd„ Zd„ Zd„ Ze	d„ ¦   «         Z
e	d	„ ¦   «         Ze	d
„ ¦   «         Zd„ ZeZd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZeZd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d „ Z$d!S )#r   aÕ  Represent the difference between two datetime objects.

    Supported operators:

    - add, subtract timedelta
    - unary plus, minus, abs
    - compare to timedelta
    - multiply, divide by int

    In addition, datetime supports subtraction of two datetime objects
    returning a timedelta, and addition or subtraction of a datetime
    and a timedelta giving a datetime.

    Representation: (days, seconds, microseconds).  Why?  Because I
    felt like it.
    )Ú_daysÚ_secondsÚ_microsecondsÚ	_hashcoder   c                 óB  — dx}x}	}
||dz  z  }||dz  |dz  z   z  }||dz  z  }t          |t          ¦  «        rzt          j        |¦  «        \  }}t          j        |dz  ¦  «        \  }}|t	          |¦  «        k    sJ ‚t	          |¦  «        }	|t	          |¦  «        k    sJ ‚t	          |¦  «        }nd}|}t          |t          ¦  «        sJ ‚t          |¦  «        dk    sJ ‚t          |t          ¦  «        sJ ‚t          |	¦  «        d	k    sJ ‚t          |t          ¦  «        rVt          j        |¦  «        \  }}|t	          |¦  «        k    sJ ‚t	          |¦  «        }||z  }t          |¦  «        d
k    sJ ‚n|}t          |t          ¦  «        sJ ‚t          |¦  «        d
k    sJ ‚t          |t          ¦  «        sJ ‚t          |d	¦  «        \  }}||z  }|	t	          |¦  «        z  }	t          |	t          ¦  «        sJ ‚t          |	¦  «        dk    sJ ‚|dz  }t          |¦  «        dk     sJ ‚t          |t          ¦  «        rCt          ||z   ¦  «        }t          |d¦  «        \  }}t          |d	¦  «        \  }}||z  }|	|z  }	nQt	          |¦  «        }t          |d¦  «        \  }}t          |d	¦  «        \  }}||z  }|	|z  }	t          ||z   ¦  «        }t          |	t          ¦  «        sJ ‚t          |t          ¦  «        sJ ‚t          |	¦  «        dk    sJ ‚t          |¦  «        dk     sJ ‚t          |d¦  «        \  }}
|	|z  }	t          |	d	¦  «        \  }}	||z  }t          |t          ¦  «        sJ ‚t          |	t          ¦  «        rd|	cxk    rd	k     sn J ‚t          |
t          ¦  «        rd|
cxk    rdk     sn J ‚t          |¦  «        dk    rt          d|z  ¦  «        ‚t           
                    | ¦  «        }||_        |	|_        |
|_        d|_        |S )Nr   r]   é<   é  rp   g     õ@g        g      ð?é€Q g       @i £ ç    €„.Ag    �@Aé@B i€ô g    °¦GAéÿÉš;z$timedelta # of days is too large: %dr   )râ   ÚfloatÚ_mathÚmodfr³   Úabsr<   ÚroundÚOverflowErrorr”   Ú__new__r  r  r  r	  )Úclsr€   rm   ro   rn   rl   rk   Úweeksra   r‚   rt   ÚdayfracÚdaysecondsfracÚdaysecondswholeÚsecondsfracÚusdoubleÚselfs                    r   r  ztimedelta.__new__P  s‘  € ð ˆˆˆˆA�ð 	��a‘‰ˆØ�7˜2‘:  d¡
Ñ*Ñ*ˆØ˜ TÑ)Ñ)ˆõ �d�EÑ"Ô"ð 		Ý!œJ tÑ,Ô,‰MˆG�TÝ.3¬j¸ÀIÑ9NÑ.OÔ.OÑ+ˆN˜OØ"¥c¨/Ñ&:Ô&:Ò:Ð:Ð:Ð:Ý�OÑ$Ô$ˆAØ�3˜t™9œ9Ò$Ð$Ð$Ð$Ý�D‘	”	ˆAˆAà ˆNØˆAÝ˜.­%Ñ0Ô0Ð0Ð0Ð0Ý�>Ñ"Ô" cÒ)Ð)Ð)Ð)Ý˜!�SÑ!Ô!Ð!Ð!Ð!Ý�1‰vŒv˜Ò"Ð"Ð"Ð"õ �g�uÑ%Ô%ð 	)Ý#(¤:¨gÑ#6Ô#6Ñ ˆK˜Ø�c '™lœlÒ*Ð*Ð*Ð*Ý˜'‘l”lˆGØ˜>Ñ)ˆKÝ�{Ñ#Ô# sÒ*Ð*Ð*Ð*Ð*à(ˆKå˜+¥uÑ-Ô-Ð-Ð-Ð-Ý�;ÑÔ 3Ò&Ð&Ð&Ð&å˜'¥3Ñ'Ô'Ð'Ð'Ð'Ý˜w¨Ñ0Ô0‰ˆˆgØ	ˆT‰	ˆØ	�S�‰\Œ\ÑˆÝ˜!�SÑ!Ô!Ð!Ð!Ð!Ý�1‰vŒv˜Ò&Ð&Ð&Ð&ð  Ñ$ˆÝ�8‰}Œ}˜uÒ$Ð$Ð$Ð$õ �l¥EÑ*Ô*ð 	:Ý  °Ñ!8Ñ9Ô9ˆLÝ$*¨<¸Ñ$AÔ$AÑ!ˆG�\Ý" 7¨GÑ4Ô4‰MˆD�'Ø�‰IˆAØ�‰LˆAˆAå˜|Ñ,Ô,ˆLÝ$*¨<¸Ñ$AÔ$AÑ!ˆG�\Ý" 7¨GÑ4Ô4‰MˆD�'Ø�‰IˆAØ�‰LˆAÝ  °Ñ!8Ñ9Ô9ˆLÝ˜!�SÑ!Ô!Ð!Ð!Ð!Ý˜,­Ñ,Ô,Ð,Ð,Ð,Ý�1‰vŒv˜Ò&Ð&Ð&Ð&Ý�<Ñ Ô  5Ò(Ð(Ð(Ð(õ ˜\¨7Ñ3Ô3‰ˆ�Ø	ˆW‰ˆÝ˜˜GÑ$Ô$‰ˆˆaØ	ˆT‰	ˆå˜!�SÑ!Ô!Ð!Ð!Ð!Ý˜!�SÑ!Ô!Ð6 a¨1Ð&6Ð&6Ò&6Ð&6¨wÒ&6Ð&6Ð&6Ð&6Ð&6Ð6Ý˜"�cÑ"Ô"Ð8 q¨BÐ'8Ð'8Ò'8Ð'8°Ò'8Ð'8Ð'8Ð'8Ð'8Ð8åˆq‰6Œ6�IÒÐÝÐ FÈÑ JÑKÔKÐKå�~Š~˜cÑ"Ô"ˆØˆŒ
ØˆŒØˆÔØˆŒØˆr   c                 óp  — g }| j         r|                     d| j         z  ¦  «         | j        r|                     d| j        z  ¦  «         | j        r|                     d| j        z  ¦  «         |s|                     d¦  «         | j        j        ›d| j        j        ›dd                     |¦  «        ›d�S )	Nzdays=%dz
seconds=%dzmicroseconds=%dÚ0ú.ú(ú, ú))r  r�   r  r  Ú	__class__Ú
__module__Ú__qualname__r’   )r  Úargss     r   Ú__repr__ztimedelta.__repr__µ  sÅ   € ØˆØŒ:ð 	0Ø�KŠK˜	 D¤JÑ.Ñ/Ô/Ð/ØŒ=ð 	6Ø�KŠK˜ t¤}Ñ4Ñ5Ô5Ð5ØÔð 	@Ø�KŠKÐ)¨DÔ,>Ñ>Ñ?Ô?Ð?Øð 	Ø�KŠK˜ÑÔÐØ"œnÔ7Ð7Ð7Ø"œnÔ9Ð9Ð9Ø"Ÿiši¨™oœo˜o˜oð/ð 	/r   c                 óÔ   — t          | j        d¦  «        \  }}t          |d¦  «        \  }}d|||fz  }| j        rd„ }d || j        ¦  «        z  |z   }| j        r|d| j        z  z   }|S )Nr  z%d:%02d:%02dc                 ó4   — | t          | ¦  «        dk    rdpdfS )Nr   r‚   rz   )r  )r@   s    r   Úpluralz!timedelta.__str__.<locals>.pluralÈ  s!   € Ø�#˜a™&œ& Aš+Ð-¨#Ð3°Ð3Ð3r   z
%d day%s, r   )r<   r  r  r  )r  rc   rd   rb   r‚   r-  s         r   Ú__str__ztimedelta.__str__Ã  sŽ   € Ý˜œ rÑ*Ô*‰ˆˆBÝ˜˜B‘”‰ˆˆBØ˜b " b˜\Ñ)ˆØŒ:ð 	8ð4ð 4ð 4à   t¤zÑ 2Ô 2Ñ2°aÑ7ˆAØÔð 	1Ø�G˜dÔ0Ñ0Ñ0ˆAØˆr   c                 óB   — | j         dz  | j        z   dz  | j        z   dz  S )zTotal seconds in the duration.r  r  )r€   rm   ro   ©r  s    r   Útotal_secondsztimedelta.total_secondsÏ  s0   € à”˜UÑ" T¤\Ñ1°UÑ:ØÔ!ñ"Ø%*ñ+ð 	+r   c                 ó   — | j         S ©r€   ©r  r0  s    r   r€   ztimedelta.daysÕ  ó   € ð ŒzÐr   c                 ó   — | j         S ©rm   )r  r0  s    r   rm   ztimedelta.secondsÚ  s   € ð Œ}Ðr   c                 ó   — | j         S ©ro   )r  r0  s    r   ro   ztimedelta.microsecondsß  s   € ð Ô!Ð!r   c                 óª   — t          |t          ¦  «        r8t          | j        |j        z   | j        |j        z   | j        |j        z   ¦  «        S t
          S ©N©râ   r   r  r  r  ÚNotImplemented©r  Úothers     r   Ú__add__ztimedelta.__add__ä  óY   € Ý�e�YÑ'Ô'ð 	Gõ ˜TœZ¨%¬+Ñ5Ø!œ]¨U¬^Ñ;Ø!Ô/°%Ô2EÑEñGô Gð Gõ Ðr   c                 óª   — t          |t          ¦  «        r8t          | j        |j        z
  | j        |j        z
  | j        |j        z
  ¦  «        S t
          S r;  r<  r>  s     r   Ú__sub__ztimedelta.__sub__ï  rA  r   c                 óF   — t          |t          ¦  «        r|  |z   S t          S r;  )râ   r   r=  r>  s     r   Ú__rsub__ztimedelta.__rsub__ø  s&   € Ý�e�YÑ'Ô'ð 	!Ø�5˜5‘=Ð ÝÐr   c                 óH   — t          | j         | j         | j         ¦  «        S r;  )r   r  r  r  r0  s    r   Ú__neg__ztimedelta.__neg__ý  s,   € õ ˜$œ*˜Øœ-˜ØÔ,Ð,ñ.ô .ð 	.r   c                 ó   — | S r;  r   r0  s    r   Ú__pos__ztimedelta.__pos__  s   € Øˆr   c                 ó"   — | j         dk     r|  S | S ©Nr   r4  r0  s    r   Ú__abs__ztimedelta.__abs__  s   € ØŒ:˜Š>ˆ>Ø�5ˆLàˆKr   c                 óP  — t          |t          ¦  «        r)t          | j        |z  | j        |z  | j        |z  ¦  «        S t          |t          ¦  «        rM|                      ¦   «         }|                     ¦   «         \  }}t          ddt          ||z  |¦  «        ¦  «        S t          S rK  )râ   r³   r   r  r  r  r  Ú_to_microsecondsÚas_integer_ratior  r=  ©r  r?  Úusecrÿ   r   s        r   Ú__mul__ztimedelta.__mul__  s¨   € Ý�e�SÑ!Ô!ð 	9õ ˜TœZ¨%Ñ/Ø!œ]¨UÑ2Ø!Ô/°%Ñ7ñ9ô 9ð 9õ �e�UÑ#Ô#ð 	CØ×(Ò(Ñ*Ô*ˆDØ×)Ò)Ñ+Ô+‰DˆAˆqÝ˜Q Õ#4°T¸A±X¸qÑ#AÔ#AÑBÔBÐBÝÐr   c                 ó<   — | j         dz  | j        z   dz  | j        z   S )Nr  r  ©r  r  r  r0  s    r   rN  ztimedelta._to_microseconds  s(   € Ø”˜wÑ'¨$¬-Ñ7¸7ÑBØÔ"ñ#ð 	$r   c                 ó  — t          |t          t          f¦  «        st          S |                      ¦   «         }t          |t          ¦  «        r||                     ¦   «         z  S t          |t          ¦  «        rt          dd||z  ¦  «        S d S rK  )râ   r³   r   r=  rN  )r  r?  rQ  s      r   Ú__floordiv__ztimedelta.__floordiv__   s‹   € Ý˜%¥#¥yÐ!1Ñ2Ô2ð 	"Ý!Ð!Ø×$Ò$Ñ&Ô&ˆÝ�e�YÑ'Ô'ð 	4Ø˜5×1Ò1Ñ3Ô3Ñ3Ð3Ý�e�SÑ!Ô!ð 	2Ý˜Q  4¨5¡=Ñ1Ô1Ð1ð	2ð 	2r   c                 óÜ  — t          |t          t          t          f¦  «        st          S |                      ¦   «         }t          |t          ¦  «        r||                     ¦   «         z  S t          |t          ¦  «        rt          ddt          ||¦  «        ¦  «        S t          |t          ¦  «        r9|                     ¦   «         \  }}t          ddt          ||z  |¦  «        ¦  «        S d S rK  )râ   r³   r  r   r=  rN  r  rO  rP  s        r   Ú__truediv__ztimedelta.__truediv__)  sà   € Ý˜%¥#¥u­iÐ!8Ñ9Ô9ð 	"Ý!Ð!Ø×$Ò$Ñ&Ô&ˆÝ�e�YÑ'Ô'ð 	3Ø˜%×0Ò0Ñ2Ô2Ñ2Ð2Ý�e�SÑ!Ô!ð 	CÝ˜Q Õ#4°T¸5Ñ#AÔ#AÑBÔBÐBÝ�e�UÑ#Ô#ð 	CØ×)Ò)Ñ+Ô+‰DˆAˆqÝ˜Q Õ#4°Q¸±X¸qÑ#AÔ#AÑBÔBÐBð	Cð 	Cr   c                 ó®   — t          |t          ¦  «        r:|                      ¦   «         |                     ¦   «         z  }t          dd|¦  «        S t          S rK  )râ   r   rN  r=  )r  r?  r  s      r   Ú__mod__ztimedelta.__mod__5  sN   € Ý�e�YÑ'Ô'ð 	&Ø×%Ò%Ñ'Ô'¨%×*@Ò*@Ñ*BÔ*BÑBˆAÝ˜Q  1Ñ%Ô%Ð%ÝÐr   c                 óÎ   — t          |t          ¦  «        rJt          |                      ¦   «         |                     ¦   «         ¦  «        \  }}|t          dd|¦  «        fS t          S rK  )râ   r   r<   rN  r=  )r  r?  r  r  s       r   Ú
__divmod__ztimedelta.__divmod__;  sa   € Ý�e�YÑ'Ô'ð 	)Ý˜$×/Ò/Ñ1Ô1Ø×0Ò0Ñ2Ô2ñ4ô 4‰DˆAˆqà•i  1 aÑ(Ô(Ð(Ð(ÝÐr   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  ©râ   r   r   r=  r>  s     r   Ú__eq__ztimedelta.__eq__D  ó1   € Ý�e�YÑ'Ô'ð 	"Ø—9’9˜UÑ#Ô# qÒ(Ð(å!Ð!r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r^  r>  s     r   Ú__le__ztimedelta.__le__J  r`  r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk     S t          S rK  r^  r>  s     r   Ú__lt__ztimedelta.__lt__P  ó1   € Ý�e�YÑ'Ô'ð 	"Ø—9’9˜UÑ#Ô# aÒ'Ð'å!Ð!r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r^  r>  s     r   Ú__ge__ztimedelta.__ge__V  r`  r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r^  r>  s     r   Ú__gt__ztimedelta.__gt__\  re  r   c                 ó˜   — t          |t          ¦  «        sJ ‚t          |                      ¦   «         |                     ¦   «         ¦  «        S r;  )râ   r   r   Ú	_getstater>  s     r   r   ztimedelta._cmpb  s<   € Ý˜%¥Ñ+Ô+Ð+Ð+Ð+Ý�D—N’NÑ$Ô$ e§o¢oÑ&7Ô&7Ñ8Ô8Ð8r   c                 ór   — | j         dk    r&t          |                      ¦   «         ¦  «        | _         | j         S )Nr   ©r	  Úhashrk  r0  s    r   Ú__hash__ztimedelta.__hash__f  s0   € ØŒ>˜RÒÐÝ! $§.¢.Ñ"2Ô"2Ñ3Ô3ˆDŒNØŒ~Ðr   c                 óD   — | j         dk    p| j        dk    p
| j        dk    S rK  rT  r0  s    r   Ú__bool__ztimedelta.__bool__k  s/   € Ø”
˜a’ð (Ø” Ò"ð(àÔ" aÒ'ð	)r   c                 ó*   — | j         | j        | j        fS r;  rT  r0  s    r   rk  ztimedelta._getstater  s   € Ø”
˜DœM¨4Ô+=Ð>Ð>r   c                 ó8   — | j         |                      ¦   «         fS r;  ©r&  rk  r0  s    r   Ú
__reduce__ztimedelta.__reduce__u  ó   € Ø” §¢Ñ 0Ô 0Ð1Ð1r   N)r   r   r   r   r   r   r   )%rü   r'  r(  Ú__doc__Ú	__slots__r  r*  r.  r1  Úpropertyr€   rm   ro   r@  Ú__radd__rC  rE  rG  rI  rL  rR  Ú__rmul__rN  rV  rX  rZ  r\  r_  rb  rd  rg  ri  r   ro  rq  rk  ru  r   r   r   r   r   =  s  € € € € € ðð ð  B€Ià56Ø:;ðcð cð cð cðJ/ð /ð /ð
ð 
ð 
ð+ð +ð +ð ðð ñ „Xðð ðð ñ „Xðð ð"ð "ñ „Xð"ðð ð ð €Hðð ð ðð ð ð
.ð .ð .ðð ð ðð ð ðð ð ð €Hð$ð $ð $ð2ð 2ð 2ð
Cð 
Cð 
Cðð ð ðð ð ð"ð "ð "ð"ð "ð "ð"ð "ð "ð"ð "ð "ð"ð "ð "ð9ð 9ð 9ðð ð ð
)ð )ð )ð?ð ?ð ?ð2ð 2ð 2ð 2ð 2r   r   i6eÄr  rð   rñ   rò   )r€   rk   rl   rm   ro   r9  c                   ób  — e Zd ZdZdZd$d„Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Z	ed„ ¦   «         Z
ed	„ ¦   «         Zd
„ Zd„ Zd„ Zd„ Zd„ ZeZed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zd„ Zd„ Zd%d„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z e Z!d„ Z"d„ Z#d„ Z$d „ Z%d!„ Z&d"„ Z'd#„ Z(dS )&r   aÀ  Concrete date type.

    Constructors:

    __new__()
    fromtimestamp()
    today()
    fromordinal()

    Operators:

    __repr__, __str__
    __eq__, __le__, __lt__, __ge__, __gt__, __hash__
    __add__, __radd__, __sub__ (add/radd only with timedelta arg)

    Methods:

    timetuple()
    toordinal()
    weekday()
    isoweekday(), isocalendar(), isoformat()
    ctime()
    strftime()

    Properties (readonly):
    year, month, day
    )Ú_yearÚ_monthÚ_dayr	  Nc                 óJ  — |€Õt          |t          t          f¦  «        r¹t          |¦  «        dk    r¦dt	          |dd…         ¦  «        cxk    rdk    r„n n�t          |t          ¦  «        r4	 |                     d¦  «        }n# t          $ r t          d¦  «        ‚w xY wt           	                    | ¦  «        }| 
                    |¦  «         d	|_        |S t          |||¦  «        \  }}}t           	                    | ¦  «        }||_        ||_        ||_        d	|_        |S )
zVConstructor.

        Arguments:

        year, month, day (required, base 1)
        Nr   r   r%   r9   r$   Úlatin1znFailed to encode latin1 string when unpickling a date object. pickle.load(data, encoding='latin1') is assumed.r   )râ   Úbytesrã   rŽ   ÚordÚencodeÚUnicodeEncodeErrorrs   r”   r  Ú_date__setstater	  rî   r}  r~  r  )r  r   r)   r2   r  s        r   r  zdate.__new__›  s?  € ð ˆMÝ�t�e¥S˜\Ñ*Ô*ð Ý/2°4©y¬y¸Aª~¨~Ø•�T˜!˜A˜#”Y‘”Ð%Ð%Ò%Ð% 2Ò%Ð%Ð%Ð%Ð%å˜$¥Ñ$Ô$ð LðLØŸ;š; xÑ0Ô0�D�DøÝ)ð Lð Lð Lå$ðKñLô Lð LðLøøøõ —>’> #Ñ&Ô&ˆDØ�OŠO˜DÑ!Ô!Ð!ØˆDŒNØˆKÝ-¨d°E¸3Ñ?Ô?Ñˆˆe�SÝ�~Š~˜cÑ"Ô"ˆØˆŒ
ØˆŒØˆŒ	ØˆŒØˆs   Á-B ÂBc           	      óX   — t          j        |¦  «        \	  }}}}}}}}	}
 | |||¦  «        S )z;Construct a date from a POSIX timestamp (like time.time()).)r^   Ú	localtime)r  Útr   r`   ra   rb   rc   rd   ÚweekdayÚjdayré   s              r   Úfromtimestampzdate.fromtimestamp½  s8   € õ 38´/À!Ñ2DÔ2DÑ/ˆˆ1ˆa��R˜˜W d¨CØˆs�1�a˜‰|Œ|Ðr   c                 óR   — t          j        ¦   «         }|                      |¦  «        S )z"Construct a date from time.time().©r^   r   rŒ  ©r  r‰  s     r   Útodayz
date.todayÃ  s#   € õ ŒJ‰LŒLˆØ× Ò  Ñ#Ô#Ð#r   c                 óB   — t          |¦  «        \  }}} | |||¦  «        S )z¦Construct a date from a proleptic Gregorian ordinal.

        January 1 of year 1 is day 1.  Only the year, month and day are
        non-zero in the result.
        )rG   )r  r@   r   r`   ra   s        r   Úfromordinalzdate.fromordinalÉ  s'   € õ ˜1‘+”+‰ˆˆ1ˆaØˆs�1�a˜‰|Œ|Ðr   c                 óö   — t          |t          ¦  «        st          d¦  «        ‚t          |¦  «        dvrt	          d|›�¦  «        ‚	  | t          |¦  «        Ž S # t          $ r t	          d|›�¦  «        ‚w xY w)z2Construct a date from a string in ISO 8601 format.ú#fromisoformat: argument must be strr²   úInvalid isoformat string: )râ   rã   rä   rŽ   rs   rº   Ú	Exception)r  Údate_strings     r   Úfromisoformatzdate.fromisoformatÓ  s¢   € õ ˜+¥sÑ+Ô+ð 	CÝÐAÑBÔBÐBåˆ{ÑÔ :Ð-Ð-ÝÐI¸+ÐIÐIÑJÔJÐJð	KØ�3Õ-¨kÑ:Ô:Ð;Ð;øÝð 	Kð 	Kð 	KÝÐI¸+ÐIÐIÑJÔJÐJð	Køøøs   Á	A ÁA8c                 ó*   —  | t          |||¦  «        Ž S )z|Construct a date from the ISO year, week number and weekday.

        This is the inverse of the date.isocalendar() function)rµ   )r  r   rÛ   r2   s       r   Úfromisocalendarzdate.fromisocalendará  s   € ð
 ˆsÕ)¨$°°cÑ:Ô:Ð;Ð;r   c                 ó\   — d| j         j        | j         j        | j        | j        | j        fz  S )zˆConvert to formal string, for repr().

        >>> d = date(2010, 1, 1)
        >>> repr(d)
        'datetime.date(2010, 1, 1)'
        z%s.%s(%d, %d, %d))r&  r'  r(  r}  r~  r  r0  s    r   r*  zdate.__repr__ê  s4   € ð # d¤nÔ&?Ø&*¤nÔ&AØ&*¤jØ&*¤kØ&*¤ið	&1ñ 1ð 	1r   c                 ó�   — |                       ¦   «         dz  pd}dt          |         t          | j                 | j        | j        fz  S )úReturn ctime() style string.r]   z%s %s %2d 00:00:00 %04d)Ú	toordinalÚ	_DAYNAMESÚ_MONTHNAMESr~  r  r}  ©r  rŠ  s     r   Úctimez
date.ctimeü  sH   € à—.’.Ñ"Ô" QÑ&Ð+¨!ˆØ(Ý�gÔÝ˜œÔ$ØŒI�t”zð,#ñ #ð 	#r   c                 óH   — t          | ||                      ¦   «         ¦  «        S )zQ
        Format using strftime().

        Example: "%d/%m/%Y, %H:%M:%S"
        )r¡   r•   ©r  rw   s     r   r“   zdate.strftime  s    € õ ˜d C¨¯ªÑ)9Ô)9Ñ:Ô:Ð:r   c                 óâ   — t          |t          ¦  «        s$t          dt          |¦  «        j        z  ¦  «        ‚t          |¦  «        dk    r|                      |¦  «        S t          | ¦  «        S ©Nzmust be str, not %sr   ©râ   rã   rä   rå   rü   rŽ   r“   r¤  s     r   Ú
__format__zdate.__format__  ó_   € Ý˜#�sÑ#Ô#ð 	HÝÐ1µD¸±I´IÔ4FÑFÑGÔGÐGÝˆs‰8Œ8�qŠ=ˆ=Ø—=’= Ñ%Ô%Ð%Ý�4‰yŒyÐr   c                 ó0   — d| j         | j        | j        fz  S )zÌReturn the date formatted according to ISO.

        This is 'YYYY-MM-DD'.

        References:
        - http://www.w3.org/TR/NOTE-datetime
        - http://www.cl.cam.ac.uk/~mgk25/iso-time.html
        z%04d-%02d-%02d)r}  r~  r  r0  s    r   Ú	isoformatzdate.isoformat  s   € ð   4¤:¨t¬{¸D¼IÐ"FÑFÐFr   c                 ó   — | j         S )zyear (1-9999))r}  r0  s    r   r   z	date.year!  r5  r   c                 ó   — | j         S )zmonth (1-12))r~  r0  s    r   r)   z
date.month&  s   € ð Œ{Ðr   c                 ó   — | j         S )z
day (1-31))r  r0  s    r   r2   zdate.day+  s   € ð ŒyÐr   c           	      óJ   — t          | j        | j        | j        dddd¦  «        S )ú9Return local time tuple compatible with time.localtime().r   r   )rh   r}  r~  r  r0  s    r   r•   zdate.timetuple3  s)   € å! $¤*¨d¬k¸4¼9Ø"# Q¨¨2ñ/ô /ð 	/r   c                 óB   — t          | j        | j        | j        ¦  «        S )z¶Return proleptic Gregorian ordinal for the year, month and day.

        January 1 of year 1 is day 1.  Only the year, month and day values
        contribute to the result.
        )r4   r}  r~  r  r0  s    r   rž  zdate.toordinal8  s   € õ ˜œ
 D¤K°´Ñ;Ô;Ð;r   c                 ól   — |€| j         }|€| j        }|€| j        } t          | ¦  «        |||¦  «        S )z;Return a new date with new values for the specified fields.)r}  r~  r  rå   )r  r   r)   r2   s       r   r‘   zdate.replace@  s@   € àˆ<Ø”:ˆDØˆ=Ø”KˆEØˆ;Ø”)ˆCØ�t�D‰zŒz˜$  sÑ+Ô+Ð+r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  ©râ   r   r   r=  r>  s     r   r_  zdate.__eq__L  ó1   € Ý�e�TÑ"Ô"ð 	)Ø—9’9˜UÑ#Ô# qÒ(Ð(ÝÐr   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r´  r>  s     r   rb  zdate.__le__Q  rµ  r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk     S t          S rK  r´  r>  s     r   rd  zdate.__lt__V  ó1   € Ý�e�TÑ"Ô"ð 	(Ø—9’9˜UÑ#Ô# aÒ'Ð'ÝÐr   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r´  r>  s     r   rg  zdate.__ge__[  rµ  r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r´  r>  s     r   ri  zdate.__gt__`  r¸  r   c                 ó°   — t          |t          ¦  «        sJ ‚| j        | j        | j        }}}|j        |j        |j        }}}t          |||f|||f¦  «        S r;  )râ   r   r}  r~  r  r   )r  r?  r   r`   ra   Úy2Úm2Úd2s           r   r   z	date._cmpe  sZ   € Ý˜%¥Ñ&Ô&Ð&Ð&Ð&Ø”*˜dœk¨4¬9ˆaˆ1ˆØ”[ %¤,°´
�ˆBˆÝ�Q˜˜1�I  B¨˜|Ñ,Ô,Ð,r   c                 ór   — | j         dk    r&t          |                      ¦   «         ¦  «        | _         | j         S )úHash.r   rm  r0  s    r   ro  zdate.__hash__k  s0   € àŒ>˜RÒÐÝ! $§.¢.Ñ"2Ô"2Ñ3Ô3ˆDŒNØŒ~Ðr   c                 óþ   — t          |t          ¦  «        rb|                      ¦   «         |j        z   }d|cxk     rt          k    r%n n"t          | ¦  «                             |¦  «        S t          d¦  «        ‚t          S )zAdd a date to a timedelta.r   úresult out of range)	râ   r   rž  r€   Ú_MAXORDINALrå   r’  r  r=  )r  r?  Úos      r   r@  zdate.__add__s  s{   € å�e�YÑ'Ô'ð 	7Ø—’Ñ Ô  5¤:Ñ-ˆAØ�1Ð#Ð#Ò#Ð#�Ò#Ð#Ð#Ð#Ð#Ý˜D‘z”z×-Ò-¨aÑ0Ô0Ð0ÝÐ 5Ñ6Ô6Ð6ÝÐr   c                 ó  — t          |t          ¦  «        r| t          |j         ¦  «        z   S t          |t          ¦  «        r:|                      ¦   «         }|                     ¦   «         }t          ||z
  ¦  «        S t
          S )z.Subtract two dates, or a date and a timedelta.)râ   r   r€   r   rž  r=  )r  r?  Údays1Údays2s       r   rC  zdate.__sub__~  ss   € å�e�YÑ'Ô'ð 	1Ø�) U¤Z KÑ0Ô0Ñ0Ð0Ý�e�TÑ"Ô"ð 	,Ø—N’NÑ$Ô$ˆEØ—O’OÑ%Ô%ˆEÝ˜U U™]Ñ+Ô+Ð+ÝÐr   c                 ó6   — |                       ¦   «         dz   dz  S )z:Return day of the week, where Monday == 0 ... Sunday == 6.r\   r]   ©rž  r0  s    r   rŠ  zdate.weekdayˆ  s   € à—’Ñ Ô  1Ñ$¨Ñ)Ð)r   c                 ó4   — |                       ¦   «         dz  pdS )z:Return day of the week, where Monday == 1 ... Sunday == 7.r]   rÉ  r0  s    r   Ú
isoweekdayzdate.isoweekdayŽ  s   € ð �~Š~ÑÔ !Ñ#Ð( qÐ(r   c                 óp  — | j         }t          |¦  «        }t          | j         | j        | j        ¦  «        }t          ||z
  d¦  «        \  }}|dk     r+|dz  }t          |¦  «        }t          ||z
  d¦  «        \  }}n#|dk    r|t          |dz   ¦  «        k    r|dz  }d}t          ||dz   |dz   ¦  «        S )a¦  Return a named tuple containing ISO year, week number, and weekday.

        The first ISO week of the year is the (Mon-Sun) week
        containing the year's first Thursday; everything else derives
        from that.

        The first week is 1; Monday is 1 ... Sunday is 7.

        ISO calendar algorithm taken from
        http://www.phys.uu.nl/~vgent/calendar/isocalendar.htm
        (used with permission)
        r]   r   r   é4   )r}  rÚ   r4   r~  r  r<   Ú_IsoCalendarDate)r  r   Úweek1mondayr�  rÛ   r2   s         r   Úisocalendarzdate.isocalendar“  sÈ   € ð ŒzˆÝ% dÑ+Ô+ˆÝ˜œ T¤[°$´)Ñ<Ô<ˆå˜5 ;Ñ.°Ñ2Ô2‰	ˆˆcØ�!Š8ˆ8Ø�A‰IˆDÝ)¨$Ñ/Ô/ˆKÝ˜u {Ñ2°AÑ6Ô6‰IˆD�#�#Ø�RŠZˆZØ�¨¨Q©Ñ/Ô/Ò/Ð/Ø˜‘	�Ø�Ý  d¨1¡f¨c°!©eÑ4Ô4Ð4r   c                 ón   — t          | j        d¦  «        \  }}t          ||| j        | j        g¦  «        fS ©Né   )r<   r}  r‚  r~  r  )r  ÚyhiÚylos      r   rk  zdate._getstate±  s5   € Ý˜$œ* cÑ*Ô*‰ˆˆSÝ�c˜3 ¤¨T¬YÐ7Ñ8Ô8Ð9Ð9r   c                 óB   — |\  }}| _         | _        |dz  |z   | _        d S rÒ  )r~  r  r}  )r  ÚstringrÔ  rÕ  s       r   Ú
__setstatezdate.__setstateµ  s'   € Ø+1Ñ(ˆˆS�$”+˜tœyØ˜3‘Y ‘_ˆŒ
ˆ
ˆ
r   c                 ó8   — | j         |                      ¦   «         fS r;  rt  r0  s    r   ru  zdate.__reduce__¹  rv  r   )NN)NNN))rü   r'  r(  rw  rx  r  ÚclassmethodrŒ  r�  r’  r˜  rš  r*  r¢  r“   r¨  r«  r.  ry  r   r)   r2   r•   rž  r‘   r_  rb  rd  rg  ri  r   ro  r@  rz  rC  rŠ  rË  rÐ  rk  r†  ru  r   r   r   r   r   }  s„  € € € € € ðð ð6 7€Iðð ð ð ðD ðð ñ „[ðð
 ð$ð $ñ „[ð$ð
 ðð ñ „[ðð ðKð Kñ „[ðKð ð<ð <ñ „[ð<ð1ð 1ð 1ð$#ð #ð #ð;ð ;ð ;ðð ð ð	Gð 	Gð 	Gð €Gð ðð ñ „Xðð ðð ñ „Xðð ðð ñ „Xðð/ð /ð /ð
<ð <ð <ð,ð ,ð ,ð ,ðð ð ð
ð ð ð
ð ð ð
ð ð ð
ð ð ð
-ð -ð -ðð ð ðð ð ð €Hðð ð ð*ð *ð *ð)ð )ð )ð
5ð 5ð 5ð<:ð :ð :ð%ð %ð %ð2ð 2ð 2ð 2ð 2r   r   r$   r   r3  c                   ó4   — e Zd ZdZdZd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	r   zAbstract base class for time zone info classes.

    Subclasses must override the tzname(), utcoffset() and dst() methods.
    r   c                 ó    — t          d¦  «        ‚)z%datetime -> string name of time zone.z&tzinfo subclass must override tzname()©ÚNotImplementedError©r  Údts     r   rŒ   ztzinfo.tznameÊ  s   € å!Ð"JÑKÔKÐKr   c                 ó    — t          d¦  «        ‚)zIdatetime -> timedelta, positive for east of UTC, negative for west of UTCz)tzinfo subclass must override utcoffset()rÝ  rß  s     r   rŠ   ztzinfo.utcoffsetÎ  s   € å!Ð"MÑNÔNÐNr   c                 ó    — t          d¦  «        ‚)z¡datetime -> DST offset as timedelta, positive for east of UTC.

        Return 0 if DST not in effect.  utcoffset() must include the DST
        offset.
        z#tzinfo subclass must override dst()rÝ  rß  s     r   ré   z
tzinfo.dstÒ  s   € õ "Ð"GÑHÔHÐHr   c                 óz  — t          |t          ¦  «        st          d¦  «        ‚|j        | urt	          d¦  «        ‚|                     ¦   «         }|€t	          d¦  «        ‚|                     ¦   «         }|€t	          d¦  «        ‚||z
  }|r*||z  }|                     ¦   «         }|€t	          d¦  «        ‚||z   S )z*datetime in UTC -> datetime in local time.z&fromutc() requires a datetime argumentzdt.tzinfo is not selfNz0fromutc() requires a non-None utcoffset() resultz*fromutc() requires a non-None dst() resultz;fromutc(): dt.dst gave inconsistent results; cannot convert)râ   r   rä   r   rs   rŠ   ré   )r  rà  ÚdtoffÚdtdstÚdeltas        r   Úfromutcztzinfo.fromutcÚ  sÛ   € õ ˜"�hÑ'Ô'ð 	FÝÐDÑEÔEÐEØŒ9˜DÐ Ð ÝÐ4Ñ5Ô5Ð5à—’‘”ˆØˆ=Ýð &ñ 'ô 'ð 'ð
 —’‘”ˆØˆ=ÝÐIÑJÔJÐJØ˜‘ˆØð 	<Ø�%‰KˆBØ—F’F‘H”HˆEØˆ}Ý ð ";ñ <ô <ð <à�E‰zÐr   c                 óz   — t          | dd ¦  «        }|r |¦   «         }nd}| j        ||                      ¦   «         fS )NÚ__getinitargs__r   )r�   r&  Ú__getstate__)r  Úgetinitargsr)  s      r   ru  ztzinfo.__reduce__÷  sI   € Ý˜dÐ$5°tÑ<Ô<ˆØð 	Ø�;‘=”=ˆDˆDàˆDØ”  d×&7Ò&7Ñ&9Ô&9Ð:Ð:r   N)
rü   r'  r(  rw  rx  rŒ   rŠ   ré   rç  ru  r   r   r   r   r   Ã  sy   € € € € € ðð ð €IðLð Lð LðOð Oð OðIð Ið Iðð ð ð:;ð ;ð ;ð ;ð ;r   r   c                   ól   ‡ — e Zd Zˆ fd„Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zd„ Zd„ Z	ˆ xZ
S )ÚIsoCalendarDatec                óN   •— t          ¦   «                              | |||f¦  «        S r;  )Úsuperr  )r  r   rÛ   rŠ  r&  s       €r   r  zIsoCalendarDate.__new__  s"   ø€ Ý‰wŒw�Š˜s T¨4°Ð$9Ñ:Ô:Ð:r   c                 ó   — | d         S rK  r   r0  s    r   r   zIsoCalendarDate.year  ó   € à�AŒwˆr   c                 ó   — | d         S )Nr   r   r0  s    r   rÛ   zIsoCalendarDate.week	  rñ  r   c                 ó   — | d         S ©Nr%   r   r0  s    r   rŠ  zIsoCalendarDate.weekday  rñ  r   c                 ó0   — t           t          | ¦  «        ffS r;  )Útupler0  s    r   ru  zIsoCalendarDate.__reduce__  s   € õ �˜d™œ�~Ð&Ð&r   c                 óV   — | j         j        › d| d         › d| d         › d| d         › d�S )Nz(year=r   z, week=r   z
, weekday=r%   r%  )r&  rü   r0  s    r   r*  zIsoCalendarDate.__repr__  s[   € Ø”>Ô*ð Gð GØ˜aœðGð GØ)-¨a¬ðGð GØ<@À¼GðGð Gð Gð 	Hr   )rü   r'  r(  r  ry  r   rÛ   rŠ  ru  r*  Ú__classcell__)r&  s   @r   rí  rí     s®   ø€ € € € € ð;ð ;ð ;ð ;ð ;ð ðð ñ „Xðð ðð ñ „Xðð ðð ñ „Xðð'ð 'ð 'ð
Hð Hð Hð Hð Hð Hð Hr   rí  c                   óL  — e Zd ZdZdZd&ddœd„Zed„ ¦   «         Zed„ ¦   «         Zed	„ ¦   «         Z	ed
„ ¦   «         Z
ed„ ¦   «         Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd'd„Zd„ Zd„ Zd„ Zd(d„ZeZed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	 	 d)ddœd „Zd*d"„Z d#„ Z!d$„ Z"d%„ Z#dS )+r   a<  Time with time zone.

    Constructors:

    __new__()

    Operators:

    __repr__, __str__
    __eq__, __le__, __lt__, __ge__, __gt__, __hash__

    Methods:

    strftime()
    isoformat()
    utcoffset()
    tzname()
    dst()

    Properties (readonly):
    hour, minute, second, microsecond, tzinfo, fold
    )Ú_hourÚ_minuteÚ_secondÚ_microsecondÚ_tzinfor	  Ú_foldr   N©rö   c                óŽ  — t          |t          t          f¦  «        rµt          |¦  «        dk    r¢t	          |dd…         ¦  «        dz  dk     r„t          |t          ¦  «        r4	 |                     d¦  «        }n# t          $ r t          d¦  «        ‚w xY wt           	                    | ¦  «        }| 
                    ||pd¦  «         d	|_        |S t          |||||¦  «        \  }}}}}t          |¦  «         t           	                    | ¦  «        }||_        ||_        ||_        ||_        ||_        d	|_        ||_        |S )
zÆConstructor.

        Arguments:

        hour, minute (required)
        second, microsecond (default to zero)
        tzinfo (default to None)
        fold (keyword only, default to zero)
        r\   r   r   é   r:   r�  znFailed to encode latin1 string when unpickling a time object. pickle.load(data, encoding='latin1') is assumed.Nr   )râ   r‚  rã   rŽ   rƒ  r„  r…  rs   r”   r  Ú_time__setstater	  r÷   rú   rú  rû  rü  rý  rþ  rÿ  )r  ró   rô   rõ   rˆ   r   rö   r  s           r   r  ztime.__new__8  s^  € õ �t�e¥S˜\Ñ*Ô*ð 	­s°4©y¬y¸Aª~¨~Ý��Q�q�S”	‰NŒN˜4Ñ "Ò$Ð$å˜$¥Ñ$Ô$ð LðLØŸ;š; xÑ0Ô0�D�DøÝ)ð Lð Lð Lå$ðKñLô Lð LðLøøøõ —>’> #Ñ&Ô&ˆDØ�OŠO˜D & .¨DÑ1Ô1Ð1ØˆDŒNØˆKÝ2DØ�&˜& +¨tñ35ô 35Ñ/ˆˆf�f˜k¨4å˜&Ñ!Ô!Ð!Ý�~Š~˜cÑ"Ô"ˆØˆŒ
ØˆŒØˆŒØ'ˆÔØˆŒØˆŒØˆŒ
Øˆs   Á$A: Á:Bc                 ó   — | j         S ©zhour (0-23)©rú  r0  s    r   ró   z	time.hour`  r5  r   c                 ó   — | j         S ©zminute (0-59)©rû  r0  s    r   rô   ztime.minutee  ó   € ð Œ|Ðr   c                 ó   — | j         S ©zsecond (0-59)©rü  r0  s    r   rõ   ztime.secondj  r
  r   c                 ó   — | j         S ©zmicrosecond (0-999999)©rý  r0  s    r   rˆ   ztime.microsecondo  ó   € ð Ô Ð r   c                 ó   — | j         S ©ztimezone info object©rþ  r0  s    r   r   ztime.tzinfot  r
  r   c                 ó   — | j         S r;  ©rÿ  r0  s    r   rö   z	time.foldy  ó
   € àŒzÐr   c                 óp   — t          |t          ¦  «        r|                      |d¬¦  «        dk    S t          S )NT©Úallow_mixedr   ©râ   r   r   r=  r>  s     r   r_  ztime.__eq__�  s5   € Ý�e�TÑ"Ô"ð 	"Ø—9’9˜U°�9Ñ5Ô5¸Ò:Ð:å!Ð!r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r  r>  s     r   rb  ztime.__le__‡  ó1   € Ý�e�TÑ"Ô"ð 	"Ø—9’9˜UÑ#Ô# qÒ(Ð(å!Ð!r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk     S t          S rK  r  r>  s     r   rd  ztime.__lt__�  ó1   € Ý�e�TÑ"Ô"ð 	"Ø—9’9˜UÑ#Ô# aÒ'Ð'å!Ð!r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r  r>  s     r   rg  ztime.__ge__“  r  r   c                 ól   — t          |t          ¦  «        r|                      |¦  «        dk    S t          S rK  r  r>  s     r   ri  ztime.__gt__™  r  r   Fc                 ó\  — t          |t          ¦  «        sJ ‚| j        }|j        }d x}}||u rd}n.|                      ¦   «         }|                     ¦   «         }||k    }|r@t	          | j        | j        | j        | j        f|j        |j        |j        |j        f¦  «        S |�|€|rdS t          d¦  «        ‚| j        dz  | j        z   |t          d¬¦  «        z  z
  }|j        dz  |j        z   |t          d¬¦  «        z  z
  }	t	          || j        | j        f|	|j        |j        f¦  «        S )NTr%   z$cannot compare naive and aware timesr  r   r~   )râ   r   rþ  rŠ   r   rú  rû  rü  rý  rä   r   )
r  r?  r  ÚmytzÚottzÚmyoffÚotoffÚbase_compareÚmyhhmmÚothhmms
             r   r   z	time._cmpŸ  sY  € Ý˜%¥Ñ&Ô&Ð&Ð&Ð&ØŒ|ˆØŒ}ˆØÐˆ�à�4ˆ<ˆ<ØˆLˆLà—N’NÑ$Ô$ˆEØ—O’OÑ%Ô%ˆEØ  Eš>ˆLàð 	.Ý˜œ T¤\°4´<ØÔ*ð,àœ e¤m°U´]ØÔ+ð-ñ.ô .ð .ð ˆ=˜E˜MØð HØ�qåÐ FÑGÔGÐGØ”˜b‘ 4¤<Ñ/°%½È1Ð9MÑ9MÔ9MÑ2MÑMˆØ”˜rÑ! E¤MÑ1°E½9ÈQÐ;OÑ;OÔ;OÑ4OÑOˆÝ�V˜Tœ\¨4Ô+<Ð=Ø˜Uœ]¨EÔ,>Ð?ñAô Að 	Ar   c                 óŠ  — | j         dk    �r1| j        r|                      d¬¦  «        }n| }|                     ¦   «         }|s-t	          |                     ¦   «         d         ¦  «        | _         nÎt          t          | j        | j	        ¬¦  «        |z
  t          d¬¦  «        ¦  «        \  }}|t          d¬¦  «        z  r
J d¦   «         ‚|t          d¬¦  «        z  }d|cxk    rd	k     r2n n/t	          t          ||| j        | j        ¦  «        ¦  «        | _         n"t	          ||| j        | j        f¦  «        | _         | j         S )
rÀ  r   r   r   ©rk   rl   r   r}   r~   zwhole minuter:   )r	  rö   r‘   rŠ   rn  rk  r<   r   ró   rô   r   rõ   rˆ   )r  r‰  Útzoffrž   r`   s        r   ro  ztime.__hash__»  s<  € àŒ>˜RÒÑØŒyð Ø—L’L a�LÑ(Ô(��à�Ø—K’K‘M”MˆEØð 
QÝ!% a§k¢k¡m¤m°AÔ&6Ñ!7Ô!7�”�å�i¨d¬iÀÄÐMÑMÔMÐPUÑUÝ'¨aÐ0Ñ0Ô0ñ2ô 2‘��1à�y°Ð3Ñ3Ô3Ñ3ÐCÐC°^ÑCÔCÐ3Ø•i¨Ð*Ñ*Ô*Ñ*�Ø˜�;�;’;�;˜B’;�;�;�;�;Ý%)­$¨q°!°T´[À$ÔBRÑ*SÔ*SÑ%TÔ%T�D”N�Nå%)¨1¨a°´¸dÔ>NÐ*OÑ%PÔ%P�D”NØŒ~Ðr   c                 óH   — |                       ¦   «         }t          |¦  «        S )z=Return formatted timezone offset (+xx:xx) or an empty string.)rŠ   r„   )r  r�   s     r   Ú_tzstrztime._tzstrÒ  s   € à�nŠnÑÔˆÝ˜cÑ"Ô"Ð"r   c                 óf  — | j         dk    rd| j        | j         fz  }n| j        dk    rd| j        z  }nd}d| j        j        | j        j        | j        | j        |fz  }| j        �(|dd…         dk    sJ ‚|dd…         d	| j        z  z   dz   }| j        r|dd…         dk    sJ ‚|dd…         d
z   }|S )ú%Convert to formal string, for repr().r   z, %d, %dz, %drz   z%s.%s(%d, %d%s)Nr   r%  ú, tzinfo=%rú	, fold=1))	rý  rü  r&  r'  r(  rú  rû  rþ  rÿ  ©r  r‚   s     r   r*  ztime.__repr__×  sâ   € àÔ Ò!Ð!Ø˜dœl¨DÔ,=Ð>Ñ>ˆAˆAØŒ\˜QÒÐØ˜œÑ%ˆAˆAàˆAØ ¤Ô 9Ø $¤Ô ;Ø $¤
¨D¬L¸!ð =ñ =ˆð Œ<Ð#Ø�R�S�S”6˜S’=�=�=�=Ø�#�2�#”˜¨¬Ñ5Ñ5¸Ñ;ˆAØŒ:ð 	%Ø�R�S�S”6˜S’=�=�=�=Ø�#�2�#”˜Ñ$ˆAØˆr   ri   c                 óŠ   — t          | j        | j        | j        | j        |¦  «        }|                      ¦   «         }|r||z  }|S )a‹  Return the time formatted according to ISO.

        The full format is 'HH:MM:SS.mmmmmm+zz:zz'. By default, the fractional
        part is omitted if self.microsecond == 0.

        The optional argument timespec specifies the number of additional
        terms of the time to include. Valid options are 'auto', 'hours',
        'minutes', 'seconds', 'milliseconds' and 'microseconds'.
        )rx   rú  rû  rü  rý  r.  )r  ru   r‚   rù   s       r   r«  ztime.isoformatê  sJ   € õ ˜œ T¤\°4´<ØÔ+¨Xñ7ô 7ˆà�[Š[‰]Œ]ˆØð 	Ø�‰GˆAØˆr   c                 óÚ   — t          |t          ¦  «        st          d¦  «        ‚|                     d¦  «        }	  | t	          |¦  «        Ž S # t
          $ r t          d|›�¦  «        ‚w xY w)z>Construct a time from a string in one of the ISO 8601 formats.r”  ÚTr•  )râ   rã   rä   Úremoveprefixr×   r–  rs   )r  Útime_strings     r   r˜  ztime.fromisoformatý  s�   € õ ˜+¥sÑ+Ô+ð 	CÝÐAÑBÔBÐBð
 "×.Ò.¨sÑ3Ô3ˆð	KØ�3Õ-¨kÑ:Ô:Ð;Ð;øÝð 	Kð 	Kð 	KÝÐI¸+ÐIÐIÑJÔJÐJð	Køøøs   »A ÁA*c           	      óX   — ddd| j         | j        | j        dddf	}t          | ||¦  «        S )z{Format using strftime().  The date part of the timestamp passed
        to underlying strftime should not be used.
        il  r   r   r   )rú  rû  rü  r¡   )r  rw   r•   s      r   r“   ztime.strftime  s:   € ð ˜1˜aØ”Z ¤¨t¬|Ø˜˜2ðˆ	õ ˜d C¨Ñ3Ô3Ð3r   c                 óâ   — t          |t          ¦  «        s$t          dt          |¦  «        j        z  ¦  «        ‚t          |¦  «        dk    r|                      |¦  «        S t          | ¦  «        S r¦  r§  r¤  s     r   r¨  ztime.__format__  r©  r   c                 ól   — | j         €dS | j                              d¦  «        }t          d|¦  «         |S )z^Return the timezone offset as timedelta, positive east of UTC
         (negative west of UTC).NrŠ   ©rþ  rŠ   rë   ©r  r�   s     r   rŠ   ztime.utcoffset"  ó;   € ð Œ<ÐØ�4Ø”×'Ò'¨Ñ-Ô-ˆÝ˜+ vÑ.Ô.Ð.Øˆr   c                 ój   — | j         €dS | j                              d¦  «        }t          |¦  «         |S ©a  Return the timezone name.

        Note that the name is 100% informational -- there's no requirement that
        it mean anything in particular. For example, "GMT", "UTC", "-500",
        "-5:00", "EDT", "US/Eastern", "America/New York" are all valid replies.
        N©rþ  rŒ   rç   ©r  ræ   s     r   rŒ   ztime.tzname+  ó9   € ð Œ<ÐØ�4ØŒ|×"Ò" 4Ñ(Ô(ˆÝ�dÑÔÐØˆr   c                 ól   — | j         €dS | j                              d¦  «        }t          d|¦  «         |S ©aq  Return 0 if DST is not in effect, or the DST offset (as timedelta
        positive eastward) if DST is in effect.

        This is purely informational; the DST offset has already been added to
        the UTC offset returned by utcoffset() if applicable, so there's no
        need to consult dst() unless you're interested in displaying the DST
        info.
        Nré   ©rþ  ré   rë   r=  s     r   ré   ztime.dst8  ó;   € ð Œ<ÐØ�4Ø”×!Ò! $Ñ'Ô'ˆÝ˜% Ñ(Ô(Ð(Øˆr   Tc                ó®   — |€| j         }|€| j        }|€| j        }|€| j        }|du r| j        }|€| j        } t          | ¦  «        ||||||¬¦  «        S )z;Return a new time with new values for the specified fields.NTr   )ró   rô   rõ   rˆ   r   rÿ  rå   )r  ró   rô   rõ   rˆ   r   rö   s          r   r‘   ztime.replaceG  su   € ð ˆ<Ø”9ˆDØˆ>Ø”[ˆFØˆ>Ø”[ˆFØÐØÔ*ˆKØ�Tˆ>ˆ>Ø”[ˆFØˆ<Ø”:ˆDØ�t�D‰zŒz˜$ ¨°¸VÈ$ÐOÑOÔOÐOr   r9   c                 óî   — t          | j        d¦  «        \  }}t          |d¦  «        \  }}| j        }| j        r|dk    r|dz  }t	          || j        | j        |||g¦  «        }| j        €|fS || j        fS ©NrÓ  r9   é€   )r<   rý  rú  rÿ  r‚  rû  rü  rþ  )r  ÚprotocolÚus2Úus3Úus1rž   Ú	basestates          r   rk  ztime._getstateZ  s�   € Ý˜$Ô+¨SÑ1Ô1‰ˆˆSÝ˜#˜sÑ#Ô#‰ˆˆSØŒJˆØŒ:ð 	˜( Qš,˜,Ø�‰HˆAÝ˜1˜dœl¨D¬LØ  Sð*ñ +ô +ˆ	àŒ<ÐØ�<Ðà˜tœ|Ð,Ð,r   c                 óø   — |�$t          |t          ¦  «        st          d¦  «        ‚|\  }| _        | _        }}}|dk    rd| _        |dz
  | _        nd| _        || _        |dz  |z  dz  |z  | _        || _        d S )Núbad tzinfo state argr  r   rK  r   r¨   )	râ   Ú_tzinfo_classrä   rû  rü  rÿ  rú  rý  rþ  )r  r×  r   rž   rO  rM  rN  s          r   rØ  ztime.__setstateg  s�   € ØÐ¥j°½Ñ&GÔ&GÐÝÐ2Ñ3Ô3Ð3Ø7=Ñ4ˆˆ4Œ<˜œ s¨C°ØˆsŠ7ˆ7ØˆDŒJØ˜S™ˆDŒJˆJàˆDŒJØˆDŒJØ" a™x¨3Ñ.°1Ñ4¸Ñ;ˆÔØˆŒˆˆr   c                 ó:   — | j         |                      |¦  «        fS r;  rt  ©r  rL  s     r   Ú__reduce_ex__ztime.__reduce_ex__t  ó   € Ø” §¢¨xÑ 8Ô 8Ð9Ð9r   c                 ó,   — |                       d¦  «        S rô  ©rV  r0  s    r   ru  ztime.__reduce__w  ó   € Ø×!Ò! !Ñ$Ô$Ð$r   ©r   r   r   r   N©F©ri   )NNNNT©r9   )$rü   r'  r(  rw  rx  r  ry  ró   rô   rõ   rˆ   r   rö   r_  rb  rd  rg  ri  r   ro  r.  r*  r«  r.  rÚ  r˜  r“   r¨  rŠ   rŒ   ré   r‘   rk  r  rV  ru  r   r   r   r   r     sn  € € € € € ðð ð, _€Ið%ÐUVð %ð %ð %ð %ð %ðP ðð ñ „Xðð ðð ñ „Xðð ðð ñ „Xðð ð!ð !ñ „Xð!ð ðð ñ „Xðð ðð ñ „Xðð"ð "ð "ð"ð "ð "ð"ð "ð "ð"ð "ð "ð"ð "ð "ðAð Að Að Að8ð ð ð.#ð #ð #ð
ð ð ð&ð ð ð ð" €GàðKð Kñ „[ðKð 	4ð 	4ð 	4ðð ð ðð ð ðð ð ðð ð ð HLØðPØ%)ðPð Pð Pð Pð Pð&-ð -ð -ð -ðð ð ð:ð :ð :ð%ð %ð %ð %ð %r   r   c                   óH  — e Zd ZdZej        ej        z   Z	 	 d7ddœd„Zed„ ¦   «         Z	ed„ ¦   «         Z
ed„ ¦   «         Zed	„ ¦   «         Zed
„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed8d„¦   «         Zed„ ¦   «         Zed8d„¦   «         Zed„ ¦   «         Zed9d„¦   «         Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	 	 d:ddœd„Zd„ Zd8d„Zd„ Zd;d!„Z d"„ Z!d#„ Z"ed$„ ¦   «         Z#d%„ Z$d&„ Z%d'„ Z&d(„ Z'd)„ Z(d*„ Z)d+„ Z*d,„ Z+d<d.„Z,d/„ Z-e-Z.d0„ Z/d1„ Z0d=d3„Z1d4„ Z2d5„ Z3d6„ Z4dS )>r   zêdatetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])

    The year, month and day arguments are required. tzinfo may be None, or an
    instance of a tzinfo subclass. The remaining arguments may be ints.
    Nr   r   c	                óè  — t          |t          t          f¦  «        r¸t          |¦  «        dk    r¥dt	          |dd…         ¦  «        dz  cxk    rdk    r€n n}t          |t          ¦  «        r/	 t          |d¦  «        }n# t
          $ r t          d¦  «        ‚w xY wt                               | ¦  «        }
|
 	                    ||¦  «         d	|
_
        |
S t          |||¦  «        \  }}}t          |||||	¦  «        \  }}}}}	t          |¦  «         t                               | ¦  «        }
||
_        ||
_        ||
_        ||
_        ||
_        ||
_        ||
_        ||
_        d	|
_
        |	|
_        |
S )
Nrª   r   r%   r9   r  r$   r�  zrFailed to encode latin1 string when unpickling a datetime object. pickle.load(data, encoding='latin1') is assumed.r   )râ   r‚  rã   rŽ   rƒ  r…  rs   r”   r  Ú_datetime__setstater	  rî   r÷   rú   r}  r~  r  rú  rû  rü  rý  rþ  rÿ  )r  r   r)   r2   ró   rô   rõ   rˆ   r   rö   r  s              r   r  zdatetime.__new__‰  sš  € å�t�e¥S˜\Ñ*Ô*ð 	­s°4©y¬y¸Bª¨Ø•�T˜!˜A˜#”Y‘” Ñ$Ð*Ð*Ò*Ð*¨Ò*Ð*Ð*Ð*Ð*å˜$¥Ñ$Ô$ð LðLÝ   xÑ0Ô0�D�DøÝ)ð Lð Lð Lå$ðKñLô Lð LðLøøøõ —>’> #Ñ&Ô&ˆDØ�OŠO˜D %Ñ(Ô(Ð(ØˆDŒNØˆKÝ-¨d°E¸3Ñ?Ô?Ñˆˆe�SÝ2DØ�&˜& +¨tñ35ô 35Ñ/ˆˆf�f˜k¨4å˜&Ñ!Ô!Ð!Ý�~Š~˜cÑ"Ô"ˆØˆŒ
ØˆŒØˆŒ	ØˆŒ
ØˆŒØˆŒØ'ˆÔØˆŒØˆŒØˆŒ
Øˆs   Á.A? Á?Bc                 ó   — | j         S r  r  r0  s    r   ró   zdatetime.hour­  r5  r   c                 ó   — | j         S r  r	  r0  s    r   rô   zdatetime.minute²  r
  r   c                 ó   — | j         S r  r  r0  s    r   rõ   zdatetime.second·  r
  r   c                 ó   — | j         S r  r  r0  s    r   rˆ   zdatetime.microsecond¼  r  r   c                 ó   — | j         S r  r  r0  s    r   r   zdatetime.tzinfoÁ  r
  r   c                 ó   — | j         S r;  r  r0  s    r   rö   zdatetime.foldÆ  r  r   c           
      ó   — t          j        |¦  «        \  }}t          |dz  ¦  «        }|dk    r|dz  }|dz  }n|dk     r
|dz  }|dz  }|rt          j        nt          j        } ||¦  «        \	  }}}	}
}}}}}t          |d¦  «        } | |||	|
||||¦  «        }|€É|sÇd}||k     r!t          j         	                    d¦  «        r|S  |||z
  ¦  «        dd	…         \  }}}	}
}} | |||	|
||||¦  «        }||z
  t          d|¦  «        z
  }|j        dk     rM |||t          dd¦  «        z  z   ¦  «        dd	…         \  }}}	}
}} | |||	|
||||¦  «        }||k    rd|_        n|�|                     |¦  «        }|S )
ú‚Construct a datetime from a POSIX timestamp (like time.time()).

        A timezone info object may be passed in as well.
        r  r  r   r   rñ   Nr  Úwinr\   )r  r  r  r^   Úgmtimerˆ  ÚminÚsysÚplatformÚ
startswithr   r€   rÿ  rç  )r  r‰  rÏ   rù   Úfracrt   Ú	converterr   r`   ra   rb   rc   rd   rŠ  r‹  ré   ÚresultÚmax_fold_secondsÚprobe1ÚtransÚprobe2s                        r   Ú_fromtimestampzdatetime._fromtimestampÊ  sá  € õ ”*˜Q‘-”-‰ˆˆaÝ�4˜#‘:ÑÔˆØ�Š=ˆ=Ø�‰FˆAØ�'‰MˆBˆBØ�!ŠVˆVØ�‰FˆAØ�'‰MˆBà$'Ð<•E”L�L­U¬_ˆ	Ø2;°)¸A±,´,Ñ/ˆˆ1ˆa��R˜˜W d¨CÝ��R‰[Œ[ˆØ��Q˜˜1˜b " b¨"¨bÑ1Ô1ˆØˆ:˜cˆ:ð  )Ðð Ð#Ò#Ð#­¬×(?Ò(?ÀÑ(FÔ(FÐ#Ø�à"+ )¨AÐ0@Ñ,@Ñ"AÔ"AÀ"À1À"Ô"EÑˆAˆq�!�R˜˜RØ�S˜˜A˜q " b¨"¨b°"Ñ5Ô5ˆFØ˜V‘O¥i°Ð3CÑ&DÔ&DÑDˆEØŒz˜AŠ~ˆ~Ø&/ i°°E½YÀqÈ!¹_¼_Ñ4LÑ0LÑ&MÔ&MÈbÈqÈbÔ&QÑ#��1�a˜˜R Ø˜˜Q  1 b¨"¨b°"°bÑ9Ô9�Ø˜VÒ#Ð#Ø#$�F”LøØˆ^Ø—Z’Z Ñ'Ô'ˆFØˆr   c                 óR   — t          |¦  «         |                      ||du|¦  «        S )ri  N)rú   rw  )r  r‰  rù   s      r   rŒ  zdatetime.fromtimestampö  s.   € õ 	˜"ÑÔÐà×!Ò! ! R¨t ^°RÑ8Ô8Ð8r   c                 ó0   — |                       |dd¦  «        S )z6Construct a naive UTC datetime from a POSIX timestamp.TN)rw  r�  s     r   Úutcfromtimestampzdatetime.utcfromtimestamp   s   € ð ×!Ò! ! T¨4Ñ0Ô0Ð0r   c                 óT   — t          j        ¦   «         }|                      ||¦  «        S )zBConstruct a datetime from time.time() and optional time zone info.rŽ  )r  rù   r‰  s      r   Únowzdatetime.now  s%   € õ ŒJ‰LŒLˆØ× Ò   BÑ'Ô'Ð'r   c                 óR   — t          j        ¦   «         }|                      |¦  «        S )z*Construct a UTC datetime from time.time().)r^   r   rz  r�  s     r   Úutcnowzdatetime.utcnow  s#   € õ ŒJ‰LŒLˆØ×#Ò# AÑ&Ô&Ð&r   Tc                 ó   — t          |t          ¦  «        st          d¦  «        ‚t          |t          ¦  «        st          d¦  «        ‚|du r|j        } | |j        |j        |j        |j        |j	        |j
        |j        ||j        ¬¦	  «	        S )z8Construct a datetime from a given date and a given time.z%date argument must be a date instancez%time argument must be a time instanceTr   )râ   Ú_date_classrä   Ú_time_classr   r   r)   r2   ró   rô   rõ   rˆ   rö   )r  r   r   r   s       r   Úcombinezdatetime.combine  s–   € õ ˜$¥Ñ,Ô,ð 	EÝÐCÑDÔDÐDÝ˜$¥Ñ,Ô,ð 	EÝÐCÑDÔDÐDØ�Tˆ>ˆ>Ø”[ˆFØˆs�4”9˜dœj¨$¬(Ø”9˜dœk¨4¬;¸Ô8HØ ¤	ð+ñ +ô +ð 	+r   c                 óÄ  — t          |t          ¦  «        st          d¦  «        ‚t          |¦  «        dk     rt	          d|›�¦  «        ‚	 t          |¦  «        }|d|…         }||dz   d…         }t          |¦  «        }n!# t          $ r t	          d|›�¦  «        d‚w xY w|r2	 t          |¦  «        }n%# t          $ r t	          d|›�¦  «        d‚w xY wg d¢} | ||z   Ž S )zBConstruct a datetime from a string in one of the ISO 8601 formats.r”  r]   r•  r   r   Nr[  )râ   rã   rä   rŽ   rs   r°   rº   r×   )r  r—  Úseparator_locationÚdstrrÁ   Údate_componentsÚtime_componentss          r   r˜  zdatetime.fromisoformat  sY  € õ ˜+¥sÑ+Ô+ð 	CÝÐAÑBÔBÐBåˆ{ÑÔ˜aÒÐÝÐI¸+ÐIÐIÑJÔJÐJð	HÝ!CÀKÑ!PÔ!PÐØ˜qÐ!3Ð3Ô4ˆDØÐ 2°1Ñ 4Ð6Ð6Ô7ˆDå3°DÑ9Ô9ˆOˆOøÝð 	Hð 	Hð 	HÝØ<¨[Ð<Ð<ñ>ô >ØCGðHð	Høøøð ð 	1ðLÝ"7¸Ñ"=Ô"=��øÝð Lð Lð LÝ Ø@°Ð@Ð@ñBô BØGKðLðLøøøð 1Ð0Ð0ˆOàˆs�_ Ñ6Ð8Ð8s   Á5B ÂBÂ%B5 Â5Cc           	      ó¨   — |                       ¦   «         }|€d}n|rd}nd}t          | j        | j        | j        | j        | j        | j        |¦  «        S )r°  Nr   r   r   )ré   rh   r   r)   r2   ró   rô   rõ   )r  ré   s     r   r•   zdatetime.timetuple=  s]   € à�hŠh‰jŒjˆØˆ;ØˆCˆCØð 	ØˆCˆCàˆCÝ! $¤)¨T¬Z¸¼Ø"&¤)¨T¬[¸$¼+Ø"%ñ'ô 'ð 	'r   c                 óš  ‡
— t          ddd¦  «        Š
d}| ‰
z
  t          dd¦  «        z  }ˆ
fd„} ||¦  «        |z
  }||z
  } ||¦  «        }||k    r*|| |f| j                 z   } ||¦  «        |z
  }||k    r|S n||z
  }||k    sJ ‚||z
  } ||¦  «        }	|	|k    r|S ||k    r|S t          t          f| j                 ||¦  «        S )zReturn integer POSIX timestamp.é²  r   r  r   c                 óš   •— t          j        | ¦  «        d d…         \  }}}}}}t          ||||||¦  «        ‰z
  t          dd¦  «        z  S )Nr\   r   r   )r^   rˆ  r   r   )r    r   r`   ra   rb   rc   rd   Úepochs          €r   Úlocalzdatetime._mktime.<locals>.localO  sR   ø€ Ý"'¤/°!Ñ"4Ô"4°R°a°RÔ"8ÑˆAˆq�!�R˜˜RÝ˜Q  1 b¨"¨bÑ1Ô1°EÑ9½iÈÈ1¹o¼oÑMÐMr   )r   r   rö   Úmaxrl  )r  rs  r‰  r�  rÿ   Úu1Út1Úu2r   Út2rŒ  s             @r   Ú_mktimezdatetime._mktimeJ  s(  ø€ å˜˜q !Ñ$Ô$ˆØ$ÐØ�E‰\�i¨¨1™oœoÑ-ˆð	Nð 	Nð 	Nð 	Nð 	Nð
 ˆE�!‰HŒH�q‰LˆØ�‰UˆØˆU�2‰YŒYˆØ�Š7ˆ7ð Ð(Ð(Ð*:Ð;¸D¼IÔFÑFˆBØ��b‘	”	˜B‘ˆAØ�AŠvˆvØ�	ð ð �R‘ˆAØ˜’6�6�6�6Ø�‰UˆØˆU�2‰YŒYˆØ�Š7ˆ7ØˆIØ�Š7ˆ7ØˆIõ •Sˆz˜$œ)Ô$ R¨Ñ,Ô,Ð,r   c                 óŠ   — | j         €!|                      ¦   «         }|| j        dz  z   S | t          z
                       ¦   «         S )zReturn POSIX timestamp as floatNr  )rþ  r“  rˆ   Ú_EPOCHr1  r3  s     r   Ú	timestampzdatetime.timestampm  s@   € àŒ<ÐØ—’‘”ˆAØ�tÔ'¨#Ñ-Ñ-Ð-à�6‘M×0Ò0Ñ2Ô2Ð2r   c           	      ó¶   — |                       ¦   «         }|r| |z  } | j        | j        | j        }}}| j        | j        | j        }}}t          ||||||d¦  «        S )z4Return UTC time tuple compatible with time.gmtime().r   )rŠ   r   r)   r2   ró   rô   rõ   rh   )r  r�   r   r`   ra   rb   rc   rd   s           r   Úutctimetuplezdatetime.utctimetupleu  sb   € à—’Ñ!Ô!ˆØð 	Ø�F‰NˆDØ”)˜TœZ¨¬ˆaˆ1ˆØ”Y ¤¨T¬[�ˆBˆÝ! ! Q¨¨2¨r°2°qÑ9Ô9Ð9r   c                 óB   — t          | j        | j        | j        ¦  «        S )zReturn the date part.)r   r}  r~  r  r0  s    r   r   zdatetime.date~  s   € å�D”J ¤¨T¬YÑ7Ô7Ð7r   c                 ó\   — t          | j        | j        | j        | j        | j        ¬¦  «        S )z'Return the time part, with tzinfo None.r   )r   ró   rô   rõ   rˆ   rö   r0  s    r   r   zdatetime.time‚  s(   € å�D”I˜tœ{¨D¬K¸Ô9IÐPTÔPYÐZÑZÔZÐZr   c                 óh   — t          | j        | j        | j        | j        | j        | j        ¬¦  «        S )z'Return the time part, with same tzinfo.r   )r   ró   rô   rõ   rˆ   rþ  rö   r0  s    r   Útimetzzdatetime.timetz†  s3   € å�D”I˜tœ{¨D¬K¸Ô9IØ”L t¤yð2ñ 2ô 2ð 	2r   c	                óê   — |€| j         }|€| j        }|€| j        }|€| j        }|€| j        }|€| j        }|€| j        }|du r| j        }|	€| j        }	 t          | ¦  «        |||||||||	¬¦	  «	        S )z?Return a new datetime with new values for the specified fields.NTr   )
r   r)   r2   ró   rô   rõ   rˆ   r   rö   rå   )
r  r   r)   r2   ró   rô   rõ   rˆ   r   rö   s
             r   r‘   zdatetime.replace‹  s¨   € ð ˆ<Ø”9ˆDØˆ=Ø”JˆEØˆ;Ø”(ˆCØˆ<Ø”9ˆDØˆ>Ø”[ˆFØˆ>Ø”[ˆFØÐØÔ*ˆKØ�Tˆ>ˆ>Ø”[ˆFØˆ<Ø”9ˆDØ�t�D‰zŒz˜$  s¨D°&¸&Ø% v°Dð:ñ :ô :ð 	:r   c                 ó  — | j         €|                      ¦   «         }n| t          z
  t          d¬¦  «        z  }t	          j        |¦  «        }t          |d d…         Ž }|j        }|j        }t          t          |¬¦  «        |¦  «        S )Nr   r7  r\   )
r   r“  r•  r   r^   rˆ  r   Ú	tm_gmtoffÚtm_zoner   )r  ÚtsÚlocaltmr�  ÚgmtoffÚzones         r   Ú_local_timezonezdatetime._local_timezone¤  s}   € ØŒ;ÐØ—’‘”ˆBˆBà�‘-¥I°aÐ$8Ñ$8Ô$8Ñ8ˆBÝ”/ "Ñ%Ô%ˆÝ˜' " 1 "œ+Ð&ˆàÔ"ˆØŒˆÝ�	¨&Ð1Ñ1Ô1°4Ñ8Ô8Ð8r   c                 óî  — |€|                       ¦   «         }n$t          |t          ¦  «        st          d¦  «        ‚| j        }|€*|                       ¦   «         }|                     | ¦  «        }nT|                     | ¦  «        }|€=|                      d ¬¦  «                              ¦   «         }|                     | ¦  «        }||u r| S | |z
                       |¬¦  «        }|                     |¦  «        S )Nz)tz argument must be an instance of tzinfo©r   )r¥  râ   r   rä   rŠ   r‘   rç  )r  rù   r#  ÚmyoffsetrÏ   s        r   Ú
astimezonezdatetime.astimezone°  sï   € Øˆ:Ø×%Ò%Ñ'Ô'ˆBˆBÝ˜B¥Ñ'Ô'ð 	IÝÐGÑHÔHÐHàŒ{ˆØˆ<Ø×'Ò'Ñ)Ô)ˆDØ—~’~ dÑ+Ô+ˆHˆHà—~’~ dÑ+Ô+ˆHØÐØ—|’|¨4�|Ñ0Ô0×@Ò@ÑBÔB�ØŸ>š>¨$Ñ/Ô/�à�ˆ:ˆ:ØˆKð �h‰×'Ò'¨rÐ'Ñ2Ô2ˆð �zŠz˜#‰ŒÐr   c                 ó´   — |                       ¦   «         dz  pd}dt          |         t          | j                 | j        | j        | j        | j        | j        fz  S )r�  r]   z%s %s %2d %02d:%02d:%02d %04d)	rž  rŸ  r   r~  r  rú  rû  rü  r}  r¡  s     r   r¢  zdatetime.ctimeË  sV   € à—.’.Ñ"Ô" QÑ&Ð+¨!ˆØ.Ý�gÔÝ˜œÔ$ØŒIØŒJ˜œ d¤lØŒJð2ñ ð 	r   r6  ri   c                 óÚ   — d| j         | j        | j        |fz  t          | j        | j        | j        | j        |¦  «        z   }|                      ¦   «         }t          |¦  «        }|r||z  }|S )aŒ  Return the time formatted according to ISO.

        The full format looks like 'YYYY-MM-DD HH:MM:SS.mmmmmm'.
        By default, the fractional part is omitted if self.microsecond == 0.

        If self.tzinfo is not None, the UTC offset is also attached, giving
        giving a full format of 'YYYY-MM-DD HH:MM:SS.mmmmmm+HH:MM'.

        Optional argument sep specifies the separator between date and
        time, default 'T'.

        The optional argument timespec specifies the number of additional
        terms of the time to include. Valid options are 'auto', 'hours',
        'minutes', 'seconds', 'milliseconds' and 'microseconds'.
        z%04d-%02d-%02d%c)
r}  r~  r  rx   rú  rû  rü  rý  rŠ   r„   )r  Úsepru   r‚   r�   rù   s         r   r«  zdatetime.isoformatÕ  sw   € ð    4¤:¨t¬{¸D¼IÀsÐ"KÑKÝ˜$œ* d¤l°D´LØÔ+¨Xñ7ô 7ñ7ˆð �nŠnÑÔˆÝ˜CÑ Ô ˆØð 	Ø�‰GˆAàˆr   c           
      óÊ  — | j         | j        | j        | j        | j        | j        | j        g}|d         dk    r|d= |d         dk    r|d= | j        j        ›d| j        j	        ›dd 
                    t          t          |¦  «        ¦  «        ›d�}| j        �(|dd…         dk    sJ ‚|dd…         d| j        z  z   dz   }| j        r|dd…         dk    sJ ‚|dd…         d	z   }|S )
r0  r   r   r"  r#  r$  r%  Nr1  r2  )r}  r~  r  rú  rû  rü  rý  r&  r'  r(  r’   rÀ   rã   rþ  rÿ  )r  ÚLr‚   s      r   r*  zdatetime.__repr__ð  s  € àŒZ˜œ d¤iØŒZ˜œ t¤|°TÔ5FðHˆàˆRŒ5�AŠ:ˆ:Ø�"�ØˆRŒ5�AŠ:ˆ:Ø�"�Øœ>Ô4Ð4Ð4Øœ>Ô6Ð6Ð6ØŸ9š9¥S­¨a¡[¤[Ñ1Ô1Ð1Ð1ð3ˆð Œ<Ð#Ø�R�S�S”6˜S’=�=�=�=Ø�#�2�#”˜¨¬Ñ5Ñ5¸Ñ;ˆAØŒ:ð 	%Ø�R�S�S”6˜S’=�=�=�=Ø�#�2�#”˜Ñ$ˆAØˆr   c                 ó.   — |                       d¬¦  «        S )zConvert to string, for str().ú )r¬  )r«  r0  s    r   r.  zdatetime.__str__  s   € à�~Š~ #ˆ~Ñ&Ô&Ð&r   c                 ó8   — ddl }|                     | ||¦  «        S )zKstring, format -> new datetime parsed from a string (like time.strptime()).r   N)Ú	_strptimeÚ_strptime_datetime)r  r—  rq   r²  s       r   Ústrptimezdatetime.strptime  s(   € ð 	ÐÐÐØ×+Ò+¨C°¸fÑEÔEÐEr   c                 ól   — | j         €dS | j                              | ¦  «        }t          d|¦  «         |S )z\Return the timezone offset as timedelta positive east of UTC (negative west of
        UTC).NrŠ   r<  r=  s     r   rŠ   zdatetime.utcoffset  r>  r   c                 ój   — | j         €dS | j                              | ¦  «        }t          |¦  «         |S r@  rA  rB  s     r   rŒ   zdatetime.tzname  rC  r   c                 ól   — | j         €dS | j                              | ¦  «        }t          d|¦  «         |S rE  rF  r=  s     r   ré   zdatetime.dst#  rG  r   c                 óž   — t          |t          ¦  «        r|                      |d¬¦  «        dk    S t          |t          ¦  «        st          S dS )NTr  r   F)râ   r   r   r   r=  r>  s     r   r_  zdatetime.__eq__4  sL   € Ý�e�XÑ&Ô&ð 	Ø—9’9˜U°�9Ñ5Ô5¸Ò:Ð:Ý˜E¥4Ñ(Ô(ð 	Ý!Ð!à�5r   c                 óº   — t          |t          ¦  «        r|                      |¦  «        dk    S t          |t          ¦  «        st          S t          | |¦  «         d S rK  ©râ   r   r   r   r=  rý   r>  s     r   rb  zdatetime.__le__<  óY   € Ý�e�XÑ&Ô&ð 	#Ø—9’9˜UÑ#Ô# qÒ(Ð(Ý˜E¥4Ñ(Ô(ð 	#Ý!Ð!å�d˜EÑ"Ô"Ð"Ð"Ð"r   c                 óº   — t          |t          ¦  «        r|                      |¦  «        dk     S t          |t          ¦  «        st          S t          | |¦  «         d S rK  rº  r>  s     r   rd  zdatetime.__lt__D  óY   € Ý�e�XÑ&Ô&ð 	#Ø—9’9˜UÑ#Ô# aÒ'Ð'Ý˜E¥4Ñ(Ô(ð 	#Ý!Ð!å�d˜EÑ"Ô"Ð"Ð"Ð"r   c                 óº   — t          |t          ¦  «        r|                      |¦  «        dk    S t          |t          ¦  «        st          S t          | |¦  «         d S rK  rº  r>  s     r   rg  zdatetime.__ge__L  r»  r   c                 óº   — t          |t          ¦  «        r|                      |¦  «        dk    S t          |t          ¦  «        st          S t          | |¦  «         d S rK  rº  r>  s     r   ri  zdatetime.__gt__T  r½  r   Fc           
      ó¼  — t          |t          ¦  «        sJ ‚| j        }|j        }d x}}||u rd}n˜|                      ¦   «         }|                     ¦   «         }|rh||                      | j         ¬¦  «                             ¦   «         k    rdS ||                     |j         ¬¦  «                             ¦   «         k    rdS ||k    }|rdt          | j        | j        | j	        | j
        | j        | j        | j        f|j        |j        |j	        |j
        |j        |j        |j        f¦  «        S |�|€|rdS t          d¦  «        ‚| |z
  }|j        dk     rdS |rdpdS )NTr   r%   z(cannot compare naive and aware datetimesr   r   r   )râ   r   rþ  rŠ   r‘   rö   r   r}  r~  r  rú  rû  rü  rý  rä   r€   )	r  r?  r  r#  r$  r%  r&  r'  Údiffs	            r   r   zdatetime._cmp\  s  € Ý˜%¥Ñ*Ô*Ð*Ð*Ð*ØŒ|ˆØŒ}ˆØÐˆ�à�4ˆ<ˆ<ØˆLˆLà—N’NÑ$Ô$ˆEØ—O’OÑ%Ô%ˆEàð Ø˜DŸLšL°$´)¨m˜LÑ<Ô<×FÒFÑHÔHÒHÐHØ˜1Ø˜EŸMšM°5´:¨~˜MÑ>Ô>×HÒHÑJÔJÒJÐJØ˜1Ø  Eš>ˆLàð 	.Ý˜œ T¤[°$´)Øœ T¤\°4´<ØÔ*ð,ð œ e¤l°E´JØœ e¤m°U´]ØÔ+ð-ñ.ô .ð .ð ˆ=˜E˜MØð LØ�qåÐ JÑKÔKÐKà�e‰|ˆØŒ9�qŠ=ˆ=Ø�2Øˆz˜ˆ˜QÐr   c           
      ó  — t          |t          ¦  «        st          S t          |                      ¦   «         | j        | j        | j        | j        ¬¦  «        }||z  }t          |j	        d¦  «        \  }}t          |d¦  «        \  }}d|j
        cxk     rt          k    r_n n\t          | ¦  «                             t                               |j
        ¦  «        t!          ||||j        | j        ¬¦  «        ¦  «        S t'          d¦  «        ‚)zAdd a datetime and a timedelta.rÍ   r  r  r   r§  rÂ  )râ   r   r=  rž  rú  rû  rü  rý  r<   rm   r€   rÃ  rå   r‚  r   r’  r   ro   rþ  r  )r  r?  ræ  ró   Úremrô   rõ   s          r   r@  zdatetime.__add__�  s  € å˜%¥Ñ+Ô+ð 	"Ý!Ð!Ý˜$Ÿ.š.Ñ*Ô*Ø $¤
Ø"&¤,Ø"&¤,Ø'+Ô'8ð	:ñ :ô :ˆð
 	�‰ˆÝ˜5œ=¨$Ñ/Ô/‰	ˆˆcÝ  R™œ‰ˆ�ØˆuŒzÐ(Ð(Ò(Ð(�[Ò(Ð(Ð(Ð(Ð(Ý˜‘:”:×%Ò%¥d×&6Ò&6°u´zÑ&BÔ&BÝ&*¨4°¸Ø+0Ô+=Ø26´,ð'@ñ '@ô '@ñAô Að Aõ Ð1Ñ2Ô2Ð2r   c                 ó2  — t          |t          ¦  «        s"t          |t          ¦  «        r| | z   S t          S |                      ¦   «         }|                     ¦   «         }| j        | j        dz  z   | j        dz  z   }|j        |j        dz  z   |j        dz  z   }t          ||z
  ||z
  | j        |j        z
  ¦  «        }| j	        |j	        u r|S |  
                    ¦   «         }| 
                    ¦   «         }||k    r|S |�|€t          d¦  «        ‚||z   |z
  S )z6Subtract two datetimes, or a datetime and a timedelta.r  r  Nz(cannot mix naive and timezone-aware time)râ   r   r   r=  rž  rü  rû  rú  rý  rþ  rŠ   rä   )	r  r?  rÆ  rÇ  Úsecs1Úsecs2Úbaser%  r&  s	            r   rC  zdatetime.__sub__–  s)  € å˜%¥Ñ*Ô*ð 	"Ý˜%¥Ñ+Ô+ð %Ø˜u˜f‘}Ð$Ý!Ð!à—’Ñ Ô ˆØ—’Ñ!Ô!ˆØ”˜tœ|¨bÑ0Ñ0°4´:ÀÑ3DÑDˆØ” ¤°Ñ 2Ñ2°U´[À4Ñ5GÑGˆÝ˜ ™Ø ™ØÔ*¨UÔ-?Ñ?ñAô Aˆð Œ<˜5œ=Ð(Ð(ØˆKØ—’Ñ Ô ˆØ—’Ñ!Ô!ˆØ�EŠ>ˆ>ØˆKØˆ=˜E˜MÝÐFÑGÔGÐGØ�e‰|˜eÑ#Ð#r   c                 ó¼  — | j         dk    rË| j        r|                      d¬¦  «        }n| }|                     ¦   «         }|€-t	          |                     ¦   «         d         ¦  «        | _         nht          | j        | j        | j	        ¦  «        }| j
        dz  | j        dz  z   | j        z   }t	          t          ||| j        ¦  «        |z
  ¦  «        | _         | j         S )Nr   r   r   r  r  )r	  rö   r‘   rŠ   rn  rk  r4   r   r)   r2   ró   rô   rõ   r   rˆ   )r  r‰  r,  r€   rm   s        r   ro  zdatetime.__hash__®  sÅ   € ØŒ>˜RÒÐØŒyð Ø—L’L a�LÑ(Ô(��à�Ø—K’K‘M”MˆEØˆ}Ý!% a§k¢k¡m¤m°AÔ&6Ñ!7Ô!7�”�å ¤	¨4¬:°t´xÑ@Ô@�Øœ) dÑ*¨T¬[¸2Ñ-=Ñ=ÀÄÑK�Ý!%¥i°°g¸tÔ?OÑ&PÔ&PÐSXÑ&XÑ!YÔ!Y�”ØŒ~Ðr   r9   c                 ó:  — t          | j        d¦  «        \  }}t          | j        d¦  «        \  }}t          |d¦  «        \  }}| j        }| j        r|dk    r|dz  }t          |||| j        | j        | j        | j	        |||g
¦  «        }| j
        €|fS || j
        fS rJ  )r<   r}  rý  r~  rÿ  r‚  r  rú  rû  rü  rþ  )	r  rL  rÔ  rÕ  rM  rN  rO  r`   rP  s	            r   rk  zdatetime._getstate¿  s³   € Ý˜$œ* cÑ*Ô*‰ˆˆSÝ˜$Ô+¨SÑ1Ô1‰ˆˆSÝ˜#˜sÑ#Ô#‰ˆˆSØŒKˆØŒ:ð 	˜( Qš,˜,Ø�‰HˆAÝ˜3  Q¨¬	Øœ: t¤|°T´\Ø  Sð*ñ +ô +ˆ	ð Œ<ÐØ�<Ðà˜tœ|Ð,Ð,r   c           
      ó.  — |�$t          |t          ¦  «        st          d¦  «        ‚|\
  }}}| _        | _        | _        | _        }}}|dk    rd| _        |dz
  | _        nd| _        || _        |dz  |z   | _	        |dz  |z  dz  |z  | _
        || _        d S )NrR  r  r   rK  r   rÓ  r¨   )râ   rS  rä   r  rú  rû  rü  rÿ  r~  r}  rý  rþ  )	r  r×  r   rÔ  rÕ  r`   rO  rM  rN  s	            r   rØ  zdatetime.__setstateÎ  s«   € ØÐ¥j°½Ñ&GÔ&GÐÝÐ2Ñ3Ô3Ð3à6<ñ	4ˆˆc�1�d”i ¤Ø	Œ�t”| S¨#¨sØˆsŠ7ˆ7ØˆDŒJØ˜c™'ˆDŒKˆKàˆDŒJØˆDŒKØ˜3‘Y ‘_ˆŒ
Ø" a™x¨3Ñ.°1Ñ4¸Ñ;ˆÔØˆŒˆˆr   c                 ó:   — | j         |                      |¦  «        fS r;  rt  rU  s     r   rV  zdatetime.__reduce_ex__Ý  rW  r   c                 ó,   — |                       d¦  «        S rô  rY  r0  s    r   ru  zdatetime.__reduce__à  rZ  r   )NNr   r   r   r   Nr;  )T)NNNNNNNT)r6  ri   r\  r^  )5rü   r'  r(  rw  r   rx  r   r  ry  ró   rô   rõ   rˆ   r   rö   rÚ  rw  rŒ  rz  r|  r~  r‚  r˜  r•   r“  r–  r˜  rœ  r‘   r¥  r©  r¢  r«  r*  r.  r´  rŠ   rŒ   ré   r_  rb  rd  rg  ri  r   r@  rz  rC  ro  rk  ra  rV  ru  r   r   r   r   r   �  sà  € € € € € ðð ð
 ” ¤Ñ/€IàJKØ&*ð!Ø45ð!ð !ð !ð !ð !ðH ðð ñ „Xðð ðð ñ „Xðð ðð ñ „Xðð ð!ð !ñ „Xð!ð ðð ñ „Xðð ðð ñ „Xðð ð)ð )ñ „[ð)ðV ð9ð 9ð 9ñ „[ð9ð ð1ð 1ñ „[ð1ð ð(ð (ð (ñ „[ð(ð
 ð'ð 'ñ „[ð'ð
 ð
+ð 
+ð 
+ñ „[ð
+ð ð9ð 9ñ „[ð9ð<'ð 'ð 'ð -ð  -ð  -ðF3ð 3ð 3ð:ð :ð :ð8ð 8ð 8ð[ð [ð [ð2ð 2ð 2ð
 =AØCGð:àð:ð :ð :ð :ð :ð2
9ð 
9ð 
9ðð ð ð ð6ð ð ðð ð ð ð6ð ð ð&'ð 'ð 'ð ðFð Fñ „[ðFð
ð ð ðð ð ðð ð ð"ð ð ð#ð #ð #ð#ð #ð #ð#ð #ð #ð#ð #ð #ð#ð #ð #ð #ðJ3ð 3ð 3ð& €Hð$ð $ð $ð0ð ð ð"-ð -ð -ð -ðð ð ð:ð :ð :ð%ð %ð %ð %ð %r   r   c                 ó\   — d}t          | dd¦  «        }|dz   dz  }||z
  }||k    r|dz  }|S )Nr9   r   r\   r]   )r4   )r   ÚTHURSDAYÚfirstdayÚfirstweekdayrÏ  s        r   rÚ   rÚ   é  sM   € ð €HÝ˜˜a Ñ#Ô#€HØ˜q‘L AÑ%€LØ˜\Ñ)€KØ�hÒÐØ�qÑˆØÐr   c                   ó´   — e Zd ZdZ e¦   «         Zefd„Zedd„¦   «         Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Z edd¬¦  «        Ze Zed„ ¦   «         ZdS )r   )Ú_offsetÚ_namec                 ó8  — t          |t          ¦  «        st          d¦  «        ‚|| j        u r|s| j        S d }n$t          |t
          ¦  «        st          d¦  «        ‚| j        |cxk    r| j        k    sn t          d¦  «        ‚|  	                    ||¦  «        S )Nzoffset must be a timedeltazname must be a stringzYoffset must be a timedelta strictly between -timedelta(hours=24) and timedelta(hours=24).)
râ   r   rä   Ú_OmittedrÏ   rã   Ú
_minoffsetÚ
_maxoffsetrs   Ú_create)r  r�   ræ   s      r   r  ztimezone.__new__ú  s·   € Ý˜&¥)Ñ,Ô,ð 	:ÝÐ8Ñ9Ô9Ð9Ø�3”<ÐÐØð Ø”w�ØˆDˆDÝ˜D¥#Ñ&Ô&ð 	5ÝÐ3Ñ4Ô4Ð4ØŒ~ Ð9Ð9Ò9Ð9¨3¬>Ò9Ð9Ð9Ð9Ýð 4ñ 5ô 5ð 5ð �{Š{˜6 4Ñ(Ô(Ð(r   Nc                 óV   — t                                | ¦  «        }||_        ||_        |S r;  )r   r  rÒ  rÓ  )r  r�   ræ   r  s       r   rØ  ztimezone._create		  s&   € å�~Š~˜cÑ"Ô"ˆØˆŒØˆŒ
Øˆr   c                 ó<   — | j         €| j        fS | j        | j         fS )zpickle support)rÓ  rÒ  r0  s    r   ré  ztimezone.__getinitargs__	  s#   € àŒ:ÐØ”L�?Ð"Ø”˜dœjÐ)Ð)r   c                 óZ   — t          |t          ¦  «        r| j        |j        k    S t          S r;  )râ   r   rÒ  r=  r>  s     r   r_  ztimezone.__eq__	  s)   € Ý�e�XÑ&Ô&ð 	1Ø”< 5¤=Ò0Ð0ÝÐr   c                 ó*   — t          | j        ¦  «        S r;  )rn  rÒ  r0  s    r   ro  ztimezone.__hash__	  s   € Ý�D”LÑ!Ô!Ð!r   c                 óÆ   — | | j         u rdS | j        €$| j        j        ›d| j        j        ›d| j        ›d�S | j        j        ›d| j        j        ›d| j        ›d| j        ›d�S )a  Convert to formal string, for repr().

        >>> tz = timezone.utc
        >>> repr(tz)
        'datetime.timezone.utc'
        >>> tz = timezone(timedelta(hours=-5), 'EST')
        >>> repr(tz)
        "datetime.timezone(datetime.timedelta(-1, 68400), 'EST')"
        zdatetime.timezone.utcNr"  r#  r%  r$  )rÏ   rÓ  r&  r'  r(  rÒ  r0  s    r   r*  ztimezone.__repr__	  s‡   € ð �4”8ÐÐØ*Ð*ØŒ:ÐØ"&¤.Ô";Ð";Ð";Ø"&¤.Ô"=Ð"=Ð"=Ø"&¤, , ,ð0ð 0ð #'¤.Ô";Ð";Ð";Ø"&¤.Ô"=Ð"=Ð"=Ø"&¤, , ,°´
°
°
ð<ð 	<r   c                 ó,   — |                       d ¦  «        S r;  )rŒ   r0  s    r   r.  ztimezone.__str__2	  s   € Ø�{Š{˜4Ñ Ô Ð r   c                 ó\   — t          |t          ¦  «        s|€| j        S t          d¦  «        ‚)Nz8utcoffset() argument must be a datetime instance or None)râ   r   rÒ  rä   rß  s     r   rŠ   ztimezone.utcoffset5	  s7   € Ý�b�(Ñ#Ô#ð 	  r zØ”<ÐÝð #ñ $ô $ð 	$r   c                 óž   — t          |t          ¦  «        s|€(| j        €|                      | j        ¦  «        S | j        S t          d¦  «        ‚)Nz5tzname() argument must be a datetime instance or None)râ   r   rÓ  Ú_name_from_offsetrÒ  rä   rß  s     r   rŒ   ztimezone.tzname;	  sU   € Ý�b�(Ñ#Ô#ð 	 r zØŒzÐ!Ø×-Ò-¨d¬lÑ;Ô;Ð;Ø”:ÐÝð #ñ $ô $ð 	$r   c                 óR   — t          |t          ¦  «        s|€d S t          d¦  «        ‚)Nz2dst() argument must be a datetime instance or None)râ   r   rä   rß  s     r   ré   ztimezone.dstC	  s4   € Ý�b�(Ñ#Ô#ð 	 r zØ�4Ýð #ñ $ô $ð 	$r   c                 óŽ   — t          |t          ¦  «        r"|j        | urt          d¦  «        ‚|| j        z   S t          d¦  «        ‚)Nzfromutc: dt.tzinfo is not selfz6fromutc() argument must be a datetime instance or None)râ   r   r   rs   rÒ  rä   rß  s     r   rç  ztimezone.fromutcI	  s\   € Ý�b�(Ñ#Ô#ð 	%ØŒy Ð$Ð$Ý ð "/ñ 0ô 0ð 0à˜œÑ$Ð$Ýð #ñ $ô $ð 	$r   r:   r   )rk   ro   c           
      óH  — | sdS | t          d¦  «        k     rd}|  } nd}t          | t          d¬¦  «        ¦  «        \  }}t          |t          d¬¦  «        ¦  «        \  }}|j        }|j        }|rd|› |d›d	|d›d	|d›d
|d›�	S |rd|› |d›d	|d›d	|d›�S d|› |d›d	|d›�S )Nr
   r   r{   r|   r   r}   r~   Ú02dr¼   r"  Ú06d)r   r<   rm   ro   )ræ  rƒ   rk   rŸ   rl   rm   ro   s          r   rá  ztimezone._name_from_offsetU	  s*  € àð 	Ø�5Ø•9˜Q‘<”<ÒÐØˆDØ�FˆEˆEàˆDÝ˜U¥I°AÐ$6Ñ$6Ô$6Ñ7Ô7‰ˆˆtÝ˜t¥Y°qÐ%9Ñ%9Ô%9Ñ:Ô:‰ˆ�Ø”,ˆØÔ(ˆØð 	,ð+˜$ð + ÐGð +ð +¨GÐGð +ð +¸'ÐGð +ð +Ø$Ð*ð+ð +ð ,àð 	GØF˜ÐF˜uÐFÐFÐF¨7ÐFÐFÐF¸ÐFÐFÐFÐFØ4�TÐ4˜5Ð4Ð4Ð4 wÐ4Ð4Ð4Ð4r   r;  )rü   r'  r(  rx  r”   rÕ  r  rÚ  rØ  ré  r_  ro  r*  r.  rŠ   rŒ   ré   rç  r   r×  rÖ  Ústaticmethodrá  r   r   r   r   r   õ  s  € € € € € Ø"€Ið ˆv‰xŒx€HØ"*ð )ð )ð )ð )ð ðð ð ñ „[ðð*ð *ð *ðð ð ð
"ð "ð "ð<ð <ð <ð(!ð !ð !ð$ð $ð $ð$ð $ð $ð$ð $ð $ð$ð $ð $ð � °"Ð5Ñ5Ô5€JØ�€Jàð5ð 5ñ „\ð5ð 5ð 5r   r   r+  rŠ  r§  )Ú*)rw  r]  )Erw  Ú__all__r   r^   Úmathr  rm  Úoperatorr   rí   r   r   r	   rÃ  r'   r-   Údbmr3   r�   r   r"   r*   r.   r4   r=   r>   r?   rG   r   rŸ  rh   rx   r„   r¡   r¥   r°   rº   r¾   rÈ   r×   rµ   rç   rë   rî   r÷   rú   rý   r  r   rl  rŽ  Ú
resolutionr   r€  r   rö  rí  rÎ  rS  r�  r   rÚ   r   rØ  r
   rÏ   r•  Ú	_datetimeÚImportErrorr   r   r   ú<module>rð     s®  ððð ð(€ð Ð Ð Ð Ø Ð Ð Ð Ø 
€
€
€
Ø $Ð $Ð $Ð $Ð $Ð $ð/ð /ð /ð €Ø
€Ø€ð FÐEÐE€à�TÐ Ø€Ø˜!˜"˜"Ôð ð €CØ×Ò˜cÑ"Ô"Ð"Øˆ3�J€C€CØˆðBð Bð Bð*ð *ð *ð
!ð !ð !ðFð Fð Fð
ð ð ð Ð
˜CÑ
 Ô
 €Ø
Ð
˜CÑ
 Ô
 €Ø
Ð
˜AÑ
Ô
€ð �ÒÐÐÐð �!�g‘+ ‘/Ò!Ð!Ð!Ð!ð �"�u‘*˜q‘.Ò Ð Ð Ð ð<ð <ð <ð~?ð ?ð ?€àCÐCÐC€	ðIð Ið Ið
*ð *ð *ð *ð*ð ð ð&=0ð =0ð =0ð@ð ð ð6ð 6ð 6ðr!"ð !"ð !"ðH 6Ð5Ð5Ð ð.ð .ð .ð`,ð ,ð ,ð^ð ð ðB1ð 1ð 1ð
)ð 
)ð 
)ðð ð ð3ð 3ð 3ð"Pð Pð Pð9ð 9ð 9ðð ð ð(y2ð y2ð y2ð y2ð y2ñ y2ô y2ð y2ðv	 �	˜*Ñ%Ô%€	„Ø�	˜y°¸BÈØ'-ð/ñ /ô /€	„à �y¨aÐ0Ñ0Ô0€	Ô ð}2ð }2ð }2ð }2ð }2ñ }2ô }2ð }2ð~	 €àˆ4��1�a‰=Œ=€„Øˆ4��b˜"ÑÔ€„Ø�) Ð#Ñ#Ô#€„ð:;ð :;ð :;ð :;ð :;ñ :;ô :;ð :;ðzHð Hð Hð Hð H�eñ Hô Hð Hð6 #Ð ØØ€ðY%ð Y%ð Y%ð Y%ð Y%ñ Y%ô Y%ð Y%ðv
 €àˆ4��1�a‰=Œ=€„Øˆ4��B˜˜FÑ#Ô#€„Ø�)¨Ð+Ñ+Ô+€„ð`	%ð `	%ð `	%ð `	%ð `	%ˆtñ `	%ô `	%ð `	%ðF ˆx˜˜1˜aÑ Ô €„Øˆx˜˜b " b¨"¨b°&Ñ9Ô9€„Ø�i¨QÐ/Ñ/Ô/€Ô ð	ð 	ð 	ðr5ð r5ð r5ð r5ð r5ˆvñ r5ô r5ð r5ðh ×%Ò% i i°¡l¤lÑ3Ô3Ð 3€€h„lð
 ×Ò  °¸RÐ!@Ñ!@Ô!@Ð @ÑAÔA€„Ø×Ò 	 	°¸BÐ ?Ñ ?Ô ?Ñ@Ô@€„Ø	ˆ�$˜˜1 X¤\Ð	2Ñ	2Ô	2€ðL"ØÐÐÐð
 
Ð&¨¸ÀØ	�˜ [Ð2DØ	Ð/Ø	˜MÐ+<¸dÀIØ	Ð(Ð*;¸^Ø	�~ v¨x¸È%Ø	�5˜+ }°nÀhØ	Ð1Ð3HØ	Ð-Ð/DØ	+Ð-AØ	ð
 "Ð!Ð!Ð!Ð!Ð!Ð!Ð!øð' ð 	ð 	ð 	Ø€D€Dð	øøøs   Ê2K( Ë(K1Ë0K1