§
    ƒÛg¶ž  ã                   óª  — d Z ddlZddlZddlZddlZddlZddlZddlm	Z	m
Z
mZ ddlmZ ddlmZmZ ddlmZ ddlmZmZmZ ddlmZmZ  ej        d	¦  «        Z ej        d
¦  «        Zd„ ZdZdZeez   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„ Z0d„ Z1d„ Z2d „ Z3 G d!„ d"e¦  «        Z4ej5        Z6ej7        Z8 G d#„ d$e¦  «        Z9 G d%„ d&e¦  «        Z: G d'„ d(e:¦  «        Z; G d)„ d*e¦  «        Z< G d+„ d,e<¦  «        Z= G d-„ d.e¦  «        Z> G d/„ d0e¦  «        Z? G d1„ d2e¦  «        Z@eAd3k    r ejB        ¦   «          dS dS )4z0
Test np.datetime64 and np.timedelta64 support.
é    N)ÚjitÚ	vectorizeÚnjit)Únumpy_version)ÚtypesÚconfig)ÚTypingError)ÚTestCaseÚtagÚskip_parfors_unsupported)Únpdatetime_helpersÚnumpy_supportztimedelta64[M]ztimedelta64[Y]c                 óB   — t          j        | j        ¦  «        }|j        S ©N)r   Ú
from_dtypeÚdtypeÚunit)ÚvalÚtys     úQ/granary/edev/quantum/lib/python3.11/site-packages/numba/tests/test_npdatetime.pyÚ
value_unitr      s   € Ý	Ô	! #¤)Ñ	,Ô	,€BØŒ7€Nó    )ÚYÚM)ÚWÚDÚhÚmÚsÚmsÚusÚnsÚpsÚfsÚasc                 ó   — | |z   S r   © ©ÚxÚys     r   Úadd_usecaser+   %   ó   € Øˆq‰5€Lr   c                 ó   — | |z
  S r   r'   r(   s     r   Úsub_usecaser.   (   r,   r   c                 ó   — | |z  S r   r'   r(   s     r   Úmul_usecaser0   +   r,   r   c                 ó   — | |z  S r   r'   r(   s     r   Údiv_usecaser2   .   r,   r   c                 ó   — | |z  S r   r'   r(   s     r   Úfloordiv_usecaser4   1   s   € Ø�‰6€Mr   c                 ó   — | |k    S r   r'   r(   s     r   Ú
eq_usecaser6   4   ó   € Ø�Š6€Mr   c                 ó   — | |k    S r   r'   r(   s     r   Ú
ne_usecaser9   7   r7   r   c                 ó   — | |k     S r   r'   r(   s     r   Ú
lt_usecaser;   :   ó   € ØˆqŠ5€Lr   c                 ó   — | |k    S r   r'   r(   s     r   Ú
le_usecaser>   =   r7   r   c                 ó   — | |k    S r   r'   r(   s     r   Ú
gt_usecaser@   @   r<   r   c                 ó   — | |k    S r   r'   r(   s     r   Ú
ge_usecaserB   C   r7   r   c                 ó   — | 
 S r   r'   ©r)   s    r   Úpos_usecaserE   F   ó	   € Øˆ2€Ir   c                 ó   — |  S r   r'   rD   s    r   Úneg_usecaserH   I   rF   r   c                 ó    — t          | ¦  «        S r   )ÚabsrD   s    r   Úabs_usecaserK   L   ó   € Ýˆq‰6Œ6€Mr   c                 ó    — t          | ¦  «        S r   )ÚhashrD   s    r   Úhash_usecaserO   O   s   € Ý�‰7Œ7€Nr   c                 ó"   — t          | |¦  «        S r   ©Úminr(   s     r   Úmin_usecaserS   R   ó   € Ýˆq�!‰9Œ9Ðr   c                 ó"   — t          | |¦  «        S r   ©Úmaxr(   s     r   Úmax_usecaserX   U   rT   r   c                 ó    — t          | ¦  «        S r   )ÚintrD   s    r   Úint_cast_usecaser[   X   rL   r   c                 ó   ‡ — ˆ fd„}|S )Nc                 ó   •— | ‰z   S r   r'   )r)   Úconsts    €r   Úadd_constantz'make_add_constant.<locals>.add_constant\   s   ø€ Ø�5‰yÐr   r'   )r^   r_   s   ` r   Úmake_add_constantr`   [   s"   ø€ ðð ð ð ð àÐr   c                   ó0   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestModuleHelpersz?
    Test the various helpers in numba.npdatetime_helpers.
    c                 ó(  ‡ ‡— t           j        Št          j        t          t
          ¦  «        D ]I\  }}‰                       ‰||¦  «        ||f¦  «         ‰                       ‰||¦  «        ||f¦  «         ŒJt          D ]@}‰                       ‰|d¦  «        ¦  «         ‰                       ‰d|¦  «        ¦  «         ŒAt          dz   D ]!}‰                       ‰||¦  «        ¦  «         Œ"ˆˆ fd„} |t          ¦  «          |t
          ¦  «         d S )NÚ ©rd   c                 óÈ   •— t          | ¦  «        D ]P\  }}| d |…         D ]@}‰                      ‰||¦  «        ¦  «         ‰                      ‰||¦  «        ¦  «         ŒAŒQd S r   )Ú	enumerateÚ
assertTrueÚassertFalse©ÚgroupÚiÚaÚbÚfÚselfs       €€r   Úcheck_units_groupzDTestModuleHelpers.test_can_cast_timedelta.<locals>.check_units_groupq   s�   ø€ Ý! %Ñ(Ô(ð .ð .‘��1Ø˜r ˜rœð .ð .�Aà—O’O A A a¨¡G¤GÑ,Ô,Ð,à×$Ò$ Q Q q¨!¡W¤WÑ-Ô-Ð-Ð-ð	.ð.ð .r   )	r   Úcan_cast_timedelta_unitsÚ	itertoolsÚproductÚ
date_unitsÚ
time_unitsri   Ú	all_unitsrh   )rp   rm   rn   r   rq   ro   s   `    @r   Útest_can_cast_timedeltaz)TestModuleHelpers.test_can_cast_timedeltaf   s>  øø€ ÝÔ7ˆÝÔ%¥jµ*Ñ=Ô=ð 	.ð 	.‰DˆAˆqØ×Ò˜Q˜Q˜q !™WœW q¨! fÑ-Ô-Ð-Ø×Ò˜Q˜Q˜q !™WœW q¨! fÑ-Ô-Ð-Ð-Ýð 	)ð 	)ˆDØ×Ò˜Q˜Q˜t R™[œ[Ñ)Ô)Ð)Ø�OŠO˜A˜A˜b $™KœKÑ(Ô(Ð(Ð(Ý Ñ%ð 	+ð 	+ˆDØ�OŠO˜A˜A˜d D™MœMÑ*Ô*Ð*Ð*ð	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	Ð�*Ñ%Ô%Ð%ØÐ�*Ñ%Ô%Ð%Ð%Ð%r   c                 óæ  ‡ ‡— t           j        Št          dz   D ]"}‰                       ‰||¦  «        d¦  «         Œ#t          D ]"}‰                       ‰d|¦  «        d¦  «         Œ#t	          j        t          t          ¦  «        D ]E\  }}‰                       ‰||¦  «        d ¦  «         ‰                       ‰||¦  «        d ¦  «         ŒFˆˆ fd„} |t          ¦  «          |t          ¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd	¦  «        d
¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         d S )Nre   é   rd   c                 óÒ   •— t          | ¦  «        D ]U\  }}| d |…         D ]E}‰                      ‰||¦  «        d||f¦  «         ‰                      ‰||¦  «        d ¦  «         ŒFŒVd S )Nrz   )rg   ÚassertGreaterÚassertIsrj   s       €€r   rq   zFTestModuleHelpers.test_timedelta_conversion.<locals>.check_units_group†   s‹   ø€ Ý! %Ñ(Ô(ð 1ð 1‘��1Ø˜r ˜rœð 1ð 1�AØ×&Ò& q q¨¨A¡w¤w°°A°q°6Ñ:Ô:Ð:Ø—M’M ! ! A q¡'¤'¨4Ñ0Ô0Ð0Ð0ð1ð1ð 1r   r   r   é   r   r   é¨   r   i`'  r!   l     Ç!3)	r   Úget_timedelta_conversion_factorrw   ÚassertEqualrs   rt   rv   ru   r}   )rp   r   rm   rn   rq   ro   s   `    @r   Útest_timedelta_conversionz+TestModuleHelpers.test_timedelta_conversion|   sŸ  øø€ ÝÔ>ˆÝ Ñ%ð 	/ð 	/ˆDØ×Ò˜Q˜Q˜t T™]œ]¨AÑ.Ô.Ð.Ð.Ýð 	-ð 	-ˆDØ×Ò˜Q˜Q˜r 4™[œ[¨!Ñ,Ô,Ð,Ð,ÝÔ%¥jµ*Ñ=Ô=ð 	)ð 	)‰DˆAˆqØ�MŠM˜!˜!˜A˜q™'œ' 4Ñ(Ô(Ð(Ø�MŠM˜!˜!˜A˜q™'œ' 4Ñ(Ô(Ð(Ð(ð	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	Ð�*Ñ%Ô%Ð%ØÐ�*Ñ%Ô%Ð%ð 	×Ò˜˜˜3 ™œ bÑ)Ô)Ð)Ø×Ò˜˜˜3 ™œ fÑ-Ô-Ð-Ø×Ò˜˜˜3 ™œ kÑ2Ô2Ð2Ø×Ò˜˜˜3 ™œÐ'BÑCÔCÐCÐCÐCr   c                 óV  ‡ ‡— t           j        Šˆˆ fd„}t          j        t          t
          ¦  «        D ]\  }} |||¦  «         Œt          j        t          t          ¦  «        D ]\  }} ‰||¦  «         Œt          j        t
          t          ¦  «        D ]\  }} ‰||¦  «         Œt          j        t
          t
          ¦  «        D ]\  }} ‰||¦  «         Œt          D ]h}‰                       ‰||¦  «        |ddf¦  «         ‰                       ‰|d¦  «        |ddf¦  «         ‰                       ‰d|¦  «        d¦  «         Œi‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰d	d
¦  «        d¦  «         ‰                       ‰d
d	¦  «        d¦  «         ‰                       ‰d	d¦  «        d¦  «         ‰                       ‰dd	¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd
¦  «        d¦  «         ‰                       ‰dd	¦  «        d¦  «         ‰                       ‰dd
¦  «        d¦  «         ‰                       ‰dd	¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         ‰                       ‰dd¦  «        d¦  «         d S )Nc                 ó†   •— ‰                      t          ¦  «        5   ‰| |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r   )ÚassertRaisesÚRuntimeError)Údt_unitÚtd_unitro   rp   s     €€r   Úcheck_errorzFTestModuleHelpers.test_datetime_timedelta_scaling.<locals>.check_error—   s�   ø€ Ø×"Ò"¥<Ñ0Ô0ð $ð $Ø��'˜7Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $s   œ6¶:½:rz   rd   )rd   rz   rz   r   r   )r   r~   rz   )r   rz   r~   r   r   )r   é   rz   )r   rz   rŠ   r   )r   é€:	 rz   )r   rz   r‹   r%   )r%   ì     ÈNÎZorz   )r%   rz   rŒ   )r   é±: é�  )r   r�   ið
  )r   r�   éÀ  )r   r�   i@ƒ  )r   ì   €YÀ` rŽ   )r   r�   r�   )r   Ú!get_datetime_timedelta_conversionrs   rt   rv   ru   rw   r�   )rp   r‰   r‡   rˆ   r   ro   s   `    @r   Útest_datetime_timedelta_scalingz1TestModuleHelpers.test_datetime_timedelta_scaling•   st  øø€ ÝÔ@ˆð	$ð 	$ð 	$ð 	$ð 	$ð 	$õ !*Ô 1µ*½jÑ IÔ Ið 	*ð 	*ÑˆG�WØˆK˜ Ñ)Ô)Ð)Ð)õ !*Ô 1µ*½jÑ IÔ Ið 	 ð 	 ÑˆG�WØˆAˆg�wÑÔÐÐÝ )Ô 1µ*½jÑ IÔ Ið 	 ð 	 ÑˆG�WØˆAˆg�wÑÔÐÐÝ )Ô 1µ*½jÑ IÔ Ið 	 ð 	 ÑˆG�WØˆAˆg�wÑÔÐÐåð 	6ð 	6ˆDØ×Ò˜Q˜Q˜t T™]œ]¨T°1°a¨LÑ9Ô9Ð9Ø×Ò˜Q˜Q˜t R™[œ[¨4°°A¨,Ñ7Ô7Ð7Ø×Ò˜Q˜Q˜r 4™[œ[¨*Ñ5Ô5Ð5Ð5Ø×Ò˜˜˜2˜r™œ JÑ/Ô/Ð/à×Ò˜˜˜3 ™œ lÑ3Ô3Ð3Ø×Ò˜˜˜3 ™œ lÑ3Ô3Ð3Ø×Ò˜˜˜3 ™œ kÑ2Ô2Ð2Ø×Ò˜˜˜3 ™œ kÑ2Ô2Ð2Ø×Ò˜˜˜3 ™œÐ&=Ñ>Ô>Ð>Ø×Ò˜˜˜3 ™œÐ&=Ñ>Ô>Ð>Ø×Ò˜˜˜3 ™œÐ';Ñ<Ô<Ð<Ø×Ò˜˜˜4 ™œÐ';Ñ<Ô<Ð<à×Ò˜˜˜3 ™œÐ&@ÑAÔAÐAØ×Ò˜˜˜3 ™œÐ&DÑEÔEÐEØ×Ò˜˜˜3 ™œÐ&EÑFÔFÐFØ×Ò˜˜˜3 ™œÐ&IÑJÔJÐJØ×Ò˜˜˜3 ™œÐ&OÑPÔPÐPØ×Ò˜˜˜3 ™œÐ&TÑUÔUÐUÐUÐUr   c                 óF  — t           j        }t          D ]b}|                       |||¦  «        |¦  «         |                       |d|¦  «        |¦  «         |                       ||d¦  «        |¦  «         Œc|                       |dd¦  «        d¦  «         t	          j        t          t          ¦  «        D ]%\  }}|                       |||¦  «        d ¦  «         Œ&t	          j        t          t          ¦  «        D ]%\  }}|                       |||¦  «        |¦  «         Œ&d S )Nrd   )	r   Ú combine_datetime_timedelta_unitsrw   r�   rs   rt   rv   ru   r}   )rp   ro   r   r‡   rˆ   s        r   Ú%test_combine_datetime_timedelta_unitsz7TestModuleHelpers.test_combine_datetime_timedelta_units¼   s0  € ÝÔ?ˆÝð 	0ð 	0ˆDØ×Ò˜Q˜Q˜t T™]œ]¨DÑ1Ô1Ð1Ø×Ò˜Q˜Q˜r 4™[œ[¨$Ñ/Ô/Ð/Ø×Ò˜Q˜Q˜t R™[œ[¨$Ñ/Ô/Ð/Ð/Ø×Ò˜˜˜2˜r™œ BÑ'Ô'Ð'Ý )Ô 1µ*½jÑ IÔ Ið 	5ð 	5ÑˆG�WØ�MŠM˜!˜!˜G WÑ-Ô-¨tÑ4Ô4Ð4Ð4Ý )Ô 1µ*½jÑ IÔ Ið 	;ð 	;ÑˆG�WØ×Ò˜Q˜Q˜w¨Ñ0Ô0°'Ñ:Ô:Ð:Ð:ð	;ð 	;r   c                 ó  — t           j        }t          D ]!}|                       |||¦  «        ¦  «         Œ"d}d}t	          j        ||¦  «        D ]$\  }}|                       |||¦  «        ¦  «         Œ%t	          j        ||¦  «        D ]$\  }}|                       |||¦  «        ¦  «         Œ%t	          j        ||¦  «        D ]C\  }}|                       |||¦  «        ¦  «         |                       |||¦  «        ¦  «         ŒDd S )N)r   r   r   r   )	r   r   r   r    r!   r"   r#   r$   r%   )r   Ú	same_kindrw   rh   rs   rt   ri   )rp   ro   ÚuÚAÚBrm   rn   s          r   Útest_same_kindz TestModuleHelpers.test_same_kindÈ   s)  € ÝÔ(ˆÝð 	%ð 	%ˆAØ�OŠO˜A˜A˜a ™GœGÑ$Ô$Ð$Ð$Ø ˆØ?ˆÝÔ% a¨Ñ+Ô+ð 	%ð 	%‰DˆAˆqØ�OŠO˜A˜A˜a ™GœGÑ$Ô$Ð$Ð$ÝÔ% a¨Ñ+Ô+ð 	%ð 	%‰DˆAˆqØ�OŠO˜A˜A˜a ™GœGÑ$Ô$Ð$Ð$ÝÔ% a¨Ñ+Ô+ð 	&ð 	&‰DˆAˆqØ×Ò˜Q˜Q˜q !™WœWÑ%Ô%Ð%Ø×Ò˜Q˜Q˜q !™WœWÑ%Ô%Ð%Ð%ð	&ð 	&r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__rx   r‚   r’   r•   r›   r'   r   r   rb   rb   a   sp   € € € € € ðð ð&ð &ð &ð,Dð Dð Dð2%Vð %Vð %VðN
;ð 
;ð 
;ð&ð &ð &ð &ð &r   rb   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestMiscCompilingc                 óÆ   ‡ — ˆ fd„} t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        ¦  «        } ||¦  «         d} ||¦  «         d S )Nc                 óÊ   •—  t          | d¬¦  «        t          ¦  «        }t          dd¦  «        t          dd¦  «        f}t          |Ž }‰                      ||Ž |¦  «         d S )NT©Únopythonrz   r    é   r!   )r   r+   ÚDTÚTDÚassertPreciseEqual)Úsigro   ÚargsÚexpectedrp   s       €r   Ú_check_explicit_signaturezPTestMiscCompiling.test_jit_explicit_signature.<locals>._check_explicit_signatureÞ   se   ø€ Ø'•�C $Ð'Ñ'Ô'­Ñ4Ô4ˆAå�a˜‘;”;¥ 1 d¡¤Ð+ˆDÝ" DÐ)ˆHØ×#Ò# A A t H¨hÑ7Ô7Ð7Ð7Ð7r   r!   r    z5NPDatetime('us')(NPDatetime('ms'), NPTimedelta('us')))r   Ú
NPDatetimeÚNPTimedelta©rp   r­   rª   s   `  r   Útest_jit_explicit_signaturez-TestMiscCompiling.test_jit_explicit_signatureÝ   s}   ø€ ð	8ð 	8ð 	8ð 	8ð 	8ð %�eÔ˜tÑ$Ô$¥UÔ%5°dÑ%;Ô%;½UÔ=NÈtÑ=TÔ=TÑUÔUˆØ!Ð! #Ñ&Ô&Ð&àEˆØ!Ð! #Ñ&Ô&Ð&Ð&Ð&r   c                 ó¶   ‡ — ˆ fd„} t          j        d¦  «        t          j        d¦  «        t           j        ¦  «        } ||¦  «         d} ||¦  «         d S )Nc                 ó¼   •—  t          | gd¬¦  «        t          ¦  «        }‰                      |t          d¦  «        d¦  «        t          d¦  «        ¦  «         d S )NTr¤   r¦   é   é   )r   r0   r©   r¨   )rª   ro   rp   s     €r   r­   zVTestMiscCompiling.test_vectorize_explicit_signature.<locals>._check_explicit_signatureí   sU   ø€ Ø/•	˜3˜%¨$Ð/Ñ/Ô/µÑ<Ô<ˆAð ×#Ò# A A¥b¨¡e¤e¨Q¡K¤Kµ°A±´Ñ7Ô7Ð7Ð7Ð7r   r   z)NPTimedelta('s')(NPTimedelta('s'), int64))r   r¯   Úint64r°   s   `  r   Ú!test_vectorize_explicit_signaturez3TestMiscCompiling.test_vectorize_explicit_signatureì   st   ø€ ð	8ð 	8ð 	8ð 	8ð 	8ð %�eÔ Ñ$Ô$¥UÔ%6°sÑ%;Ô%;½U¼[ÑIÔIˆØ!Ð! #Ñ&Ô&Ð&à9ˆØ!Ð! #Ñ&Ô&Ð&Ð&Ð&r   c                 ót   ‡ — ˆ fd„} |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «         d S )Nc                 óÌ   •— t          | ¦  «        } t          d¬¦  «        |¦  «        }t          dd¦  «        } ||¦  «        }‰                      ||¦  «        |¦  «         d S ©NTr¤   é   r   ©r`   r   r¨   r©   ©r^   Úpyfuncro   r)   r¬   rp   s        €r   Úcheckz7TestMiscCompiling.test_constant_datetime.<locals>.checkü   óh   ø€ Ý& uÑ-Ô-ˆFØ"•˜TÐ"Ñ"Ô" 6Ñ*Ô*ˆAÝ�1�c‘
”
ˆAØ�v˜a‘y”yˆHØ×#Ò# A A a¡D¤D¨(Ñ3Ô3Ð3Ð3Ð3r   z
2001-01-01ÚNaTr   ©r§   ©rp   r¿   s   ` r   Útest_constant_datetimez(TestMiscCompiling.test_constant_datetimeû   sT   ø€ ð	4ð 	4ð 	4ð 	4ð 	4ð 	ˆ�b�ÑÔÑÔÐØˆ�b�˜‰nŒnÑÔÐÐÐr   c                 ó¨   ‡ — ˆ fd„} |t          dd¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          dd¦  «        ¦  «         d S )Nc                 óÌ   •— t          | ¦  «        } t          d¬¦  «        |¦  «        }t          dd¦  «        } ||¦  «        }‰                      ||¦  «        |¦  «         d S rº   r¼   r½   s        €r   r¿   z8TestMiscCompiling.test_constant_timedelta.<locals>.check  rÀ   r   r»   r   éüÿÿÿrÁ   )r¨   rÃ   s   ` r   Útest_constant_timedeltaz)TestMiscCompiling.test_constant_timedelta  sl   ø€ ð	4ð 	4ð 	4ð 	4ð 	4ð 	ˆ�b��C‰jŒjÑÔÐØˆ�b��S‰kŒkÑÔÐØˆ�b�˜‰nŒnÑÔÐÐÐr   N)rœ   r�   rž   r±   r·   rÄ   rÈ   r'   r   r   r¡   r¡   Û   sP   € € € € € ð'ð 'ð 'ð'ð 'ð 'ðð ð ð	ð 	ð 	ð 	ð 	r   r¡   c                   ó†   — e Zd Z e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„ Zd„ ZdS )ÚTestTimedeltaArithmeticT©Úforceobjc                 ó6   —  t          di | j        ¤Ž|¦  «        S ©Nr'   ©r   Újitargs©rp   r¾   s     r   r   zTestTimedeltaArithmetic.jit  ó"   € Ø"�sÐ"Ð"�T”\Ð"Ð" 6Ñ*Ô*Ð*r   c                 ó  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «          |t          dd¦  «        t          dd¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          dd¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          dd	¦  «        t          d
d	¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «          |t          dd¦  «        t          dd	¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          dd¦  «        t          dd¦  «        ¦  «         ‰                      t          t
          f¦  «        5   ‰t          dd¦  «        t          dd	¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 óˆ   •— ‰                       ‰| |¦  «        |¦  «         ‰                       ‰|| ¦  «        |¦  «         d S r   ©r©   ©rm   rn   r¬   ro   rp   s      €€r   r¿   z/TestTimedeltaArithmetic.test_add.<locals>.check  óI   ø€ Ø×#Ò# A A a¨¡G¤G¨XÑ6Ô6Ð6Ø×#Ò# A A a¨¡G¤G¨XÑ6Ô6Ð6Ð6Ð6r   rz   r¦   r´   r   r!   iBB r   r   é	   rÁ   r    r   )r   r+   r¨   r…   Ú	TypeErrorr	   ©rp   r¿   ro   s   ` @r   Útest_addz TestTimedeltaArithmetic.test_add  sþ  øø€ Ø�HŠH•[Ñ!Ô!ˆð	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	ˆ�b�‰eŒe•R˜‘U”U�B˜q™EœEÑ"Ô"Ð"Øˆ�b��C‰jŒj�"˜Q ™*œ*¥b¨¨C¡j¤jÑ1Ô1Ð1àˆ�b��C‰jŒj�"˜Q ™+œ+¥r¨'°4Ñ'8Ô'8Ñ9Ô9Ð9Øˆ�b��C‰jŒj�"˜Q ™*œ*¥b¨¨C¡j¤jÑ1Ô1Ð1àˆ�b�‰iŒi�˜A™œ¥ 5¡	¤	Ñ*Ô*Ð*Øˆ�b�˜‰nŒn�b  C™jœj­"¨U°C©.¬.Ñ9Ô9Ð9Øˆ�b�˜‰nŒn�b  D™kœk­2¨e°T©?¬?Ñ;Ô;Ð;à×Ò¥	­;Ð7Ñ8Ô8ð 	&ð 	&ØˆA�b��C‰jŒj�"˜Q ™*œ*Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ó   Æ?)G5Ç5G9Ç<G9c                 ó  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «          |t          dd¦  «        t          dd¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          dd¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          dd	¦  «        t          d
d	¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «          |t          dd¦  «        t          dd	¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          dd¦  «        t          dd¦  «        ¦  «         ‰                      t          t
          f¦  «        5   ‰t          dd¦  «        t          dd	¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 óŠ   •— ‰                       ‰| |¦  «        |¦  «         ‰                       ‰|| ¦  «        | ¦  «         d S r   rÕ   rÖ   s      €€r   r¿   z/TestTimedeltaArithmetic.test_sub.<locals>.check-  sK   ø€ Ø×#Ò# A A a¨¡G¤G¨XÑ6Ô6Ð6Ø×#Ò# A A a¨¡G¤G¨h¨YÑ7Ô7Ð7Ð7Ð7r   r´   r¦   rz   r   r!   i¾Æ- r   r   é   rÁ   r    r   )r   r.   r¨   r…   rÙ   r	   rÚ   s   ` @r   Útest_subz TestTimedeltaArithmetic.test_sub+  sþ  øø€ Ø�HŠH•[Ñ!Ô!ˆð	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	ˆ�b�‰eŒe•R˜‘U”U�B˜q™EœEÑ"Ô"Ð"Øˆ�b��C‰jŒj�"˜Q ™*œ*¥b¨¨C¡j¤jÑ1Ô1Ð1àˆ�b��C‰jŒj�"˜Q ™+œ+¥r¨'°4Ñ'8Ô'8Ñ9Ô9Ð9Øˆ�b��C‰jŒj�"˜Q ™*œ*¥b¨¨C¡j¤jÑ1Ô1Ð1àˆ�b�‰iŒi�˜A™œ¥ 5¡	¤	Ñ*Ô*Ð*Øˆ�b�˜‰nŒn�b  C™jœj­"¨U°C©.¬.Ñ9Ô9Ð9Øˆ�b�˜‰nŒn�b  D™kœk­2¨e°T©?¬?Ñ;Ô;Ð;à×Ò¥	­;Ð7Ñ8Ô8ð 	&ð 	&ØˆA�b��C‰jŒj�"˜Q ™*œ*Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð 	&ð 	&rÜ   c                 óú  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        t          j        d¦  «        t          d¦  «        ¦  «          |t          d¦  «        dt          d¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          d¦  «        dt          d	¦  «        ¦  «          |t          d
¦  «        dt          d¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          d
¦  «        dt          d	¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        t          d¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «         d S )Nc                 óˆ   •— ‰                       ‰| |¦  «        |¦  «         ‰                       ‰|| ¦  «        |¦  «         d S r   rÕ   rÖ   s      €€r   r¿   z/TestTimedeltaArithmetic.test_mul.<locals>.check@  r×   r   r´   r¦   rµ   r#   rÁ   rŠ   ç      ø?é
   éùÿÿÿiöÿÿÿg      ø¿Únanl            é   r   )r   r0   r¨   ÚnpÚuint32ÚfloatrÚ   s   ` @r   Útest_mulz TestTimedeltaArithmetic.test_mul>  sÁ  øø€ Ø�HŠH•[Ñ!Ô!ˆð	7ð 	7ð 	7ð 	7ð 	7ð 	7ð
 	ˆ�b�‰eŒe•R”Y˜q‘\”\¥2 a¡5¤5Ñ)Ô)Ð)àˆ�b�‰eŒe�Q�˜1™œÑÔÐØˆ�b��D‰kŒk˜1�b  D™kœkÑ*Ô*Ð*Øˆ�b�˜‰oŒo˜q¥" U¨D¡/¤/Ñ2Ô2Ð2àˆ�b�‰eŒe�S�"˜R™&œ&Ñ!Ô!Ð!Øˆ�b�‰fŒf�c�2˜c™7œ7Ñ#Ô#Ð#Øˆ�b��D‰kŒk˜4¥ C¨¡¤Ñ/Ô/Ð/Øˆ�b�‰fŒf�d�B˜r™FœFÑ#Ô#Ð#Øˆ�b�˜‰oŒo˜t¥R¨¨t¡_¤_Ñ5Ô5Ð5Øˆ�b��D‰kŒk�5 ™<œ<­¨E°4©¬Ñ9Ô9Ð9àˆ�b�˜‰oŒo˜r¥2 a¨¡;¤;Ñ/Ô/Ð/Ð/Ð/r   c                 óü  ‡ ‡‡— ‰                       t          ¦  «        Š‰                       t          ¦  «        Šˆˆˆ fd„} |t          dd¦  «        t	          j        d¦  «        t          dd¦  «        ¦  «          |t          d¦  «        dt          d¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        d	t          dd¦  «        ¦  «          |t          dd¦  «        d	t          dd¦  «        ¦  «          |t          d
¦  «        dt          d¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        dt          dd¦  «        ¦  «          |t          dd¦  «        t          d¦  «        t          dd¦  «        ¦  «          |t          dd¦  «        t          d¦  «        t          dd¦  «        ¦  «         d S )Nc                 óˆ   •— ‰                       ‰| |¦  «        |¦  «         ‰                       ‰| |¦  «        |¦  «         d S r   rÕ   )rm   rn   r¬   ÚdivÚfloordivrp   s      €€€r   r¿   z/TestTimedeltaArithmetic.test_div.<locals>.checkW  sI   ø€ Ø×#Ò# C C¨¨1¡I¤I¨xÑ8Ô8Ð8Ø×#Ò# H H¨Q°¡N¤N°HÑ=Ô=Ð=Ð=Ð=r   éýÿÿÿr#   r¦   éÿÿÿÿr´   rz   rÁ   r   rŠ   g      à?é   rå   rã   rÇ   g      @g        ræ   )r   r2   r4   r¨   rè   ré   rê   )rp   r¿   rî   rï   s   ` @@r   Útest_divz TestTimedeltaArithmetic.test_divT  s3  øøø€ Ø�hŠh•{Ñ#Ô#ˆØ—8’8Õ,Ñ-Ô-ˆð	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð
 	ˆ�b��T‰lŒl�BœI a™LœL­"¨R°©,¬,Ñ7Ô7Ð7àˆ�b�‰eŒe�Q�˜1™œÑÔÐØˆ�b��T‰lŒl˜A�r " d™|œ|Ñ,Ô,Ð,Øˆ�b�˜‰oŒo˜q¥" U¨D¡/¤/Ñ2Ô2Ð2Øˆ�b��D‰kŒk˜1�b ¨™oœoÑ.Ô.Ð.Øˆ�b�˜‰oŒo˜q¥" U¨D¡/¤/Ñ2Ô2Ð2àˆ�b�‰eŒe�S�"˜R™&œ&Ñ!Ô!Ð!Øˆ�b��T‰lŒl˜C¥ B¨¡¤Ñ.Ô.Ð.Øˆ�b�˜‰oŒo˜s¥B u¨d¡O¤OÑ4Ô4Ð4Øˆ�b��D‰kŒk˜3¥ 5¨$¡¤Ñ0Ô0Ð0Øˆ�b�˜‰oŒo˜s¥B u¨d¡O¤OÑ4Ô4Ð4Øˆ�b��D‰kŒk�5 ™<œ<­¨E°4©¬Ñ9Ô9Ð9Øˆ�b�˜‰oŒo�u U™|œ|­R°°t©_¬_Ñ=Ô=Ð=Ð=Ð=r   c                 óp  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        t          d¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          d¦  «        t          d	¦  «        t          d
¦  «        ¦  «          |t          d¦  «        t          d	¦  «        t          d¦  «        ¦  «          |t          d	¦  «        t          d	¦  «        t          d¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «          |t          d¦  «        t          d	¦  «        t          d¦  «        ¦  «         ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 óH   •— ‰                       ‰| |¦  «        |¦  «         d S r   rÕ   )rm   rn   r¬   rî   rp   s      €€r   r¿   z;TestTimedeltaArithmetic.test_homogeneous_div.<locals>.checkn  s)   ø€ Ø×#Ò# C C¨¨1¡I¤I¨xÑ8Ô8Ð8Ð8Ð8r   rŠ   r´   g«ªªªªª@r!   r    gQFoËZc?g«ªªªª:¢@r   z+infrå   z-infræ   Únatrz   r   r   )r   r2   r¨   rê   r…   rÙ   r	   )rp   r¿   rî   s   ` @r   Útest_homogeneous_divz,TestTimedeltaArithmetic.test_homogeneous_divl  s   øø€ Ø�hŠh•{Ñ#Ô#ˆð	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	ˆ�b�‰eŒe•R˜‘U”U˜GÑ$Ô$Ð$Øˆ�b��D‰kŒk�2˜a ™;œ;¨
Ñ3Ô3Ð3Øˆ�b��D‰kŒk�2˜a ™;œ;¨
Ñ3Ô3Ð3Øˆ�b�‰eŒe•R˜‘U”U�E &™MœMÑ*Ô*Ð*Øˆ�b�‰fŒf•b˜‘e”e�U 6™]œ]Ñ+Ô+Ð+Øˆ�b�‰eŒe•R˜‘U”U�E %™LœLÑ)Ô)Ð)àˆ�b�‰iŒi�˜A™œ¥ e¡¤Ñ-Ô-Ð-Øˆ�b�‰eŒe•R˜‘Y”Y¥ e¡¤Ñ-Ô-Ð-Øˆ�b�‰iŒi�˜A™œ¥ e¡¤Ñ-Ô-Ð-à×Ò¥	­;Ð7Ñ8Ô8ð 	(ð 	(ØˆC•�1�c‘
”
�B˜q #™JœJÑ'Ô'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s   Ç5)H+È+H/È2H/c                 ó<  ‡ ‡‡— ‰                       t          ¦  «        Š‰                       t          ¦  «        Šˆˆˆ fd„} |t          d¦  «        t          d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd	¦  «        t          d
d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «         t          dk     r} |t          dd	¦  «        t          dd¦  «        d¦  «          |t          dd	¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «         d S ‰                      t          t          f¦  «        5   ‰t          dd	¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t          t          f¦  «        5   ‰t          dd	¦  «        t          dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 ój  •— |}| }t          j        | ¦  «        st          j        | ¦  «        rd}d}‰                      ‰| |¦  «        |¦  «         ‰                      ‰|| ¦  «        |¦  «         ‰                      ‰| |¦  «        |¦  «         ‰                      ‰|| ¦  «        |¦  «         d S ©NFT©rè   Úisnatr©   )rm   rn   r¬   Úexpected_valÚnot_expected_valÚeqÚnerp   s        €€€r   r¿   z1TestTimedeltaArithmetic.test_eq_ne.<locals>.checkƒ  sÄ   ø€ Ø#ˆLØ#+˜|Ðõ Œx˜‰{Œ{ð (�bœh q™kœkð (Ø$�Ø#'Ð à×#Ò# B B q¨!¡H¤H¨lÑ;Ô;Ð;Ø×#Ò# B B q¨!¡H¤H¨lÑ;Ô;Ð;Ø×#Ò# B B q¨!¡H¤HÐ.>Ñ?Ô?Ð?Ø×#Ò# B B q¨!¡H¤HÐ.>Ñ?Ô?Ð?Ð?Ð?r   rz   r¦   FTr   iÐ  r    r   r~   r   ÚNat)rz   é   ém  r   in  rÁ   r   )r   r6   r9   r¨   r   r…   rÙ   r	   )rp   r¿   rÿ   r   s   ` @@r   Ú
test_eq_nez"TestTimedeltaArithmetic.test_eq_ne€  sY  øøø€ Ø�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆð	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	ˆ�b�‰eŒe•R˜‘U”U˜EÑ"Ô"Ð"Øˆ�b�‰eŒe•R˜‘U”U˜DÑ!Ô!Ð!Øˆ�b��C‰jŒj�"˜Q ™*œ* eÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜Q ™*œ* dÑ+Ô+Ð+Øˆ�b��s‰mŒm�R  3™ZœZ¨Ñ/Ô/Ð/Øˆ�b��t‰nŒn�b  C™jœj¨$Ñ/Ô/Ð/Øˆ�b��C‰jŒj�"˜R ™+œ+ tÑ,Ô,Ð,àˆ�b�‰iŒi�˜E™œ DÑ)Ô)Ð)Øˆ�b�˜‰oŒo�r %¨™~œ~¨tÑ4Ô4Ð4Øˆ�b�‰iŒi�˜A™œ Ñ&Ô&Ð&å˜7Ò"Ð"ØˆE•"�Q˜‘*”*�b  c™lœl¨EÑ2Ô2Ð2ØˆE•"�Q˜‘*”*�b  c™lœl¨EÑ2Ô2Ð2àˆE•"�U˜C‘.”.¥" U¨C¡.¤.°$Ñ7Ô7Ð7Ð7Ð7ð ×"Ò"¥I­{Ð#;Ñ<Ô<ð -ð -Ø�•2�a˜‘:”:�r # s™|œ|Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -à×"Ò"¥I­{Ð#;Ñ<Ô<ð -ð -Ø�•2�a˜‘:”:�r # s™|œ|Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð -ð -s$   É:)J/Ê/J3Ê6J3Ë)LÌLÌLc                 óþ  ‡ ‡‡— ‰                       t          ¦  «        Š‰                       t          ¦  «        Šˆˆˆ fd„} |t          d¦  «        t          d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          d	d¦  «        d¦  «          |t          d
¦  «        t          d
¦  «        d¦  «          |t          d
d¦  «        t          d
d¦  «        d¦  «          |t          d
¦  «        t          d¦  «        d¦  «         ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 óê   •— |}| }t          j        | ¦  «        st          j        | ¦  «        rd}d}‰                      ‰| |¦  «        |¦  «         ‰                      ‰| |¦  «        |¦  «         d S ©NFrû   )rm   rn   r¬   rý   rþ   ÚgeÚltrp   s        €€€r   r¿   z1TestTimedeltaArithmetic.test_lt_ge.<locals>.check®  sƒ   ø€ Ø#ˆLØ#+˜|Ðõ Œx˜‰{Œ{ð )�bœh q™kœkð )Ø$�Ø#(Ð à×#Ò# B B q¨!¡H¤H¨lÑ;Ô;Ð;Ø×#Ò# B B q¨!¡H¤HÐ.>Ñ?Ô?Ð?Ð?Ð?r   rz   r¦   TFr   r   é=   é<   r  r    ìûÿÿÿÿÿÿÿ r   r  r   rÁ   )r   r;   rB   r¨   r…   rÙ   r	   )rp   r¿   r  r	  s   ` @@r   Ú
test_lt_gez"TestTimedeltaArithmetic.test_lt_ge«  s  øøø€ Ø�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆð	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	ˆ�b�‰eŒe•R˜‘U”U˜DÑ!Ô!Ð!Øˆ�b�‰eŒe•R˜‘U”U˜EÑ"Ô"Ð"Øˆ�b�‰eŒe•R˜‘U”U˜EÑ"Ô"Ð"Øˆ�b��C‰jŒj�"˜Q ™*œ* dÑ+Ô+Ð+Øˆ�b��C‰jŒj�"˜Q ™*œ* eÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜Q ™*œ* eÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜R ™+œ+ tÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜R ™+œ+ uÑ-Ô-Ð-àˆ�b�‰iŒi�˜E™œ EÑ*Ô*Ð*Øˆ�b�˜‰oŒo�r %¨™~œ~¨uÑ5Ô5Ð5Øˆ�b�‰iŒi�˜J™œ¨Ñ.Ô.Ð.à×Ò¥	­;Ð7Ñ8Ô8ð 	)ð 	)ØˆB�r�!�S‰zŒz�2˜c 3™<œ<Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)à×Ò¥	­;Ð7Ñ8Ô8ð 	)ð 	)ØˆB�r�!�S‰zŒz�2˜c 3™<œ<Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð ×Ò¥	­;Ð7Ñ8Ô8ð 	/ð 	/ØˆB�r�%˜‰~Œ~�r %¨™~œ~Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/à×Ò¥	­;Ð7Ñ8Ô8ð 	/ð 	/ØˆB�r�%˜‰~Œ~�r %¨™~œ~Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/sH   È)IÉIÉIÉ:)J/Ê/J3Ê6J3Ë)LÌLÌLÌ<)M2Í2M6Í9M6c                 óP  ‡ ‡‡— ‰                       t          ¦  «        Š‰                       t          ¦  «        Šˆˆˆ fd„} |t          d¦  «        t          d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          d	d¦  «        d¦  «          |t          dd¦  «        t          d
d¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «          |t          dd¦  «        t          dd¦  «        d¦  «          |t          d¦  «        t          d¦  «        d¦  «         ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   ‰                      t
          t          f¦  «        5   ‰t          dd¦  «        t          dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nc                 óê   •— |}| }t          j        | ¦  «        st          j        | ¦  «        rd}d}‰                      ‰| |¦  «        |¦  «         ‰                      ‰| |¦  «        |¦  «         d S r  rû   )rm   rn   r¬   rý   rþ   ÚgtÚlerp   s        €€€r   r¿   z1TestTimedeltaArithmetic.test_le_gt.<locals>.checkÕ  sƒ   ø€ Ø#ˆLØ#+˜|Ðõ Œx˜‰{Œ{ð )�bœh q™kœkð )Ø$�Ø#(Ð Ø×#Ò# B B q¨!¡H¤H¨lÑ;Ô;Ð;Ø×#Ò# B B q¨!¡H¤HÐ.>Ñ?Ô?Ð?Ð?Ð?r   rz   r¦   TFr   r   r
  r  é;   r  r    r  r   r  r   rÁ   )r   r>   r@   r¨   r…   rÙ   r	   )rp   r¿   r  r  s   ` @@r   Ú
test_le_gtz"TestTimedeltaArithmetic.test_le_gtÒ  s@  øøø€ Ø�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆð
	@ð 
	@ð 
	@ð 
	@ð 
	@ð 
	@ð 
	@ð 	ˆ�b�‰eŒe•R˜‘U”U˜DÑ!Ô!Ð!Øˆ�b�‰eŒe•R˜‘U”U˜DÑ!Ô!Ð!Øˆ�b�‰eŒe•R˜‘U”U˜EÑ"Ô"Ð"Øˆ�b��C‰jŒj�"˜Q ™*œ* dÑ+Ô+Ð+Øˆ�b��C‰jŒj�"˜Q ™*œ* dÑ+Ô+Ð+Øˆ�b��C‰jŒj�"˜Q ™*œ* eÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜R ™+œ+ tÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜R ™+œ+ tÑ,Ô,Ð,Øˆ�b��C‰jŒj�"˜R ™+œ+ uÑ-Ô-Ð-àˆ�b�‰iŒi�˜E™œ DÑ)Ô)Ð)Øˆ�b�˜‰oŒo�r %¨™~œ~¨tÑ4Ô4Ð4Øˆ�b�‰iŒi�˜J™œ¨Ñ.Ô.Ð.à×Ò¥	­;Ð7Ñ8Ô8ð 	)ð 	)ØˆB�r�!�S‰zŒz�2˜c 3™<œ<Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)à×Ò¥	­;Ð7Ñ8Ô8ð 	)ð 	)ØˆB�r�!�S‰zŒz�2˜c 3™<œ<Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð ×Ò¥	­;Ð7Ñ8Ô8ð 	/ð 	/ØˆB�r�%˜‰~Œ~�r %¨™~œ~Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/à×Ò¥	­;Ð7Ñ8Ô8ð 	/ð 	/ØˆB�r�%˜‰~Œ~�r %¨™~œ~Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/sH   É)I7É7I;É>I;Ê#)KËKËKÌ)L9Ì9L=Í L=Í%)NÎNÎ"Nc                 óp  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        ¦  «          |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «         d S )Nc                 óH   •— ‰                       ‰| ¦  «        | 
 ¦  «         d S r   rÕ   )rm   Úposrp   s    €€r   r¿   z/TestTimedeltaArithmetic.test_pos.<locals>.checkû  ó)   ø€ Ø×#Ò# C C¨¡F¤F¨Q¨BÑ/Ô/Ð/Ð/Ð/r   r´   rÇ   r    rÁ   )r   rE   r¨   )rp   r¿   r  s   ` @r   Útest_posz TestTimedeltaArithmetic.test_posù  ó¿   øø€ Ø�hŠh•{Ñ#Ô#ˆð	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	ˆ�b�‰eŒe‰ŒˆØˆ�b�‰fŒf‰ŒˆØˆ�b��D‰kŒkÑÔÐØˆ�b��T‰lŒlÑÔÐØˆ�b�‰iŒiÑÔÐØˆ�b�˜‰oŒoÑÔÐÐÐr   c                 óp  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        ¦  «          |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «         d S )Nc                 óH   •— ‰                       ‰| ¦  «        |  ¦  «         d S r   rÕ   )rm   Únegrp   s    €€r   r¿   z/TestTimedeltaArithmetic.test_neg.<locals>.check  r  r   r´   rÇ   r    rÁ   )r   rH   r¨   )rp   r¿   r  s   ` @r   Útest_negz TestTimedeltaArithmetic.test_neg  r  r   c                 óp  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„} |t          d¦  «        ¦  «          |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          dd¦  «        ¦  «          |t          d¦  «        ¦  «          |t          dd¦  «        ¦  «         d S )Nc                 ó`   •— ‰                       ‰| ¦  «        t          | ¦  «        ¦  «         d S r   )r©   rJ   ©rm   ro   rp   s    €€r   r¿   z/TestTimedeltaArithmetic.test_abs.<locals>.check  ó-   ø€ Ø×#Ò# A A a¡D¤D­#¨a©&¬&Ñ1Ô1Ð1Ð1Ð1r   r´   rÇ   r    rÁ   )r   rK   r¨   rÚ   s   ` @r   Útest_absz TestTimedeltaArithmetic.test_abs  s¿   øø€ Ø�HŠH•[Ñ!Ô!ˆð	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	ˆ�b�‰eŒe‰ŒˆØˆ�b�‰fŒf‰ŒˆØˆ�b��D‰kŒkÑÔÐØˆ�b��T‰lŒlÑÔÐØˆ�b�‰iŒiÑÔÐØˆ�b�˜‰oŒoÑÔÐÐÐr   c                 óþ   ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„}d}d}t          ||z   t          ft	          |¦  «        z  t
          ft	          |¦  «        z  z   ¦  «        D ]\  }} | ||Ž ¦  «         Œd S )Nc                 ó`   •— ‰                       ‰| ¦  «        t          | ¦  «        ¦  «         d S r   )r©   rN   r   s    €€r   r¿   z0TestTimedeltaArithmetic.test_hash.<locals>.check  s-   ø€ Ø×#Ò# A A a¡D¤D­$¨q©'¬'Ñ2Ô2Ð2Ð2Ð2r   ))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ñ   ))Ú2014)Ú2016)Ú2000)ú2014-02)ú2014-03)ú2014-04)ú2016-02)ú
2000-12-31)ú
2014-01-16)ú
2014-01-05)ú
2014-01-07)ú
2014-01-06)ú
2014-02-02)ú
2014-02-27)ú
2014-02-16)ú
2014-03-01)ú2000-01-01T01:02:03.002Z)ú2000-01-01T01:02:03Zr(  )r   rO   Úzipr¨   Úlenr§   )rp   r¿   ÚTD_CASESÚDT_CASESÚcaseÚtypro   s   `     @r   Ú	test_hashz!TestTimedeltaArithmetic.test_hash  s¯   øø€ Ø�HŠH•\Ñ"Ô"ˆð	3ð 	3ð 	3ð 	3ð 	3ð 	3ðBˆð9ˆõ ˜X¨Ñ0Ý ˜U¥S¨¡]¤]Ñ2µb°U½SÀ¹]¼]Ñ5JÑJñLô Lð 	ð 	‰IˆD�#àˆE�#�#�t�*ÑÔÐÐð	ð 	r   c                 óˆ  ‡ ‡‡— ‰                       ‰¦  «        Šˆˆ ˆfd„}t          d¦  «        t          d¦  «        t          d¦  «        t          d¦  «        ft          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        ffD ])}t          j        ||¦  «        D ]\  }} |||¦  «         ŒŒ*d S )Nc                 ó\   •— ‰                       ‰| |¦  «         ‰| |¦  «        ¦  «         d S r   rÕ   ©rm   rn   ro   rp   Úusecases     €€€r   r¿   z4TestTimedeltaArithmetic._test_min_max.<locals>.check3  ó3   ø€ Ø×#Ò# A A a¨¡G¤G¨W¨W°Q¸©]¬]Ñ;Ô;Ð;Ð;Ð;r   r   rz   r¦   rÁ   r   )r   r¨   rs   rt   ©rp   rE  r¿   Úcasesrm   rn   ro   s   ``    @r   Ú_test_min_maxz%TestTimedeltaArithmetic._test_min_max1  sÞ   øøø€ Ø�HŠH�WÑÔˆð	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<õ �‰UŒU•B�q‘E”E�2˜a™5œ5¥" U¡)¤)Ð,Ý��3‰ZŒZ�˜A˜s™œ¥R¨¨3¡Z¤Zµ°E¸3±´Ð@ð
ð 	ð 	ˆEõ "Ô)¨%°Ñ7Ô7ð ð ‘��1Ø��a˜‘”��ðð		ð 	r   c                 ó:   — |                       t          ¦  «         d S r   ©rI  rS   ©rp   s    r   Útest_minz TestTimedeltaArithmetic.test_min=  ó   € Ø×Ò�;Ñ'Ô'Ð'Ð'Ð'r   c                 ó:   — |                       t          ¦  «         d S r   ©rI  rX   rL  s    r   Útest_maxz TestTimedeltaArithmetic.test_max@  rN  r   N)rœ   r�   rž   ÚdictrÐ   r   rÛ   rà   rë   ró   r÷   r  r  r  r  r  r"  rA  rI  rM  rQ  r'   r   r   rÊ   rÊ     s  € € € € € àˆd˜DÐ!Ñ!Ô!€Gð+ð +ð +ð&ð &ð &ð&&ð &ð &ð&0ð 0ð 0ð,>ð >ð >ð0(ð (ð (ð()-ð )-ð )-ðV%/ð %/ð %/ðN%/ð %/ð %/ðN
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ðð ð ð(
ð 
ð 
ð(ð (ð (ð(ð (ð (ð (ð (r   rÊ   c                   ó,   — e Zd Z ed¬¦  «        Zd„ ZdS )ÚTestTimedeltaArithmeticNoPythonTr¤   c                 ó¬  ‡ ‡— ‰                       t          ¦  «        Šˆˆ fd„}dD ]1\  }} |t          ||¦  «                             d¦  «        ¦  «         Œ2dD ]-} |t	          |¦  «                             d¦  «        ¦  «         Œ.‰                      t          d¬¦  «        5   ‰t	          d¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nc                 ó`   •— ‰                       ‰| ¦  «        t          | ¦  «        ¦  «         d S r   )r©   rZ   r   s    €€r   r¿   z<TestTimedeltaArithmeticNoPython.test_int_cast.<locals>.checkJ  r!  r   ))r´   r"   )rÇ   r"   )i0u  r"   )i ¦�ýr"   )rz   r   ztimedelta64[ns])r)  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r4  r5  r6  r7  r8  r9  r:  údatetime64[ns]z;Only datetime64[ns] can be converted, but got datetime64[y])Úmsgr)  )r   r[   r¨   Úastyper§   r…   r	   )rp   r¿   Údeltar   Útimero   s   `    @r   Útest_int_castz-TestTimedeltaArithmeticNoPython.test_int_castH  sH  øø€ Ø�HŠHÕ%Ñ&Ô&ˆð	2ð 	2ð 	2ð 	2ð 	2ð 	2ð5ð 	=ð 	=‰MˆU�DàˆE•"�U˜D‘/”/×(Ò(Ð):Ñ;Ô;Ñ<Ô<Ð<Ð<ð-ð 	5ð 	5ˆDð
 ˆE•"�T‘(”(—/’/Ð"2Ñ3Ô3Ñ4Ô4Ð4Ð4à×Ò�{ð 2AÐñ Cô Cð 	ð 	ð ˆA�b�‰jŒj‰MŒMˆMð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Â#C	Ã	CÃCN)rœ   r�   rž   rR  rÐ   r\  r'   r   r   rT  rT  D  s5   € € € € € àˆd˜DÐ!Ñ!Ô!€Gðð ð ð ð r   rT  c                   óv   — e Zd Z ed¬¦  «        Zd„ Zej        d„ ¦   «         Zd„ Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ ZdS )ÚTestDatetimeArithmeticTrË   c                 ó6   —  t          di | j        ¤Ž|¦  «        S rÎ   rÏ   rÑ   s     r   r   zTestDatetimeArithmetic.jitb  rÒ   r   c              #   ó¢   K  — t          j        ¦   «         5  t          j        ddt          ¬¦  «         d V — d d d ¦  «         d S # 1 swxY w Y   d S )NÚignorez-Implicitly casting between incompatible kinds)ÚmessageÚcategory)ÚwarningsÚcatch_warningsÚfilterwarningsÚDeprecationWarningrL  s    r   Úsilence_numpy_warningsz-TestDatetimeArithmetic.silence_numpy_warningse  s¬   è è € õ Ô$Ñ&Ô&ð 	ð 	ÝÔ# HØ,[Ý-?ðAñ Aô Að Að ˆEˆEˆEð		ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   –!AÁAÁAc                 óD  ‡ ‡‡— ‰                       t          ¦  «        Š‰                       t          ¦  «        Šˆˆ ˆfd„} |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd	¦  «        t          d
d	¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          dd	¦  «        t	          dd	¦  «        t          d
d	¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd	¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d¦  «        ¦  «          |t          d¦  «        t	          dd¦  «        t          d ¦  «        ¦  «         d!D �]f}d"D �]_}t          ||z   ¦  «        }t	          dd¦  «        t	          dd	¦  «        t	          d#d¦  «        t	          d$d¦  «        t	          d%d¦  «        t	          d&d¦  «        t	          d#d	¦  «        t	          d$d	¦  «        t	          d%d	¦  «        t	          d&d	¦  «        t	          d#d¦  «        t	          d$d¦  «        t	          d%d¦  «        t	          d&d¦  «        fD ]u}‰                       ‰||¦  «        ||z   ||f¦  «         ‰                       ‰||¦  «        ||z   ||f¦  «         ‰                       ‰|| ¦  «        ||z   ||f¦  «         Œv�Œa�Œh |t          d'¦  «        t	          d¦  «        t          d'¦  «        ¦  «          |t          d'd(¦  «        t	          dd¦  «        t          d'd(¦  «        ¦  «          |t          d'd(¦  «        t	          dd¦  «        t          d'd¦  «        ¦  «          |t          d¦  «        t	          d'd	¦  «        t          d'd	¦  «        ¦  «          |t          d)¦  «        t	          d'd	¦  «        t          d'd¦  «        ¦  «          |t          d'd(¦  «        t	          d'd¦  «        t          d'd¦  «        ¦  «         ‰‰fD ]Ä}‰                      t          t          f¦  «        5   |t          d*d)¦  «        t	          d*d¦  «        ¦  «         d+d+d+¦  «         n# 1 swxY w Y   ‰                      t          t          f¦  «        5   |t          d*d)¦  «        t	          d*d¦  «        ¦  «         d+d+d+¦  «         n# 1 swxY w Y   ŒÅd+S ),zQ
        Test `datetime64 + timedelta64` and `datetime64 - timedelta64`.
        c                 óh  •— ‰                      ¦   «         5  ‰                      ‰| |¦  «        || |f¦  «         ‰                      ‰|| ¦  «        || |f¦  «         ‰                      ‰| | ¦  «        || |f¦  «         ‰                     | |z   |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r   ©rh  r©   )rm   rn   r¬   Úaddrp   Úsubs      €€€r   r¿   z<TestDatetimeArithmetic.test_add_sub_timedelta.<locals>.checku  s  ø€ Ø×,Ò,Ñ.Ô.ð 9ð 9Ø×'Ò'¨¨¨A¨q©	¬	°8¸aÀ¸VÑDÔDÐDØ×'Ò'¨¨¨A¨q©	¬	°8¸aÀ¸VÑDÔDÐDØ×'Ò'¨¨¨A°¨r©
¬
°H¸qÀ!¸fÑEÔEÐEà×'Ò'¨¨A©¨xÑ8Ô8Ð8ð9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9ð 9ð 9s   –BB'Â'B+Â.B+r)  r¦   r   r*  r   r-  r´   r   r1  r»   r   r2  r+  r  r0  r,  r/  r.  z
2014-02-03r3  r5  r%  r8  z
2012-02-02z
2012-02-29z
2012-02-16r:  r   z2000-01-01T03:02:03Zr    r9  )Ú600Ú601Ú604Ú801Ú1900Ú1904Ú2200Ú2300Ú2304Ú2400Ú6001)rd   ú-01ú-12éd   r&  iœÿÿÿr'  rÁ   r   ú
2014-01-01rz   N)	r   r+   r.   r§   r¨   r�   r…   rÙ   r	   )	rp   r¿   Údt_strÚ	dt_suffixÚdtÚtdro   rl  rm  s	   `      @@r   Útest_add_sub_timedeltaz-TestDatetimeArithmetic.test_add_sub_timedeltao  s]  øøø€ ð �hŠh•{Ñ#Ô#ˆØ�hŠh•{Ñ#Ô#ˆð	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	ˆ�b�‰jŒj�"˜Q ™*œ*¥b¨¡j¤jÑ1Ô1Ð1Øˆ�b�‰jŒj�"˜Q ™*œ*¥b¨¡m¤mÑ4Ô4Ð4Øˆ�b�‰jŒj�"˜Q ™*œ*¥b¨°sÑ&;Ô&;Ñ<Ô<Ð<Øˆ�b�‰jŒj�"˜Q ™*œ*¥b¨Ñ&6Ô&6Ñ7Ô7Ð7Øˆ�b�‰jŒj�"˜S #™,œ,­¨<Ñ(8Ô(8Ñ9Ô9Ð9àˆ�b�‰mŒm�R  3™ZœZ­¨I©¬Ñ7Ô7Ð7Øˆ�b�‰mŒm�R  3™ZœZ­¨I©¬Ñ7Ô7Ð7Øˆ�b�‰mŒm�R  3™ZœZ­¨LÑ)9Ô)9Ñ:Ô:Ð:àˆ�b�˜sÑ#Ô#¥R¨¨3¡Z¤Zµ°LÀ#Ñ1FÔ1FÑGÔGÐGàˆ�b�ÑÔ¥ 2 s¡¤­R°Ñ-=Ô-=Ñ>Ô>Ð>Øˆ�b�ÑÔ¥ 2 s¡¤­R°Ñ-=Ô-=Ñ>Ô>Ð>Øˆ�b�ÑÔ¥ 1 c¡
¤
­B¨|Ñ,<Ô,<Ñ=Ô=Ð=àˆ�bÐ'Ñ(Ô(­"¨Q°©*¬*µbÐ9OÑ6PÔ6PÑQÔQÐQØˆ�bÐ'Ñ(Ô(­"¨Q°©+¬+µrÐ:TÑ7UÔ7UÑVÔVÐVð'ð 	Fñ 	FˆFð 0ð Fñ F�	Ý˜ Ñ*Ñ+Ô+�Ý˜a ™:œ:¥r¨!¨S¡z¤zÝ˜c 3™<œ<­¨E°3©¬Ý˜d C™=œ=­"¨V°S©/¬/Ý˜c 3™<œ<­¨E°3©¬Ý˜d C™=œ=­"¨V°S©/¬/Ý˜c 3™<œ<­¨E°3©¬Ý˜d C™=œ=­"¨V°S©/¬/ð;ð 	Fð 	F�Bð ×$Ò$ S S¨¨R¡[¤[°"°r±'¸BÀ¸8ÑDÔDÐDØ×$Ò$ S S¨¨R¡[¤[°"°r±'¸BÀ¸8ÑDÔDÐDØ×$Ò$ S S¨¨b¨S¡\¤\°2¸±7¸RÀ¸HÑEÔEÐEÐEñ	FñFð 	ˆ�b�‰iŒi�˜A™œ¥ 5¡	¤	Ñ*Ô*Ð*Øˆ�b�˜‰nŒn�b  C™jœj­"¨U°C©.¬.Ñ9Ô9Ð9Øˆ�b�˜‰nŒn�b  D™kœk­2¨e°T©?¬?Ñ;Ô;Ð;Øˆ�b�‰jŒj�"˜U C™.œ.­"¨U°C©.¬.Ñ9Ô9Ð9Øˆ�b�ÑÔ¥ 5¨#¡¤µ°5¸#±´Ñ?Ô?Ð?Øˆ�b�˜‰nŒn�b ¨™oœo­r°%¸©¬Ñ?Ô?Ð?ð �s�ð 	3ð 	3ˆAØ×"Ò"¥I­{Ð#;Ñ<Ô<ð 3ð 3Ø�•"�Q˜Ñ%Ô%¥r¨!¨S¡z¤zÑ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3à×"Ò"¥I­{Ð#;Ñ<Ô<ð 3ð 3Ø�•"�Q˜Ñ%Ô%¥r¨!¨S¡z¤zÑ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3øð	3ð 	3s$   ×>)X3Ø3X7	Ø:X7	Ù)ZÚZ	ÚZ	c                 ór   — g d¢}g d¢}d„ t          j        ||¦  «        D ¦   «         }|d„ |D ¦   «         z  }|S )N)rn  ro  rp  Ú1968Ú1969Ú1973r+  Ú2004Ú2005Ú2100rw  Ú2401)rd   ry  rz  z-02-28z-12-31z-01-05T12:30:56Zz-01-05T12:30:56.008Zc                 ó8   — g | ]\  }}t          ||z   ¦  «        ‘ŒS r'   rÂ   )Ú.0rm   rn   s      r   ú
<listcomp>z;TestDatetimeArithmetic.datetime_samples.<locals>.<listcomp>µ  s&   € ÐPÐPÐP™V˜a �r�!�a‘%‰yŒyÐPÐPÐPr   c                 ó.   — g | ]}t          |d ¦  «        ‘ŒS )r   rÂ   )r‹  r   s     r   rŒ  z;TestDatetimeArithmetic.datetime_samples.<locals>.<listcomp>¶  s    € Ð-Ð-Ð-˜q•�1�c‘
”
Ð-Ð-Ð-r   )rs   rt   )rp   Údt_yearsÚdt_suffixesÚdtss       r   Údatetime_samplesz'TestDatetimeArithmetic.datetime_samples°  sh   € ðCð Cð CˆðCð Cð CˆàPÐP¥yÔ'8¸À;Ñ'OÔ'OÐPÑPÔPˆØÐ-Ð- HÐ-Ñ-Ô-Ñ-ˆØˆ
r   c                 ó0  ‡ ‡— ‰                       t          ¦  «        Šdˆ ˆfd„	} |t          d¦  «        t          d¦  «        t          dd¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          d	d
¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          dd¦  «        ¦  «          |t          dd
¦  «        t          d¦  «        t          dd
¦  «        ¦  «          |t          dd
¦  «        t          d¦  «        t          dd¦  «        ¦  «          |t          d¦  «        t          d¦  «        t          d¦  «        ¦  «         ‰                      ¦   «         5  ‰                      ¦   «         }t          j        ||¦  «        D ][\  }}t          j	        t          |¦  «        t          |¦  «        ¦  «        sŒ5‰                       ‰||¦  «        ||z
  ||f¦  «         Œ\	 ddd¦  «         dS # 1 swxY w Y   dS )z1
        Test `datetime64 - datetime64`.
        Nc                 ó,  •— ‰                      ¦   «         5  ‰                      ‰| |¦  «        | |z
  | |f¦  «         ‰                      ‰|| ¦  «        || z
  | |f¦  «         ‰                     | |z
  |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r   rk  )rm   rn   r¬   rp   rm  s      €€r   r¿   z>TestDatetimeArithmetic.test_datetime_difference.<locals>.check¾  sç   ø€ Ø×,Ò,Ñ.Ô.ð 9ð 9Ø×'Ò'¨¨¨A¨q©	¬	°1°q±5¸1¸a¸&ÑAÔAÐAØ×'Ò'¨¨¨A¨q©	¬	°1°q±5¸1¸a¸&ÑAÔAÐAà×'Ò'¨¨A©¨xÑ8Ô8Ð8ð	9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9ð 9ð 9s   –A&B	Â	BÂBr)  Ú2017rð   r   r,  z2017-01iÝÿÿÿr   z
2014-02-28z
2015-03-01i’þÿÿr   rÁ   r+  z
2000-01-01r   )r   r.   r§   r¨   rh  r‘  rs   rt   r   r—   r   r©   )rp   r¿   r�  rm   rn   rm  s   `    @r   Útest_datetime_differencez/TestDatetimeArithmetic.test_datetime_difference¹  sH  øø€ ð �hŠh•{Ñ#Ô#ˆð	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	ˆ�b�‰jŒj�"˜V™*œ*¥b¨¨S¡k¤kÑ2Ô2Ð2Øˆ�b�‰mŒm�R 	™]œ]­B¨s°C©L¬LÑ9Ô9Ð9Øˆ�b�ÑÔ¥ <Ñ 0Ô 0µ"°T¸3±-´-Ñ@Ô@Ð@àˆ�b�˜‰nŒn�b ™jœj­"¨U°C©.¬.Ñ9Ô9Ð9Øˆ�b�˜‰nŒn�b Ñ.Ô.µ°5¸#±´Ñ?Ô?Ð?Øˆ�b�‰iŒi�˜E™œ¥B u¡I¤IÑ.Ô.Ð.à×(Ò(Ñ*Ô*ð 	Bð 	BØ×'Ò'Ñ)Ô)ˆCÝ!Ô)¨#¨sÑ3Ô3ð Bð B‘��1Ý*Ô4µZÀ±]´]ÅJÈqÁMÄMÑRÔRð ØØ×'Ò'¨¨¨A¨q©	¬	°1°q±5¸1¸a¸&ÑAÔAÐAÐAðBð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bs   Å7BHÈHÈHc           
      ó  ‡ ‡	‡
‡‡‡‡‡— ‰                       t          ¦  «        Š
‰                       t          ¦  «        Š‰                       t          ¦  «        Š‰                       t          ¦  «        Š‰                       t
          ¦  «        Š‰                       t          ¦  «        Šˆ
ˆˆˆˆˆˆ fd„Š	ˆ	ˆˆˆˆ fd„} ‰	t          d¦  «        t          d¦  «        d¦  «          ‰	t          d¦  «        t          d¦  «        d¦  «          ‰	t          d¦  «        t          d¦  «        d¦  «          ‰	t          d¦  «        t          dd	¦  «        d¦  «          ‰	t          d¦  «        t          dd	¦  «        d¦  «          ‰	t          d¦  «        t          dd	¦  «        d¦  «          ‰	t          d
¦  «        t          dd	¦  «        d¦  «          ‰	t          dd¦  «        t          dd¦  «        d¦  «          ‰	t          dd¦  «        t          dd¦  «        d¦  «          |t          dd¦  «        t          d¦  «        d¦  «          ‰	t          d¦  «        t          d¦  «        d¦  «         ‰                      ¦   «         }|D ]û}|j	        j
                             d¦  «        d         d d…         }t                               |¦  «        }t          ||dz   …         }|D ]�}|                     d|z  ¦  «        }t          j        t#          |¦  «        t#          |¦  «        ¦  «        sŒJ ‰	||d¦  «          |||t%          j        d|¦  «        z   d¦  «          ||t%          j        d|¦  «        z
  |d¦  «         ŒžŒüd S )Nc                 ó`  •— |}| }t          j        | ¦  «        st          j        |¦  «        �rd}d}‰                      ‰| |¦  «        | |f¦  «         ‰                      ‰| |¦  «        | |f¦  «         ‰                      ‰|| ¦  «        | |f¦  «         ‰                      ‰|| ¦  «        | |f¦  «         ‰                      ‰	| |¦  «        | |f¦  «         ‰                      ‰| |¦  «        | |f¦  «         ‰                      ‰	|| ¦  «        | |f¦  «         ‰                      ‰|| ¦  «        | |f¦  «         ‰                     ¦   «         5  ‰                      ‰| |¦  «        || ||f¦  «         ‰                      ‰|| ¦  «        || ||f¦  «         ‰                      ‰
| |¦  «        || ||f¦  «         ‰                      ‰
|| ¦  «        || ||f¦  «         |�r‰                      ‰| |¦  «        | |f¦  «         ‰                      ‰| |¦  «        | |f¦  «         ‰                      ‰|| ¦  «        | |f¦  «         ‰                      ‰|| ¦  «        | |f¦  «         ‰                      ‰	| |¦  «        | |f¦  «         ‰                      ‰| |¦  «        | |f¦  «         ‰                      ‰	|| ¦  «        | |f¦  «         ‰                      ‰|| ¦  «        | |f¦  «         ‰                     | |k    |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S rú   )rè   rü   ri   rh  r©   rh   )rm   rn   r¬   rý   rþ   rÿ   r  r  r  r	  r   rp   s        €€€€€€€r   Úcheck_eqz9TestDatetimeArithmetic.test_comparisons.<locals>.check_eqÝ  s²  ø€ Ø#ˆLØ#+˜|Ðõ Œx˜‰{Œ{ð 
3�bœh q™kœkñ 
3Ø$�Ø#'Ð Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2Ø× Ò    A q¡¤¨A¨q¨6Ñ2Ô2Ð2à×,Ò,Ñ.Ô.ð >ð >Ø×'Ò'¨¨¨1¨a©¬°,ÀÀAÀxÐ@PÑQÔQÐQØ×'Ò'¨¨¨1¨a©¬°,ÀÀAÀxÐ@PÑQÔQÐQØ×'Ò'¨¨¨1¨a©¬Ð2BÀQÈÈ8ÐDTÑUÔUÐUØ×'Ò'¨¨¨1¨a©¬Ð2BÀQÈÈ8ÐDTÑUÔUÐUØñ 
7à—O’O B B q¨!¡H¤H¨q°!¨fÑ5Ô5Ð5Ø—O’O B B q¨!¡H¤H¨q°!¨fÑ5Ô5Ð5Ø—O’O B B q¨!¡H¤H¨q°!¨fÑ5Ô5Ð5Ø—O’O B B q¨!¡H¤H¨q°!¨fÑ5Ô5Ð5à×$Ò$ R R¨¨1¡X¤X°°1¨vÑ6Ô6Ð6Ø×$Ò$ R R¨¨1¡X¤X°°1¨vÑ6Ô6Ð6Ø×$Ò$ R R¨¨1¡X¤X°°1¨vÑ6Ô6Ð6Ø×$Ò$ R R¨¨1¡X¤X°°1¨vÑ6Ô6Ð6à×'Ò'¨¨Qª°Ñ=Ô=Ð=ð#>ð >ð >ñ >ô >ð >ð >ð >ð >ð >ð >ð >øøøð >ð >ð >ð >ð >ð >s   ÅF>L#Ì#L'Ì*L'c                 ój  •— |}| }t          j        | ¦  «        st          j        |¦  «        rd}d}‰
                     ¦   «         5  ‰
                     t          ¦  «        }‰
                      || |¦  «        || ||f¦  «         ‰
                      ‰|| ¦  «        || ||f¦  «         ‰
                      ‰| |¦  «        || ||f¦  «         ‰
                      ‰	|| ¦  «        || ||f¦  «         |r ‰| |d¦  «         ‰
                     | |k     |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r  )rè   rü   rh  r   r;   r©   )rm   rn   r¬   rý   rþ   r	  r˜  r  r  r  rp   s         €€€€€r   Úcheck_ltz9TestDatetimeArithmetic.test_comparisons.<locals>.check_lt  sŸ  ø€ Ø#ˆLØ#+˜|Ðõ Œx˜‰{Œ{ð )�bœh q™kœkð )Ø$�Ø#(Ð à×,Ò,Ñ.Ô.ð 
=ð 
=Ø—X’X�jÑ)Ô)�Ø×'Ò'¨¨¨1¨a©¬°,ÀÀAÀxÐ@PÑQÔQÐQØ×'Ò'¨¨¨1¨a©¬°,ÀÀAÀxÐ@PÑQÔQÐQØ×'Ò'¨¨¨1¨a©¬Ð2BÀQÈÈ8ÐDTÑUÔUÐUØ×'Ò'¨¨¨1¨a©¬Ð2BÀQÈÈ8ÐDTÑUÔUÐUØð *à�H˜Q  5Ñ)Ô)Ð)à×'Ò'¨¨Aª¨|Ñ<Ô<Ð<ð
=ð 
=ð 
=ñ 
=ô 
=ð 
=ð 
=ð 
=ð 
=ð 
=ð 
=ð 
=øøøð 
=ð 
=ð 
=ð 
=ð 
=ð 
=s   ÁCD(Ä(D,Ä/D,r)  r”  Fz2014-01Tr|  r   z
2014-01-02r4  z2014-01-01T00:01:00Zr   z2014-01-01T00:01Zr   z2014-01-01T00:01:01ZrÁ   r   ú[rz   rñ   rµ   zM8[%s])r   r6   r9   r;   r>   r@   rB   r§   r‘  r   ÚstrÚsplitrw   ÚindexrY  r   r—   r   rè   Útimedelta64)rp   rš  r�  rm   Úa_unitrl   Úunitsr   rn   r˜  rÿ   r  r  r  r	  r   s   `        @@@@@@@r   Útest_comparisonsz'TestDatetimeArithmetic.test_comparisonsÔ  sœ  øøøøøøøø€ à�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆØ�XŠX•jÑ!Ô!ˆð#	>ð #	>ð #	>ð #	>ð #	>ð #	>ð #	>ð #	>ð #	>ð #	>ð #	>ðJ	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð 	=ð, 	ˆ•�F‘”�R ™ZœZ¨Ñ/Ô/Ð/Øˆ•�F‘”�R 	™]œ]¨DÑ1Ô1Ð1Øˆ•�F‘”�R Ñ-Ô-¨tÑ4Ô4Ð4Øˆ•�F‘”�R ¨cÑ2Ô2°DÑ9Ô9Ð9Øˆ•�I‘”¥ <°Ñ 5Ô 5°tÑ<Ô<Ð<àˆ•�LÑ!Ô!¥2 l°CÑ#8Ô#8¸%Ñ@Ô@Ð@Øˆ•�LÑ!Ô!¥2 l°CÑ#8Ô#8¸$Ñ?Ô?Ð?àˆ•Ð*¨CÑ0Ô0ÝÐ$ cÑ*Ô*¨Dñ	2ô 	2ð 	2àˆ•Ð*¨CÑ0Ô0ÝÐ$ cÑ*Ô*¨Eñ	3ô 	3ð 	3ð 	ˆ•�E˜3‘”¥ F¡¤¨TÑ2Ô2Ð2Øˆ•�E‘”�B˜u™IœI tÑ,Ô,Ð,ð ×#Ò#Ñ%Ô%ˆØð 	?ð 	?ˆAà”W”[×&Ò& sÑ+Ô+¨AÔ.¨s°¨sÔ3ˆFÝ—’ Ñ'Ô'ˆAÝ˜a  !¡˜eÔ$ˆEØð ?ð ?�à—H’H˜X¨™_Ñ-Ô-�Ý*Ô4µZÀ±]´]Ý5?À±]´]ñDô Dð àØ�˜˜A˜tÑ$Ô$Ð$Ø�˜˜A¥¤¨q°$Ñ 7Ô 7Ñ7¸Ñ>Ô>Ð>Ø�˜�Rœ^¨A¨tÑ4Ô4Ñ4°a¸Ñ>Ô>Ð>Ð>ð?ð	?ð 	?r   c                 ó�  ‡ ‡‡— ‰                       ‰¦  «        Šˆˆ ˆfd„}t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        ft          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        ffD ])}t          j        ||¦  «        D ]\  }} |||¦  «         ŒŒ*d S )Nc                 ó\   •— ‰                       ‰| |¦  «         ‰| |¦  «        ¦  «         d S r   rÕ   rD  s     €€€r   r¿   z3TestDatetimeArithmetic._test_min_max.<locals>.check<  rF  r   r   r"   rz   r¦   rÁ   r   )r   r§   rs   rt   rG  s   ``    @r   rI  z$TestDatetimeArithmetic._test_min_max:  sæ   øøø€ Ø�HŠH�WÑÔˆð	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<õ ��4‰[Œ[�"˜Q ™+œ+¥r¨!¨T¡{¤{µB°u¸d±O´OÐDÝ��3‰ZŒZ�˜A˜s™œ¥R¨¨3¡Z¤Zµ°E¸3±´Ð@ð
ð 	ð 	ˆEõ "Ô)¨%°Ñ7Ô7ð ð ‘��1Ø��a˜‘”��ðð		ð 	r   c                 ó:   — |                       t          ¦  «         d S r   rK  rL  s    r   rM  zTestDatetimeArithmetic.test_minF  rN  r   c                 ó:   — |                       t          ¦  «         d S r   rP  rL  s    r   rQ  zTestDatetimeArithmetic.test_maxI  rN  r   N)rœ   r�   rž   rR  rÐ   r   Ú
contextlibÚcontextmanagerrh  r�  r‘  r•  r¢  rI  rM  rQ  r'   r   r   r^  r^  ^  sÅ   € € € € € àˆd˜DÐ!Ñ!Ô!€Gð+ð +ð +ð Ôðð ñ Ôðð?3ð ?3ð ?3ðBð ð ðBð Bð Bð6d?ð d?ð d?ðL
ð 
ð 
ð(ð (ð (ð(ð (ð (ð (ð (r   r^  c                   ó&   — e Zd Z ed¬¦  «        ZdS )ÚTestDatetimeArithmeticNoPythonTr¤   N)rœ   r�   rž   rR  rÐ   r'   r   r   rª  rª  L  s    € € € € € àˆd˜DÐ!Ñ!Ô!€G€G€Gr   rª  c                   ó*   — e Zd ZdZd„ Zd„ Zd„ Zd„ ZdS )ÚTestMetadataScalingFactorzf
    Tests than non-1 scaling factors are not supported in datetime64
    and timedelta64 dtypes.
    c                 ó®   —  t          di |¤Žt          ¦  «        }|                       |t          dd¦  «        t          d¦  «        ¦  «        ¦  «         d S )Nr)  Ú10YÚ2010r'   )r   r6   rh   r§   ©rp   rÐ   rÿ   s      r   Útest_datetimez'TestMetadataScalingFactor.test_datetimeW  sO   € Ø�Sˆ^ˆ^�7ˆ^ˆ^�JÑ'Ô'ˆØ�Š˜˜�2˜f eÑ,Ô,­b°©j¬jÑ9Ô9Ñ:Ô:Ð:Ð:Ð:r   c                 óŒ   — |                       ¦   «         5  |                      d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S ©NTr¤   )ÚassertTypingErrorr±  rL  s    r   Útest_datetime_npmz+TestMetadataScalingFactor.test_datetime_npm[  s�   € Ø×#Ò#Ñ%Ô%ð 	.ð 	.Ø×Ò¨ÐÑ-Ô-Ð-ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.ð 	.ð 	.ó   •9¹=Á =c           	      ó°   —  t          di |¤Žt          ¦  «        }|                       |t          dd¦  «        t          dd¦  «        ¦  «        ¦  «         d S )Nr¦   r®  é   r   r'   )r   r6   rh   r¨   r°  s      r   Útest_timedeltaz(TestMetadataScalingFactor.test_timedelta_  sO   € Ø�Sˆ^ˆ^�7ˆ^ˆ^�JÑ'Ô'ˆØ�Š˜˜�2˜a ™<œ<­¨B°©¬Ñ5Ô5Ñ6Ô6Ð6Ð6Ð6r   c                 óŒ   — |                       ¦   «         5  |                      d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r³  )r´  r¹  rL  s    r   Útest_timedelta_npmz,TestMetadataScalingFactor.test_timedelta_npmc  s�   € Ø×#Ò#Ñ%Ô%ð 	/ð 	/Ø×Ò¨ÐÑ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/r¶  N)rœ   r�   rž   rŸ   r±  rµ  r¹  r»  r'   r   r   r¬  r¬  Q  sZ   € € € € € ðð ð
;ð ;ð ;ð.ð .ð .ð7ð 7ð 7ð/ð /ð /ð /ð /r   r¬  c                   ó   — e Zd Zd„ ZdS )ÚTestDatetimeDeltaOpsc                 óh  — d„ }|}t          |¦  «        }t          j        dt          ¦  «        t          j        dt          ¦  «        ft          j        dt          ¦  «        t          j        dt          ¦  «        ft          j        dt          ¦  «        t          j        dt          ¦  «        ft          j        dt          ¦  «        t          j        dt          ¦  «        ft          j        dt          ¦  «        dft          j        dt          ¦  «        t          j        dt          j        ¦  «        ft          j        dt          ¦  «        t          j        dt          j        ¦  «        fg}|D ]A\  }}|                      t          j         |||¦  «         |||¦  «        ¦  «        ¦  «         ŒBdS )zC
        Test the division of a timedelta by numeric types
        c                 ó   — | |z  S r   r'   )rm   rn   s     r   Úarr_divz.TestDatetimeDeltaOps.test_div.<locals>.arr_divm  s   € Ø�q‘5ˆLr   r´   rz   N)	r   rè   ÚonesÚTIMEDELTA_MÚTIMEDELTA_Yr¶   Úfloat64rh   Úarray_equal)rp   rÀ  Úpy_funcÚcfuncÚ
test_casesrm   rn   s          r   ró   zTestDatetimeDeltaOps.test_divi  sZ  € ð	ð 	ð 	ð ˆÝ�W‘”ˆåŒW�Q�Ñ$Ô$¥b¤g¨aµÑ&=Ô&=Ð>ÝŒW�Q�Ñ$Ô$¥b¤g¨aµÑ&=Ô&=Ð>ÝŒW�Q�Ñ$Ô$¥b¤g¨aµÑ&=Ô&=Ð>ÝŒW�Q�Ñ$Ô$¥b¤g¨aµÑ&=Ô&=Ð>ÝŒW�Q�Ñ$Ô$ aÐ(ÝŒW�Q�Ñ$Ô$¥b¤g¨aµ´Ñ&:Ô&:Ð;ÝŒW�Q�Ñ$Ô$¥b¤g¨aµ´Ñ&<Ô&<Ð=ð
ˆ
ð ð 	Hð 	H‰DˆAˆqØ�OŠO�BœN¨7¨7°1°a©=¬=¸%¸%ÀÀ1¹+¼+ÑFÔFÑGÔGÐGÐGð	Hð 	Hr   N)rœ   r�   rž   ró   r'   r   r   r½  r½  h  s(   € € € € € ðHð Hð Hð Hð Hr   r½  c                   óà   — e Zd Zd„ Zd„ Zed„ ¦   «         Zd„ Zed„ ¦   «         Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         ZdS )ÚTestDatetimeArrayOpsc           
      óò  ‡— ˆfd„}t          j        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        gd¬¦  «        }t          j        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        gd¬¦  «        }|} t          |¬	¦  «        |¦  «        }|t          j        d
¦  «        f|t          j        d
¦  «        f|t          j        d¦  «        f|t          j        d¦  «        fg}‰t           j        u ri|                     t          j        d
¦  «        |ft          j        d
¦  «        |ft          j        d¦  «        |ft          j        d¦  «        |fg¦  «         |D ]A\  }	}
|                      t          j         ||	|
¦  «         ||	|
¦  «        ¦  «        ¦  «         ŒBdS )zY
        Test the addition/subtraction of a datetime array with a timedelta type
        c                 ó   •—  ‰| |¦  «        S r   r'   ©rm   rn   Ú	operations     €r   Úimplz6TestDatetimeArrayOps._test_td_add_or_sub.<locals>.impl…  s   ø€ Ø�9˜Q ‘?”?Ð"r   ú
2011-01-01ú
1971-02-02ú
2021-03-03ú
2004-12-07rW  ©r   zdatetime64[D]©Úparalleléè  iã*ÿÿN)	rè   ÚarrayÚ
datetime64r   rŸ  rl  Úextendrh   rÅ  )rp   rÎ  rÖ  rÏ  Úarr_oneÚarr_tworÆ  rÇ  rÈ  rm   rn   s    `         r   Ú_test_td_add_or_subz(TestDatetimeArrayOps._test_td_add_or_sub�  s  ø€ ð	#ð 	#ð 	#ð 	#ð 	#õ ”(Ýœ lÑ3Ô3Ýœ lÑ3Ô3Ýœ lÑ3Ô3Ýœ lÑ3Ô3ð	ð
 .ð/ñ /ô /ˆõ ”(Ýœ lÑ3Ô3Ýœ lÑ3Ô3Ýœ lÑ3Ô3Ýœ lÑ3Ô3ð	ð
 -ð.ñ .ô .ˆð ˆØ'•˜hÐ'Ñ'Ô'¨Ñ-Ô-ˆà•b”n TÑ*Ô*Ð+Ø•b”n TÑ*Ô*Ð+Ø•b”n VÑ,Ô,Ð-Ø•b”n VÑ,Ô,Ð-ð	
ˆ
ð �œÐÐØ×ÒÝ” Ñ%Ô% wÐ/Ý” Ñ%Ô% wÐ/Ý” Ñ'Ô'¨Ð1Ý” Ñ'Ô'¨Ð1ð	ñ ô ð ð ð 	Hð 	H‰DˆAˆqØ�OŠO�BœN¨7¨7°1°a©=¬=¸%¸%ÀÀ1¹+¼+ÑFÔFÑGÔGÐGÐGð	Hð 	Hr   c                 óF   — |                       t          j        d¦  «         d S r  ©rÝ  rè   rl  rL  s    r   Útest_add_tdz TestDatetimeArrayOps.test_add_td§  s    € Ø× Ò ¥¤¨Ñ/Ô/Ð/Ð/Ð/r   c                 óF   — |                       t          j        d¦  «         d S ©NTrß  rL  s    r   Útest_add_td_parallelz)TestDatetimeArrayOps.test_add_td_parallelª  s    € à× Ò ¥¤¨Ñ.Ô.Ð.Ð.Ð.r   c                 óF   — |                       t          j        d¦  «         d S r  ©rÝ  rè   ÚsubtractrL  s    r   Útest_sub_tdz TestDatetimeArrayOps.test_sub_td®  s    € Ø× Ò ¥¤¨eÑ4Ô4Ð4Ð4Ð4r   c                 óF   — |                       t          j        d¦  «         d S râ  rå  rL  s    r   Útest_sub_td_parallelz)TestDatetimeArrayOps.test_sub_td_parallel±  s    € à× Ò ¥¤¨dÑ3Ô3Ð3Ð3Ð3r   c                 ól  ‡— t           ˆfd„¦   «         }‰j        }t          j        d|› d�¦  «        }|                      t
          t          f|¦  «        5   |t          j        t          j	        d¦  «        gd¬¦  «        t          j
        dd¦  «        ¦  «         d	d	d	¦  «         d	S # 1 swxY w Y   d	S )
z•
        Tests that attempting to add/sub a datetime64 and timedelta64
        with types that cannot be cast raises a reasonable exception.
        c                 ó   •—  ‰| |¦  «        S r   r'   rÍ  s     €r   rÏ  z<TestDatetimeArrayOps._test_add_sub_td_no_match.<locals>.implº  s   ø€ à�9˜Q ‘?”?Ð"r   zufunc 'z<' is not supported between datetime64[ns] and timedelta64[M]rÐ  rW  rÔ  r×  r   N)r   rœ   ÚreÚescapeÚassertRaisesRegexr	   rÙ   rè   rØ  rÙ  rŸ  )rp   rÎ  rÏ  Úfnamer¬   s    `   r   Ú_test_add_sub_td_no_matchz.TestDatetimeArrayOps._test_add_sub_td_no_matchµ  s'  ø€ õ
 
ð	#ð 	#ð 	#ð 	#ñ 
Œð	#ð Ô"ˆÝ”9ð B¨ð Bð Bð Bñ Dô Dˆà×#Ò#¥[µ)Ð$<¸hÑGÔGð 	ð 	ØˆDÝ”�"œ-¨Ñ5Ô5Ð7Ø/ð1ñ 1ô 1å”˜t CÑ(Ô(ñô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   ÁAB)Â)B-Â0B-c                 óD   — |                       t          j        ¦  «         d S r   )rð  rè   rl  rL  s    r   Útest_add_td_no_matchz)TestDatetimeArrayOps.test_add_td_no_matchÈ  s   € Ø×&Ò&¥r¤vÑ.Ô.Ð.Ð.Ð.r   c                 óD   — |                       t          j        ¦  «         d S r   )rð  rè   ræ  rL  s    r   Útest_sub_td_no_matchz)TestDatetimeArrayOps.test_sub_td_no_matchË  s   € Ø×&Ò&¥r¤{Ñ3Ô3Ð3Ð3Ð3r   c                 óð	  ‡— |r‰t           j        u rd„ }n	d„ }nˆfd„}|} t          |¬¦  «        |¦  «        }t          j        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        t	          d	d¦  «        g¦  «        t          j        t	          d
d¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        g¦  «        t          j        t	          d
d¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        g¦  «        t          j        t	          d
d¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        g¦  «        t          j        t	          dd¦  «        t	          d
d¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        g¦  «        t          j        t	          dd¦  «        t	          dd¦  «        g¦  «        t          j        t	          dd¦  «        t	          dd¦  «        t	          dd¦  «        g¦  «        t          j        t          dd¦  «        t          dd¦  «        t          d	d¦  «        t          dd¦  «        g¦  «        t          j        t          dd¦  «        t          dd¦  «        t          d	d¦  «        t          dd¦  «        g¦  «        t          j        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          d	d¦  «        t          dd¦  «        g¦  «        t          j        t          dd¦  «        t          dd¦  «        t          d	d¦  «        t          dd¦  «        t          dd¦  «        g¦  «        t          j        t          dd¦  «        g¦  «        t          j        t          dd¦  «        t          dd¦  «        t          dd¦  «        g¦  «        g}|D ]¥} ||¦  «        }	 ||¦  «        }
t          j        |	¦  «        st          j        |
¦  «        rO|                      t          j        |	¦  «        ¦  «         |                      t          j        |
¦  «        ¦  «         Œ�|                      |	|
¦  «         Œ¦d S )Nc                 ó*   — |                       ¦   «         S r   rQ   ©Úarrs    r   rÏ  z0TestDatetimeArrayOps._test_min_max.<locals>.implÑ  ó   € ØŸ7š7™9œ9Ð$r   c                 ó*   — |                       ¦   «         S r   rV   r÷  s    r   rÏ  z0TestDatetimeArrayOps._test_min_max.<locals>.implÔ  rù  r   c                 ó   •—  ‰| ¦  «        S r   r'   )rø  rÎ  s    €r   rÏ  z0TestDatetimeArrayOps._test_min_max.<locals>.impl×  s   ø€ Ø �y ‘~”~Ð%r   rÕ  r   r"   rz   r¦   r´   rÐ  rÑ  z
1900-01-01rÒ  rÓ  r   rÁ   r»   )	rè   rR   r   rØ  r§   r¨   rü   rh   r�   )rp   rÎ  rÖ  ÚmethodrÏ  rÆ  rÇ  rÈ  rø  Úpy_resÚc_ress    `         r   rI  z"TestDatetimeArrayOps._test_min_maxÎ  s»  ø€ Øð 		&Ø�BœFÐ"Ð"ð%ð %ð %ð %ð%ð %ð %ð %ð&ð &ð &ð &ð &ð ˆØ'•˜hÐ'Ñ'Ô'¨Ñ-Ô-ˆõ ŒHÝ�1�d‘”Ý�1�d‘”Ý�1�d‘”Ý�1�d‘”ð	ñ ô õ ŒHÝ�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&ðñ ô õ ŒHÝ�< Ñ%Ô%Ý�< Ñ%Ô%Ý�< Ñ%Ô%Ý�< Ñ%Ô%Ý�< Ñ%Ô%ðñ ô õ ŒHÝ�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�5˜$‘”ðñ ô õ ŒHÝ�5˜$‘”Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&Ý�< Ñ&Ô&ðñ ô õ ŒHÝ�< Ñ&Ô&Ý�5˜$‘”ðñ ô õ ŒHÝ�5˜$‘”Ý�5˜$‘”Ý�5˜$‘”ðñ ô õ
 ŒHÝ�1�d‘”Ý�1�d‘”Ý�1�d‘”Ý�1�d‘”ð	ñ ô õ ŒHÝ�1�c‘
”
Ý�1�c‘
”
Ý�1�c‘
”
Ý�1�c‘
”
ð	ñ ô õ ŒHÝ�5˜$‘”Ý�1�d‘”Ý�1�d‘”Ý�1�d‘”Ý�1�d‘”ðñ ô õ ŒHÝ�1�d‘”Ý�1�d‘”Ý�1�d‘”Ý�1�d‘”Ý�5˜$‘”ðñ ô õ ŒHÝ�5˜$‘”ðñ ô õ ŒHÝ�5˜$‘”Ý�5˜$‘”Ý�5˜$‘”ðñ ô ðWP
ˆ
ðd ð 	0ð 	0ˆCØ�W˜S‘\”\ˆFØ�E˜#‘J”JˆEÝŒx˜ÑÔð 0¥2¤8¨E¡?¤?ð 0Ø—’¥¤¨Ñ 0Ô 0Ñ1Ô1Ð1Ø—’¥¤¨¡¤Ñ0Ô0Ð0Ð0à× Ò  ¨Ñ/Ô/Ð/Ð/ð	0ð 	0r   c                 ó>   — |                       t          dd¦  «         d S r  )rI  rR   rL  s    r   Útest_min_funcz"TestDatetimeArrayOps.test_min_func8  ó    € Ø×Ò�3  uÑ-Ô-Ð-Ð-Ð-r   c                 óH   — |                       t          j        dd¦  «         d S r  ©rI  rè   rR   rL  s    r   Útest_np_min_funcz%TestDatetimeArrayOps.test_np_min_func;  ó"   € Ø×Ò�2œ6 5¨%Ñ0Ô0Ð0Ð0Ð0r   c                 óH   — |                       t          j        dd¦  «         d S rú   r  rL  s    r   Útest_min_methodz$TestDatetimeArrayOps.test_min_method>  ó"   € Ø×Ò�2œ6 5¨$Ñ/Ô/Ð/Ð/Ð/r   c                 ó>   — |                       t          dd¦  «         d S r  )rI  rW   rL  s    r   Útest_max_funcz"TestDatetimeArrayOps.test_max_funcA  r  r   c                 óH   — |                       t          j        dd¦  «         d S r  ©rI  rè   rW   rL  s    r   Útest_np_max_funcz%TestDatetimeArrayOps.test_np_max_funcD  r  r   c                 óH   — |                       t          j        dd¦  «         d S rú   r  rL  s    r   Útest_max_methodz$TestDatetimeArrayOps.test_max_methodG  r  r   c                 óH   — |                       t          j        dd¦  «         d S ©NTFr  rL  s    r   Útest_min_func_parallelz+TestDatetimeArrayOps.test_min_func_parallelJ  ó"   € à×Ò�2œ6 4¨Ñ/Ô/Ð/Ð/Ð/r   c                 óH   — |                       t          j        dd¦  «         d S râ  r  rL  s    r   Útest_min_method_parallelz-TestDatetimeArrayOps.test_min_method_parallelN  ó"   € à×Ò�2œ6 4¨Ñ.Ô.Ð.Ð.Ð.r   c                 óH   — |                       t          j        dd¦  «         d S r  r  rL  s    r   Útest_max_func_parallelz+TestDatetimeArrayOps.test_max_func_parallelR  r  r   c                 óH   — |                       t          j        dd¦  «         d S râ  r  rL  s    r   Útest_max_method_parallelz-TestDatetimeArrayOps.test_max_method_parallelV  r  r   N)rœ   r�   rž   rÝ  rà  r   rã  rç  ré  rð  rò  rô  rI  r   r  r  r
  r  r  r  r  r  r  r'   r   r   rÊ  rÊ    s‡  € € € € € ð$Hð $Hð $HðL0ð 0ð 0ð ð/ð /ñ Ôð/ð5ð 5ð 5ð ð4ð 4ñ Ôð4ðð ð ð&/ð /ð /ð4ð 4ð 4ðh0ð h0ð h0ðT.ð .ð .ð1ð 1ð 1ð0ð 0ð 0ð.ð .ð .ð1ð 1ð 1ð0ð 0ð 0ð ð0ð 0ñ Ôð0ð ð/ð /ñ Ôð/ð ð0ð 0ñ Ôð0ð ð/ð /ñ Ôð/ð /ð /r   rÊ  Ú__main__)CrŸ   r§  rs   rì  Úunittestrd  Únumpyrè   Únumbar   r   r   Únumba.np.numpy_supportr   Ú
numba.corer   r   Únumba.core.errorsr	   Únumba.tests.supportr
   r   r   Únumba.npr   r   r   rÂ  rÃ  r   ru   rv   rw   r+   r.   r0   r2   r4   r6   r9   r;   r>   r@   rB   rE   rH   rK   rO   rS   rX   r[   r`   rb   rŸ  r¨   rÙ  r§   r¡   rÊ   rT  r^  rª  r¬  r½  rÊ  rœ   Úmainr'   r   r   ú<module>r%     s%  ððð ð Ð Ð Ð Ø Ð Ð Ð Ø 	€	€	€	Ø €€€Ø €€€à Ð Ð Ð à &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø $Ð $Ð $Ð $Ð $Ð $Ð $Ð $Ø )Ð )Ð )Ð )Ð )Ð )Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6àˆbŒhÐ'Ñ(Ô(€ØˆbŒhÐ'Ñ(Ô(€ðð ð ð
 €
ØJ€
à˜Ñ#€	ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðs&ð s&ð s&ð s&ð s&˜ñ s&ô s&ð s&ðl „^€Ø„]€ð3ð 3ð 3ð 3ð 3˜ñ 3ô 3ð 3ðlp(ð p(ð p(ð p(ð p(˜hñ p(ô p(ð p(ðf	ð ð ð ð Ð&=ñ ô ð ð4l(ð l(ð l(ð l(ð l(˜Xñ l(ô l(ð l(ð\"ð "ð "ð "ð "Ð%;ñ "ô "ð "ð
/ð /ð /ð /ð / ñ /ô /ð /ð.Hð Hð Hð Hð H˜8ñ Hô Hð Hð.Y/ð Y/ð Y/ð Y/ð Y/˜8ñ Y/ô Y/ð Y/ðx ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr   