+
    X°³jŸ„  ã                   óš   € ^ RI t ^ RIt^ RIt^ RIHtHtHt ^ RIHtH	t	H
t
HtHtHtHtHtHt  ! R R4      t ! R R4      t ! R R	4      tR# )
é    N)Ú	histogramÚhistogram_bin_edgesÚhistogramdd)	Úassert_Úassert_allcloseÚassert_almost_equalÚassert_array_almost_equalÚassert_array_equalÚassert_array_max_ulpÚassert_equalÚassert_raisesÚassert_raises_regexc                   ó0  a € ] tR t^t o R tR tR tR tR tR t	R t
R tR	 tR
 tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR tR t R t!R t"R  t#]$PJ                  PM                  R!R"7      R# 4       t'R$ t(R% t)R&t*V t+R'# )(ÚTestHistogramc                ó   € R # ©N© ©Úselfs   &Ú`/home/luca/screen-checking/.venv/lib/python3.14/site-packages/numpy/lib/tests/test_histograms.pyÚsetup_methodÚTestHistogram.setup_method   ó   € Ùó    c                ó   € R # r   r   r   s   &r   Úteardown_methodÚTestHistogram.teardown_method   r   r   c                ó  € ^dp\         P                  P                  V4      p\        V4      w  r4\	        \         P
                  ! V^ R7      V4       \        \         P                  ! ^ ^
^d4      4      w  r4\        V^
4       R# )éd   ©ÚaxisN)ÚnpÚrandomÚrandr   r   ÚsumÚlinspacer
   )r   ÚnÚvÚaÚbs   &    r   Útest_simpleÚTestHistogram.test_simple   s^   € ØˆÜ�I‰I�N‰N˜1ÓˆÜ˜1“‰ˆä”R—V’V˜A AÔ&¨Ô*ô œ2Ÿ;š; q¨"¨cÓ2Ó3‰ˆÜ˜1˜bÖ!r   c                ó:  € \        . RO^^.4      w  r\        V^.4       \        V^^.4       \        \        \         ^^.^ R7       \        ^^.^R7      w  r4\	        V\
        P                  ! ^.4      4       \        V\
        P                  ! RR.4      4       R# )é   ©Úbinsç      ð?ç       @N©r.   é   é   é   )r   r
   r   Ú
ValueErrorr   r"   Úarrayr   )r   ÚhistÚedgesÚhÚes   &    r   Útest_one_binÚTestHistogram.test_one_bin'   s}   € ä¢¨q°!¨fÓ5‰ˆÜ˜4 ! Ô'Ü˜5 1 a &Ô)Ü”j¤)¨a°¨V¸!Õ<Ü˜!˜Q˜ aÔ(‰ˆÜ�QœŸš ! ›Ô&Ü˜œ2Ÿ8š8 R¨ HÓ-Ö.r   c                ó  € ^dp\         P                  P                  V4      p\        VRR7      w  r4\         P                  ! V\         P
                  ! V4      ,          4      p\        V^4       \         P                  ! ^
4      p. R	Op\        W&RR7      w  r4\        VR4       \        \         P                  ! V\         P
                  ! V4      ,          4      ^4       \        W&RR7      w  r4\        V. R
O4       \         P                  ! ^
4      p^ ^^^\         P                  .p\        W&RR7      w  r4\        V. RO4       \         P                  ! . R
ORR\         P                  .RR7      w  rx\        VR^ .4       R# )r   T©Údensityçš™™™™™¹?Fç      à?ç      ø?ç      Ð?N©r   r.   r5   é   é
   r3   )rB   rB   rB   ç        )r"   r#   r$   r   r%   Údiffr   Úaranger
   r   Úinf)	r   r'   r(   r)   r*   Úarear0   ÚcountsÚdmys	   &        r   Útest_densityÚTestHistogram.test_density1   s  € àˆÜ�I‰I�N‰N˜1ÓˆÜ˜ DÔ)‰ˆÜ�vŠv�aœ"Ÿ'š' !›*•nÓ%ˆÜ˜D !Ô$ô �IŠI�b‹MˆÚˆÜ˜¨$Ô/‰ˆÜ˜1˜bÔ!Ü”R—V’V˜A¤§¢¨£
�NÓ+¨QÔ/ô ˜¨%Ô0‰ˆÜ˜1šlÔ+ô �IŠI�b‹MˆØ�1�a˜œBŸF™FÐ#ˆÜ˜¨$Ô/‰ˆÜ˜1Ò.Ô/ô —l’lÚ˜3 ¤R§V¡VÐ,°dô<‰ˆä�V˜c 1˜XÖ&r   c                óŠ  € \         P                  ! ^
4      R,           p\        V^ ^	.R7      w  r#\        VP	                  4       ^	4       \        V^^
.R7      w  r#\        VP	                  4       ^	4       \        V^^	.RR7      w  r#\        V\         P                  ! V4      ,          P	                  4       ^^R7       \         P                  ! ^
4      R,           p\        V^^	.VRR7      w  r#\        V\         P                  ! V4      ,          P	                  4       ^4       \        V^^^	.VR7      w  r#\        W$^R	 4       R# )
rH   rC   ©ÚrangeT©rT   rA   ©Údecimal©rT   ÚweightsrA   ©r0   rT   rY   Néÿÿÿÿ)r"   rK   r   r   r%   r   rJ   )r   r)   r;   r*   Úws   &    r   Útest_outliersÚTestHistogram.test_outliersQ   s   € ä�IŠI�b‹M˜BÕˆô ˜ 1 a &Ô)‰ˆÜ�Q—U‘U“W˜aÔ ô ˜ 1 b 'Ô*‰ˆÜ�Q—U‘U“W˜aÔ ô ˜ 1 a &°$Ô7‰ˆÜ˜Q¤§¢¨£�^×0Ñ0Ó2°A¸rÕBô �IŠI�b‹M˜BÕˆÜ˜ 1 a &°!¸TÔB‰ˆÜ�aœ"Ÿ'š' !›*•n×)Ñ)Ó+¨QÔ/ä˜ ¨1¨a¨&¸!Ô<‰ˆÜ�Q˜!˜B˜Ö r   c           	     ó
  € \         P                  ! ^
4      R,           p\         P                  ! ^4      R,           p\        \        R4      ;_uu_ 4        \	        V^^	.VRR7      w  r4RRR4       R#   + '       g   i     R# ; i)rH   rC   zsame shape asTrX   N)r"   rK   r   r7   r   )r   r)   r\   r;   r*   s   &    r   Útest_arr_weights_mismatchÚ'TestHistogram.test_arr_weights_mismatchi   sX   € Ü�IŠI�b‹M˜BÕˆÜ�IŠI�b‹M˜BÕˆÜ ¤¨_×=Õ=Ü˜Q q¨! f°aÀÔF‰DˆA÷ >×=×=Ò=ús   ÁA1Á1B	c                óØ  € \         P                  ! ^
4      R,           p\        V4      w  r#\        \         P                  ! VP
                  \         P                  4      4       \        VRR7      w  r#\        \         P                  ! VP
                  \         P                  4      4       \        V\         P                  ! ^
\        4      R7      w  r#\        \         P                  ! VP
                  \         P                  4      4       \        V\         P                  ! ^
\        4      R7      w  r#\        \         P                  ! VP
                  \         P                  4      4       R# )rH   rC   Tr@   ©rY   N)r"   rK   r   r   Ú
issubdtypeÚdtypeÚintegerÚfloatingÚonesÚintÚfloat)r   r)   r;   r*   s   &   r   Ú	test_typeÚTestHistogram.test_typeo   sË   € ä�IŠI�b‹M˜BÕˆÜ˜‹|‰ˆÜ”—’˜aŸg™g¤r§z¡zÓ2Ô3ä˜ DÔ)‰ˆÜ”—’˜aŸg™g¤r§{¡{Ó3Ô4ä˜¤B§G¢G¨B´Ó$4Ô5‰ˆÜ”—’˜aŸg™g¤r§z¡zÓ2Ô3ä˜¤B§G¢G¨B´Ó$6Ô7‰ˆÜ”—’˜aŸg™g¤r§{¡{Ó3Ö4r   c                ó  € \         P                  ! . RO\         P                  R7      p\         P                  ! . RO\         P                  R7      p\         P                  ! W^dR7      w  r4p\	        VP                  4       R4       R# )ç2V›ÿEq@©re   r/   ç      @N)rn   g“áx>fQÀg-³ÅVT5@)g!çý°�³@gö·àS�±@g§’ ^z·@)r"   r8   Úfloat32Úhistogram2dr   r%   )r   ÚxÚyÚcounts_histÚxedgesÚyedgess   &     r   Útest_f32_roundingÚTestHistogram.test_f32_rounding~   sR   € ä�HŠHÒ8ÄÇ
Á
ÔKˆÜ�HŠHÒ<ÄBÇJÁJÔOˆÜ&(§n¢n°QÀÔ&DÑ#ˆ˜VÜ�[—_‘_Ó&¨Ö+r   c                óh  € \         P                  ! . RO\         P                  R7      p\         P                  ! V4      w  r#\        P
                  ! \        RR7      ;_uu_ 4        \         P                  ! . RO4      w  rE\        WB4       \        WS4       RRR4       R#   + '       g   i     R# ; i)r.   ro   zConverting input from .*©ÚmatchN)r.   r.   r   )TTF)r"   r8   Úuint8r   ÚpytestÚwarnsÚRuntimeWarningr
   )r   r)   Úint_histÚ	int_edgesr9   r:   s   &     r   Útest_bool_conversionÚ"TestHistogram.test_bool_conversion…   sm   € ô �HŠH’Y¤b§h¡hÔ/ˆÜ Ÿlšl¨1›oÑˆô
 �\Š\œ.Ð0J×KÖKÜŸ,š,Ò':Ó;‰KˆDä˜tÔ.Ü˜uÔ0÷	 L×K×KÒKús   Á%1B Â B1	c                ó„  € \         P                  P                  ^d4      p\         P                  ! ^d4      ^,          p\	        V4      w  r4\	        VRR7      w  rV\	        WR7      w  rx\	        WRR7      w  rš\        V^,          V4       \        WY4       \         P                  ! ^ ^
^
4      p\         P                  ! \         P                  ! ^4      \         P                  ! ^4      34      p\	        V\         P                  ! ^4      VR7      w  rx\        Wr4       \	        . R
O^. ROR7      w  rx\        V. RO4       \	        . R
O^. RORR7      w  rx\        V\         P                  ! . RO4      R,          R,          ^,          4       \	        \         P                  ! ^	4      . RO. RORR7      w  r4\        V. RO4       R	# )r   Tr@   rc   ©rY   rA   ©r0   rY   )r0   rY   rA   g      $@rp   N)r.   r4   r4   r6   )r6   r5   r4   r.   )r6   é   r   r.   rF   )	r4   r.   r.   r.   r.   r.   r.   r.   r.   )çš™™™™™É?rB   rB   g333333³?)r"   r#   r$   rh   r   r	   r&   ÚconcatenateÚzerosrK   r
   r8   r   )r   r(   r\   r)   r*   ÚnaÚnbÚwaÚwbÚnwaÚnwbs   &          r   Útest_weightsÚTestHistogram.test_weights”   sH  € Ü�I‰I�N‰N˜3ÓˆÜ�GŠG�C‹L˜1ÕˆÜ˜‹|‰ˆÜ˜1 dÔ+‰ˆÜ˜1Ô(‰ˆÜ˜Q°4Ô8‰ˆÜ! ! a¥%¨Ô,Ü! "Ô*ô �KŠK˜˜2˜rÓ"ˆÜ�NŠNœBŸHšH Q›K¬¯ª°«Ð4Ó5ˆÜ˜1¤2§9¢9¨R£=¸!Ô<‰ˆÜ! "Ô(ô š<¨aºÔF‰ˆÜ˜2š|Ô,ÜÚ˜qª,ÀôF‰ˆä! "¤b§h¢hª|Ó&<¸sÕ&BÀRÕ&GÈ!Õ&KÔLô Ü�IŠI�a‹LÒ*Ú/¸ô?‰ˆô 	˜AÒ1Ö2r   c           	     óP  € \         P                  ! . RO4      p\         P                  ! . RO4      R\         P                  ! . RO4      ,          ,           p\        V. R	OVR7      w  r4\        V\         P                  ! ^^.4      R\         P                  ! ^^.4      ,          ,           4       \        V^^^.VR7      w  r4\        V\         P                  ! ^^.4      R\         P                  ! ^^.4      ,          ,           4       ^ RIHp \         P                  ! . RO4      p\         P                  ! V! ^4      V! ^4      V! ^4      .4      p\        V. R	OVR7      w  r4\        W5! ^4      V! ^4      .4       \        V^^^.VR7      w  r4\        W5! ^4      V! ^4      .4       R# )
çÍÌÌÌÌÌô?y              ð?r‡   rZ   )ÚDecimalN©r•   ç      @gffffff@)r.   r[   r4   )r4   r.   r4   )r   r4   r5   )r"   r8   r   r	   rW   r–   )r   ÚvaluesrY   rŽ   r�   r–   s   &     r   Útest_exotic_weightsÚ!TestHistogram.test_exotic_weights±   sE  € ô —’š/Ó*ˆÜ—(’(š:Ó&¨¬b¯hªh²yÓ.AÕ)AÕAˆô ˜6ª	¸7ÔC‰ˆÜ! "¤b§h¢h°°1¨vÓ&6¸¼b¿hºhÈÈ1ÀvÓ>NÕ9NÕ&NÔOô ˜6¨°!°Q°ÀÔI‰ˆÜ! "¤b§h¢h°°1¨vÓ&6¸¼b¿hºhÈÈ1ÀvÓ>NÕ9NÕ&NÔOõ 	$Ü—’š/Ó*ˆÜ—(’(™G A›J©°«
±G¸A³JÐ?Ó@ˆô ˜6ª	¸7ÔC‰ˆÜ! " w¨q£z±7¸1³:Ð&>Ô?ô ˜6¨°!°Q°ÀÔI‰ˆÜ! " w¨q£z±7¸1³:Ð&>Ö?r   c                óˆ   € \         P                  ! . RO4      p\         P                  ! VR^
.^dR7       \        V. RO4       R# )r•   )rT   r0   Nr—   éöÿÿÿ)r"   r8   r   r	   )r   r™   s   & r   Útest_no_side_effectsÚ"TestHistogram.test_no_side_effectsÏ   s0   € ô —’š/Ó*ˆÜ
�Š�V C¨ 9°3Õ7Ü! &ª/Ö:r   c                ó®   € \        . ^ ^.R7      w  r\        V\        P                  ! ^ .4      4       \        V\        P                  ! ^ ^.4      4       R# )r   r/   N©r   r
   r"   r8   ©r   r)   r*   s   &  r   Ú
test_emptyÚTestHistogram.test_emptyÖ   s?   € Ü˜ A q 6Ô+‰ˆÜ˜1œbŸhšh¨ s›mÔ,Ü˜1œbŸhšh¨¨1 vÓ.Ö/r   c                ó|   € \         P                  ! R R^dR7      p\        V^4       \        \        \        VR4       R# )rI   r1   ©Únumg333333@N)r"   r&   r   r   Ú	TypeError©r   Úvalss   & r   Útest_error_binnum_typeÚ$TestHistogram.test_error_binnum_typeÛ   s,   € ä�{Š{˜3 ¨Ô-ˆÜ�$˜ÔÜ”i¤¨D°#Ö6r   c                óò   € \         P                  ! R R^dR7      p\        VRR.R7       \        \        \        V\         P
                  R.R7       \        \        \        VR\         P                  .R7       R# )rI   r1   r¦   rE   ç      è?rS   N)r"   r&   r   r   r7   ÚnanrL   r©   s   & r   Útest_finite_rangeÚTestHistogram.test_finite_rangeá   sN   € ä�{Š{˜3 ¨Ô-ˆÜ�$˜t T˜lÕ+Ü”j¤)¨T¼"¿&¹&À$¸ÕHÜ”j¤)¨T¸$ÄÇÁ¸×Hr   c                óÖ   € \         P                  ! R R^dR7      p\        \        R4      ;_uu_ 4        \         P                  ! VRR.R7       RRR4       R#   + '       g   i     R# ; i)rI   r1   r¦   zmax must be larger thanrB   g{®Gáz„?rS   N)r"   r&   r   r7   r   r©   s   & r   Útest_invalid_rangeÚ TestHistogram.test_invalid_rangeè   sD   € ä�{Š{˜3 ¨Ô-ˆÜ ¤Ð-F×GÕGÜ�LŠL˜ c¨4 [Õ1÷ H×G×GÒGús   ²AÁA(	c                ó  € \         P                  ! . RO4      p\         P                  ! VRRR7      w  r#V^ 8„  pVRR V,          pVR,          V,          p\        WV4       F   w  rxp	\	        Wx8¬  4       \	        Wy8  4       K"  	  R# )éQ  ih   ©r0   rT   N:r.   NN)r¶   i”  iã  i&  iï  i  iÜ  )r4   iè  r[   )r"   r8   r   Úzipr   )
r   Úarrr9   r:   ÚmaskÚ
left_edgesÚright_edgesrs   ÚleftÚrights
   &         r   Útest_bin_edge_casesÚ!TestHistogram.test_bin_edge_casesî   su   € ä�hŠhÒ=Ó>ˆÜ—l’l 3¨T¸ÔC‰ˆØ�a‰xˆØ˜3˜B�Z Õ%ˆ
Ø˜B•i •oˆÜ! #°;Ö?‰NˆA�UÜ�A‘IÔÜ�A‘IÖó @r   c                ó’   € \         P                  ! . RO4      p\         P                  ! V^RR7      w  r#\        VR,          ^4       R# )rI   r·   N©	rI   rI   rI   r1   r2   rp   rp   g      @g      @©ç      à¿rˆ   r[   )r"   r8   r   r   )r   r¹   r9   r:   s   &   r   Útest_last_bin_inclusive_rangeÚ+TestHistogram.test_last_bin_inclusive_rangeù   s3   € Ü�hŠhÒCÓDˆÜ—l’l 3¨R°yÔA‰ˆÜ�T˜"•X˜qÖ!r   c                ó  € \         P                  ! R R^dR7      p\         P                  ! ^ R.RR..4      p\        \        R4      ;_uu_ 4        \         P
                  ! WR7       RRR4       R#   + '       g   i     R# ; i)rI   r1   r¦   rC   g333333ã?z
must be 1dr/   N)r"   r&   r8   r   r7   r   )r   rª   r0   s   &  r   Útest_bin_array_dimsÚ!TestHistogram.test_bin_array_dimsþ   sW   € ä�{Š{˜3 ¨Ô-ˆÜ�xŠx˜!˜S˜ C¨ :Ð.Ó/ˆÜ ¤¨\×:Õ:Ü�LŠL˜Õ)÷ ;×:×:Ò:ús   ÁA0Á0B	c                ó  € \         P                  ! ^.4      p\         P                  ! . RORR7      p\        \        4      ;_uu_ 4        \         P                  ! WR7      w  r4RRR4       R#   + '       g   i     R# ; i)r4   Úuint64ro   r/   N)r.   r5   r.   )r"   r8   r   r7   r   )r   r¹   r0   r9   r:   s   &    r   Ú test_unsigned_monotonicity_checkÚ.TestHistogram.test_unsigned_monotonicity_check  sM   € ô �hŠh˜�s‹mˆÜ�xŠxš	¨Ô2ˆÜœ:×&Õ&ÜŸ,š, sÔ6‰KˆD÷ '×&×&Ò&ús   Á	A-Á-A>	c           
     ó¼  € \        \        \        \        ^
4       Uu. uF  p\        P
                  ! R4      NK  	  up\        P                  ) .,           4       \        \        \        \        ^
4       Uu. uF  p\        P
                  ! R4      NK  	  up\        P                  .,           4       \        P                  ! \        ^
4       Uu. uF  p\        P
                  ! R4      NK  	  upR.,           4       \        P                  ! \        ^
4       Uu. uF  p\        P
                  ! R4      NK  	  upR.,           4       R# u upi u upi u upi u upi )rH   gš™™™™™Ù?rC   g     à?N)r   r7   r   rT   r"   r8   rL   )r   Úis   & r   Útest_object_array_of_0dÚ%TestHistogram.test_object_array_of_0d  sà   € ä”jÜ¬u°R¬yÓ9©y¨!œŸš ž©yÑ9¼b¿f¹f¸W¸IÕEô	Gä”jÜ¬u°R¬yÓ9©y¨!œŸš ž©yÑ9¼R¿V¹V¸HÕDô	Fô 	�Š¬U°2¬YÓ7©Y¨”b—h’h˜s–m©YÑ7Ð;KÐ:LÕLÔMÜ
�Š¬U°2¬YÓ7©Y¨”b—h’h˜s–m©YÑ7¸2¸$Õ>Ö?ùò :ùâ9ùò 8ùÚ7s   �E
Á6EÃEÄEc           	     ó  € \         P                  ! ^ ^\         P                  .4      p\         P                  ! \         P                  \         P                  .4      p\        P                  ! 4       ;_uu_ 4        \        P
                  ! R\        4       \        \        \        VRR7       \        \        \        VRR7       \        VRRR7      w  r4\        VP                  4       ^4       \        VRRR7      w  r4\        VP                  4       ^ 4       \        V^ ^.R7      w  r4\        VP                  4       ^4       \        V^ ^.R7      w  r4\        VP                  4       ^ 4       RRR4       R#   + '       g   i     R# ; i)r   ÚignoreÚautor/   r·   N©r   r.   )r"   r8   r¯   ÚwarningsÚcatch_warningsÚsimplefilterr€   r   r7   r   r   r%   )r   Úone_nanÚall_nanr;   r*   s   &    r   Útest_some_nan_valuesÚ"TestHistogram.test_some_nan_values  s	  € ä—(’(˜A˜q¤"§&¡&˜>Ó*ˆÜ—(’(œBŸF™F¤B§F¡FÐ+Ó,ˆô ×$Ò$×&Õ&Ü×!Ò! (¬NÔ;äœ*¤i°¸vÕFÜœ*¤i°¸vÕFô ˜W¨6¸Ô@‰DˆAÜ˜Ÿ™› !Ô$Ü˜W¨6¸Ô@‰DˆAÜ˜Ÿ™› !Ô$ô ˜W¨A¨q¨6Ô2‰DˆAÜ˜Ÿ™› !Ô$Ü˜W¨A¨q¨6Ô2‰DˆAÜ˜Ÿ™› !Ô$÷! '×&×&Ò&ús   Á9C4E7Å7F	c                ó’  € \         P                  ! R R4      p\         P                  ! . RO4      p\         P                  ! . RO4      pW,           pW,           p\         P                  ! R4      p\	        WER7      w  rx\	        VP                  V4      VP                  V4      R7      w  rš\	        W#R7      w  r¼\        W{4       \        W›4       \        W�,
          P                  \        4      V4       \        V
P                  \        4      V4       \        VP                  VP                  4       \        V
P                  V4       R# )z
2000-01-01ÚDztimedelta64[D]r/   N)	r   r   r.   r.   r4   r5   rˆ   rH   é   )r   r4   é   rß   )r"   Ú
datetime64r8   re   r   Úastyper   ri   )r   ÚbeginÚoffsetsr0   ÚdatesÚ	date_binsÚtdÚd_countÚd_edgeÚt_countÚt_edgeÚi_countÚi_edges   &            r   Útest_datetimeÚTestHistogram.test_datetime0  sß   € Ü—’˜l¨CÓ0ˆÜ—(’(Ò8Ó9ˆÜ�xŠxšÓ&ˆØ•ˆØ•Lˆ	ä�XŠXÐ&Ó'ˆô
 $ EÔ:‰ˆÜ# G§N¡N°2Ó$6¸T¿[¹[È»_ÔM‰ˆÜ# GÔ7‰ˆä�WÔ&Ü�WÔ&ä�f•n×,Ñ,¬SÓ1°6Ô:Ü�V—]‘]¤3Ó'¨Ô0ä�V—\‘\ 5§;¡;Ô/Ü�V—\‘\ 2Ö&r   c                ób  € ^\         P                  ! V4      P                  ,          ^,
          p\         P                  ! ^V,          ) ^,           ^V,          ^,
          .VR7      p\	        V^R7      w  rE\        V^V,          ) ^,           ^ ^V,          ^,
          .4       \        V^^.4       R# )é   ro   r/   N)r"   re   Úitemsizer8   r   r   )r   re   Úexponentr¹   r9   r<   s   &&    r   Údo_signed_overflow_boundsÚ'TestHistogram.do_signed_overflow_boundsI  s‡   € Ø”r—x’x “×/Ñ/Õ/°!Õ3ˆÜ�hŠh˜˜H�˜ qÕ(¨!¨X­+¸­/Ð:À%ÔHˆÜ˜C aÔ(‰ˆÜ�Q˜!˜X�+˜¨Õ)¨1¨a°­k¸A­oÐ>Ô?Ü�T˜A˜q˜6Ö"r   c                ó<  € V P                  \        P                  4       V P                  \        P                  4       V P                  \        P                  4       V P                  \        P
                  4       V P                  \        P                  4       R # r   )rô   r"   ÚbyteÚshortÚintcÚint_Úlonglongr   s   &r   Útest_signed_overflow_boundsÚ)TestHistogram.test_signed_overflow_boundsP  s\   € Ø×&Ñ&¤r§w¡wÔ/Ø×&Ñ&¤r§x¡xÔ0Ø×&Ñ&¤r§w¡wÔ/Ø×&Ñ&¤r§w¡wÔ/Ø×&Ñ&¤r§{¡{Ö3r   c                óp  € \         P                  ! V4      P                  p\         P                  ! R .V4      p\         P                  ! R V,           R.V4      pVP	                  V4      ^ ,          ^8w  d   R# \         P
                  ! V^VR7      w  rg\        V^ .4       \        VP                  V4       R# )r1   r2   Nr·   ©r"   ÚfinfoÚepsr8   râ   r   r   re   ©r   Úfloat_smallÚfloat_larger  r¹   rT   ÚcountÚx_locs   &&&     r   Údo_precision_lower_boundÚ&TestHistogram.do_precision_lower_boundW  sŒ   € Ü�hŠh�{Ó#×'Ñ'ˆä�hŠh˜�u˜kÓ*ˆÜ—’˜# �) SÐ)¨;Ó7ˆð �<‰<˜Ó$ QÕ'¨1Ô,Ùô —|’| C¨a°uÔ=‰ˆÜ�U˜Q˜CÔ Ü�U—[‘[ +Ö.r   c                óp  € \         P                  ! V4      P                  p\         P                  ! R .V4      p\         P                  ! RR V,
          .V4      pVP	                  V4      R,          ^8w  d   R# \         P
                  ! V^VR7      w  rg\        V^ .4       \        VP                  V4       R# )r1   rI   Nr·   r[   rÿ   r  s   &&&     r   Údo_precision_upper_boundÚ&TestHistogram.do_precision_upper_boundf  sŒ   € Ü�hŠh�{Ó#×'Ñ'ˆä�hŠh˜�u˜kÓ*ˆÜ—’˜#˜s S�yÐ)¨;Ó7ˆð �<‰<˜Ó$ RÕ(¨AÔ-Ùô —|’| C¨a°uÔ=‰ˆÜ�U˜Q˜CÔ ä�U—[‘[ +Ö.r   c                óJ   € V P                  W4       V P                  W4       R # r   )r  r
  )r   r  r  s   &&&r   Údo_precisionÚTestHistogram.do_precisionv  s   € Ø×%Ñ% kÔ?Ø×%Ñ% kÖ?r   c                ó.  € V P                  \        P                  \        P                  4       V P                  \        P                  \        P                  4       V P                  \        P                  \        P
                  4       V P                  \        P                  \        P                  4       V P                  \        P                  \        P
                  4       V P                  \        P                  \        P
                  4       R # r   )r  r"   ÚhalfÚsingleÚdoubleÚ
longdoubler   s   &r   Útest_precisionÚTestHistogram.test_precisionz  s’   € à×Ñœ"Ÿ'™'¤2§9¡9Ô-Ø×Ñœ"Ÿ'™'¤2§9¡9Ô-Ø×Ñœ"Ÿ'™'¤2§=¡=Ô1Ø×Ñœ"Ÿ)™)¤R§Y¡YÔ/Ø×Ñœ"Ÿ)™)¤R§]¡]Ô3Ø×Ñœ"Ÿ)™)¤R§]¡]Ö3r   c                ó4  € \        . RO^^.4      w  r\        . RO^^.4      p\        W24       \        P                  ! . RO4      p\        V^RR7      w  r\        V^RR7      p\        W24       \        VRRR7      w  r\        VRRR7      p\        W24       R# )r.   r·   rÔ   Nr3   rÂ   rÃ   rÕ   )r   r   r
   r"   r8   )r   r9   r<   r:   r¹   s   &    r   Útest_histogram_bin_edgesÚ&TestHistogram.test_histogram_bin_edgesƒ  s‡   € ÜšL¨1¨a¨&Ó1‰ˆÜ#¢L°1°a°&Ó9ˆÜ˜5Ô$ä�hŠhÒCÓDˆÜ˜C b°	Ô:‰ˆÜ# C¨b¸	ÔBˆÜ˜5Ô$ä˜C f°FÔ;‰ˆÜ# C¨f¸FÔCˆÜ˜5Ö$r   c                óà   € \         P                  ! ^R.^
,          4      p\        P                  ! \        RR7      ;_uu_ 4        \        V^
R7       RRR4       R#   + '       g   i     R# ; i)r.   zToo many bins for data ranger{   r/   Ng     ð?)r"   r8   r~   Úraisesr7   r   )r   r¹   s   & r   Útest_small_value_rangeÚ$TestHistogram.test_small_value_range‘  sE   € Ü�hŠh˜˜9�~¨Õ*Ó+ˆÜ�]Š]œ:Ð-K×LÖLÜ�c Õ#÷ M×L×LÒLús   ÁAÁA-	z,Bad memory reports lead to OOM in ci testing)Úreasonc                óØ   € \         P                  ! R ^.4      pRpRp\         P                  ! R4      p\         P                  ! WW43R7      p\	        \        V4      \        R4      4       R# )i áõi�  i€>  )Úsampler0   N)r.   r4   )r"   r‹   rK   r   r   Útype)r   r  ÚxbinsÚybinsÚzbinsr9   s   &     r   Útest_big_arraysÚTestHistogram.test_big_arrays˜  sQ   € ä—’˜9 a˜.Ó)ˆØˆØˆÜ—	’	˜%Ó ˆÜ�~Š~ V¸%Ð2GÔHˆÜ”T˜$“Z¤ f£Ö.r   c                ó°   € \         P                  ! \         P                  ! R.RR7      ^RR7      w  r\         P                  ! ^^ .4      p\        W4       R# )g$ë°Áx z>f8ro   r·   Ng$ë°Áx€)gÒèxÖ0€ge¨Òl	  €)r"   r   r8   r
   )r   r9   r<   Úexpected_hists   &   r   Útest_gh_23110ÚTestHistogram.test_gh_23110¡  sC   € Ü—,’,œrŸxšx¨¨¸5ÔAØ$%Ø%7ô9‰ˆô Ÿš ! Q Ó(ˆÜ˜4Ö/r   c                óÖ   € Rp^ ^^^^^WWW^.p\         P                  ! VRR7      w  r4\        V4      ^
8  g   Q hV^ ,          V^ ,          8X  g   Q hVR,          VR,          8X  g   Q hR# )r.   rÔ   r/   Ng˜    ð?r[   )r"   r   Úlen)r   r<   ÚZrN   r:   s   &    r   Útest_gh_28400ÚTestHistogram.test_gh_28400¨  sq   € ØˆØ��1�a˜˜A˜q Q¨1°Ð3ˆÜŸš Q¨VÔ4‰ˆÜ�6‹{˜RÔÐÐØ�Q�x˜1˜Q�4ÔÐÐØ�R�y˜A˜b�EÔ!Ð!Ò!r   r   N),Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   r+   r=   rP   r]   r`   rk   rx   rƒ   r’   rš   rž   r£   r«   r°   r³   r¿   rÅ   rÈ   rÌ   rÐ   rÛ   rî   rô   rü   r  r
  r  r  r  r  r~   ÚmarkÚskipr$  r(  r-  Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   r   r      sâ   ø‡ € òòò	"ò/ò'ò@!ò0Gò5ò,ò1ò3ò:@ò<;ò0ò
7òIò2ò	ò"ò
*ò7ò	@ò%ò0'ò2#ò4ò/ò/ò @ò4ò%ò$ð ‡[�[×ÑÐKÐÓLñ/ó Mð/ò0÷"ð "r   r   c                   óö   a € ] tR tRt o RtR tR tR tR tR t	R t
R	 tR
 tR t]P                  P!                  R. RO4      R 4       t]P                  P!                  R. RO4      R 4       tR tR tRtV tR# )ÚTestHistogramOptimBinNumsi°  zQ
Provide test coverage when using provided estimators for optimal number of
bins
c                óÄ   € . ROpV FU  p\        . VR7      w  r4\        V\        P                  ! ^ .4      4       \        V\        P                  ! ^ ^.4      4       KW  	  R# )Úfdr/   N)r<  ÚscottÚriceÚsturgesÚdoaneÚsqrtrÔ   Ústoner¡   )r   Úestimator_listÚ	estimatorr)   r*   s   &    r   r£   Ú$TestHistogramOptimBinNums.test_empty¶  sN   € ò<ˆó (ˆIÜ˜R iÔ0‰DˆAÜ˜q¤"§(¢(¨A¨3£-Ô0Ü˜q¤"§(¢(¨A¨q¨6Ó"2Ö3ó (r   c                ó
  € ^2R^R^R^R^R^R^R^R^/R	R^R^R^R^
R^R^R^
R^	/R
R^R^R^#R^R^R^GR^R^//pVP                  4        F¶  w  r#\        P                  ! RRV^,          ^,          4      p\        P                  ! ^^
V^,          ^,          4      p\        P                  ! WE34      pVP                  4        F:  w  rx\        P                  ! Wg4      w  rš\        \        V	4      VRV RV 2R7       K<  	  K¸  	  R# )z’
Straightforward testing with a mixture of linspace data (for
consistency). All test values have been precomputed and the values
shouldn't change
r<  r=  r>  r?  r@  rA  rÔ   rB  éô  éˆ  úFor the ú estimator with datasize of ©Úerr_msgNr�   r[   )Úitemsr"   r&   rŠ   r   r   r+  )r   Ú
basic_testÚtestlenÚexpectedResultsÚx1Úx2rs   rD  Únumbinsr)   r*   s   &          r   r+   Ú%TestHistogramOptimBinNums.test_simple¿  s6  € ð ˜T 1 w°°F¸AÀ	È1Ø$ a¨°°F¸A¸wÈðKà˜T 1 w°°F¸BÀ	È2Ø$ b¨&°"°f¸bÀ'È1ðNà˜T 2 w°°F¸BÀ	È2Ø$ b¨&°"°f¸bÀ'È2ðOð	Pˆ
ð )3×(8Ñ(8Ö(:Ñ$ˆGô —’˜S " g°¥l°QÕ&6Ó7ˆBÜ—’˜Q  G¨q¥L°1Õ$4Ó5ˆBÜ—’ ˜xÓ(ˆAØ&5×&;Ñ&;Ö&=Ñ"�	Ü—|’| AÓ1‘�ÜœS ›V W¸ÀÀð L1Ø18°	ð7;÷ <ó '>ó );r   c                óŠ  € ^R^R^R^R^R^R^R^/^R^R^R^R^R^R^R^/^R^R^R^R^R^R^R^//pVP                  4        F|  w  r#\        P                  ! V4      P                  \        4      pVP                  4        F:  w  rV\        P
                  ! WE4      w  rx\        \        V4      VRV R	V 2R
7       K<  	  K~  	  R# )z˜
Smaller datasets have the potential to cause issues with the data
adaptive methods, especially the FD method. All bin numbers have been
precalculated.
r<  r=  r>  r?  r@  rA  rB  rI  rJ  rK  N)rM  r"   rK   râ   rj   r   r   r+  )	r   Ú	small_datrO  rP  ÚtestdatrD  Úexpbinsr)   r*   s	   &        r   Ú
test_smallÚ$TestHistogramOptimBinNums.test_smallÙ  sõ   € ð ˜˜q '¨1¨f°a¸ÀAØ  ! V¨Q°¸ð<à˜˜q '¨1¨f°a¸ÀAØ  ! V¨Q°¸ð<à˜˜q '¨1¨f°a¸ÀAØ  ! V¨Q°¸ð<ð	=ˆ	ð )2¯©Ö(9Ñ$ˆGÜ—i’i Ó(×/Ñ/´Ó6ˆGØ&5×&;Ñ&;Ö&=Ñ"�	Ü—|’| GÓ7‘�ÜœS ›V W¸ÀÀð L1Ø18°	ð7;÷ <ó '>ó ):r   c                óP   € . ROpV F  p\        \        \        . ROV4       K  	  R# )zC
Check a Value Error is thrown when an unknown string is passed in
N)ÚmadÚfreemanÚ
histogramsÚIQR©r.   r4   r5   )r   r7   r   )r   Ú
check_listrD  s   &  r   Útest_incorrect_methodsÚ0TestHistogramOptimBinNums.test_incorrect_methodsí  s!   € ò =ˆ
Û#ˆIÜœ*¤i²¸IÖFó $r   c                óì   € \         P                  ! ^d4      pR^R^R^R^R^R^R^R^/pVP                  4        F7  w  r4\         P                  ! W4      w  rV\	        \        V4      VV R	2R
7       K9  	  R# )zt
Check that methods handle no variance in data
Primarily for Scott and FD as the SD and IQR are both 0 in this case
r<  r=  r>  r?  r@  rA  rÔ   rB  z estimator, No Variance testrK  N)r"   rh   rM  r   r   r+  )r   Únovar_datasetÚnovar_resultdictrD  rS  r)   r*   s   &      r   Útest_novarianceÚ)TestHistogramOptimBinNums.test_novarianceõ  s€   € ô
 Ÿš ›ˆØ  ! W¨a°¸¸IÀqØ# Q¨°°6¸1¸gÀqðJÐð #3×"8Ñ"8Ö":ÑˆIÜ—<’< Ó9‰DˆAÜœ˜Q› Ø$- ;Ð.JÐ!K÷Mó #;r   c                ó†  € \         P                  ! R4      p^ VR&   ^dVRR% \        VR4      p\        V^ ,          ^ 4       \        VR	,          R4       \	        V4      ^d8  g   Q h\        VR4      p\        V\         P
                  ! ^ ^d.4      4       \        VR4      p\        V\         P                  ! ^ ^d^4      4       R# )
zI
Check when IQR is 0, but variance exists, we return a reasonable value.
éè  :Nr5   NNrÔ   g      Y@r<  r?  éüÿÿÿr[   )r"   rh   r   r   r+  r8   r&   )r   Úlim_var_dataÚ
edges_autoÚedges_fdÚedges_sturgess   &    r   Útest_limited_varianceÚ/TestHistogramOptimBinNums.test_limited_variance  s§   € ô —w’w˜t“}ˆØˆ�RÑØˆ�R�SÐä(¨°vÓ>ˆ
Ü�Z •] AÔ&Ü�Z •^ TÔ*Ü�:‹ Ô$Ð$Ð$ä& |°TÓ:ˆÜ�XœrŸxšx¨¨C¨Ó1Ô2ä+¨L¸)ÓDˆÜ�]¤B§K¢K°°3¸Ó$;Ö<r   c                ó2  € \         P                  ! R^
^24      p\         P                  ! \         P                  ! RR^4      V34      pR^R^R^R^/pVP                  4        F2  w  rE\         P                  ! W$4      w  rg\        \        V4      V4       K4  	  R# )	a»  
Check the FD, Scott and Doane with outliers.

The FD estimates a smaller binwidth since it's less affected by
outliers. Since the range is so (artificially) large, this means more
bins, most of which will be empty, but the data of interest usually is
unaffected. The Scott estimator is more affected and returns fewer bins,
despite most of the variance being in one area of the data. The Doane
estimator lies somewhere between the other two.
r<  r=  r@  rB  Nr�   i’ÿÿÿéœÿÿÿ)r"   r&   ÚhstackrM  r   r   r+  )r   ÚxcenterÚoutlier_datasetÚoutlier_resultdictrD  rS  r)   r*   s   &       r   Útest_outlierÚ&TestHistogramOptimBinNums.test_outlier  s�   € ô —+’+˜c 2 rÓ*ˆÜŸ)š)¤R§[¢[°°t¸QÓ%?ÀÐ$IÓJˆà" B¨°°G¸RÀÈ!ÐLÐà"4×":Ñ":Ö"<ÑˆIÜ—<’< Ó;‰DˆAÜœ˜Q› Ö)ó #=r   c                óf  € R  p\         P                  ! ^
^d^R7      P                  4       P                  \        4      p\        ^
4       UUu. uF  q2 Uu. uF
  qA! W44      NK  	  upNK  	  ppp\        \         P                  ! V^ R7      R,
          4      p\        V. RO^R7       R# u upi u uppi )c                 ó   € \         P                  P                  V 4      pVP                  ^ ^VR7      p\	        \         P
                  ! VR4      ^ ,          4      \	        \         P
                  ! VR4      ^ ,          4      rTWDV,           ,          # )r   )ÚlocÚscaleÚsizerB  r=  )r"   r#   ÚRandomStateÚnormalr+  r   )Úseedr~  Úrngrs   r)   r*   s   &&    r   Únbins_ratioÚBTestHistogramOptimBinNums.test_scott_vs_stone.<locals>.nbins_ratio.  sh   € Ü—)‘)×'Ñ'¨Ó-ˆCØ—
‘
˜q¨°�
Ó5ˆAÜ”r—|’| A wÓ/°Õ2Ó3´S¼¿ºÀaÈÓ9QÐRSÕ9TÓ5UˆqØ˜A�•;Ðr   )ÚstartÚstopr§   r    rC   rV   N)g333333Ã?g
×£p=
·?g{®Gáz´?g¸…ëQ¸ž?)	r"   Ú	geomspaceÚroundrâ   ri   rT   ÚabsÚmeanr   )r   rƒ  Ú
geom_spacer�  r~  ÚllÚavgs   &      r   Útest_scott_vs_stoneÚ-TestHistogramOptimBinNums.test_scott_vs_stone*  s�   € ò	ô —\’\¨°¸!Ô<×BÑBÓD×KÑKÌCÓPˆ
ÜKPÐQSÌ9ÔUÉ9À4°:Ó>±:¨4ˆ{˜4Ö&±:Ô>É9ˆÑUô ”"—'’'˜" 1Ô%¨Õ+Ó,ˆÜ˜CÒ!9À1×Eùò ?ùÓUs   ÁB-ÁB(Á$B-Â(B-c                ó>  € ^2R^R^R^R^R^R^/RR^R^R^ R^R^R^P/RR^!R^!R^ER^R^!R^P//pVP                  4        FÜ  w  r#\        P                  ! RRV^,          ^,          4      p\        P                  ! ^^
V^,          ^,          4      p\        P                  ! RRV4      p\        P                  ! WEV34      pVP                  4        FG  w  r‰\        P                  ! WxRR	7      w  r«R
V R2pVRV 2,          p\        \        V
4      WœR7       KI  	  KÞ  	  R# )zÊ
Straightforward testing with a mixture of linspace data (for
consistency). Adding in a 3rd mixture that will then be
completely ignored. All test values have been precomputed and
the shouldn't change.
r<  r=  r>  r?  rÔ   rB  rG  rH  rS   rI  z
 estimatorz with datasize of rK  Nr�   r[   rs  iÎÿÿÿ)iìÿÿÿrß   )rM  r"   r&   rt  r   r   r+  )r   rN  rO  rP  rQ  rR  Úx3rs   rD  rS  r)   r*   Úmsgs   &            r   Útest_simple_rangeÚ+TestHistogramOptimBinNums.test_simple_range<  s;  € ð ˜T 1 w°°F¸BØ&¨¨F°B¸ÀðDà˜T 2 w°°F¸BØ&¨¨F°B¸ÀðEà˜T 2 w°°F¸BØ&¨¨F°B¸ÀðEðˆ
ð )3×(8Ñ(8Ö(:Ñ$ˆGô —’˜S " g°¥l°QÕ&6Ó7ˆBÜ—’˜Q  G¨q¥L°1Õ$4Ó5ˆBÜ—’˜T 3¨Ó0ˆBÜ—	’	˜2 2˜,Ó'ˆAØ&5×&;Ñ&;Ö&=Ñ"�	Ü—|’| A¸	ÔB‘�Ø   ¨:Ð6�ØÐ+¨G¨9Ð5Õ5�ÜœS ›V W×:ó	 '>ó );r   r0   c                ó"  € \         P                  ! . RO\         P                  R7      p\         P                  ! W!R7      w  r4\         P                  ! VP	                  \         P
                  4      VR7      w  rV\        W54       \        WF4       R# )r4   ro   r/   N)éþÿÿÿr   é   )r"   r8   Úint8r   râ   Úint32r
   )r   r0   r)   r9   r:   Úhist32Úedges32s   &&     r   Útest_signed_integer_dataÚ2TestHistogramOptimBinNums.test_signed_integer_data[  sW   € ô �HŠH’\¬¯©Ô1ˆÜ—l’l 1Ô0‰ˆÜŸ,š, q§x¡x´·±Ó'9ÀÔE‰ˆÜ˜4Ô(Ü˜5Ö*r   c                óz  € \         P                  ! 4       ;_uu_ 4        VR8X  d   \         P                  ! R\        4       \	        \
        P                  ! \
        P                  ! \
        P                  ! ^	4      R4      V4      \
        P                  ! ^	4      4       RRR4       R#   + '       g   i     R# ; i)z5
Test that bin width for integer data is at least 1.
rB  rÓ   rj  N)	rÖ   r×   rØ   r€   r   r"   r   ÚtilerK   )r   r0   s   &&r   Útest_integerÚ&TestHistogramOptimBinNums.test_integere  so   € ô ×$Ò$×&Õ&Ø�wŒÜ×%Ò% h´Ô?ÜÜ×&Ò&¤r§w¢w¬r¯yªy¸«|¸TÓ'BÀDÓIÜ—	’	˜!“ô÷ '×&×&Ò&ús   žBB)Â)B:	c           	     ól  € \        \        P                  ! \        P                  ! \        P                  ! ^	4      R4      ^4      \        P                  ! ^4      ^,          4       \        \        P                  ! \        P                  ! \        P                  ! ^	4      R4      RR.4      RR.4       R# )zH
Test that the bin-width>=1 requirement *only* applies to auto binning.
rj  rB   r‰   N)r   r"   r   rŸ  rK   r   s   &r   Útest_integer_non_autoÚ/TestHistogramOptimBinNums.test_integer_non_autor  sw   € ô 	Ü×"Ò"¤2§7¢7¬2¯9ª9°Q«<¸Ó#>ÀÓCÜ�IŠI�b‹M˜AÕô	ô 	Ü×"Ò"¤2§7¢7¬2¯9ª9°Q«<¸Ó#>ÀÀRÀÓIØ�ˆHö	r   c           	     óX   € . ROpV F  p\        \        \        . ROV. ROR7       K!  	  R# )z-
Check that weighted data raises a TypeError
rc   N)r<  r=  r>  r?  rÔ   r`  )r   r¨   r   )r   rC  rD  s   &  r   Útest_simple_weightedÚ.TestHistogramOptimBinNums.test_simple_weighted}  s'   € ò DˆÛ'ˆIÜœ)¤Y²	Ø#ªY÷8ó (r   r   N)rÔ   r<  r@  r=  rB  r>  r?  )r/  r0  r1  r2  Ú__doc__r£   r+   rY  rb  rg  rp  rx  rŽ  r“  r~   r3  Úparametrizerœ  r   r£  r¦  r5  r6  r7  s   @r   r:  r:  °  s£   ø‡ € ñò
4ò<ò4<ò(GòMò=ò&*ò(Fò$;ð> ‡[�[×Ñ˜Vò &Bó Cñ+óCð+ð ‡[�[×Ñ˜Vò &Bó Cñ	óCð	ò	÷8ð 8r   r:  c                   óz   a € ] tR tRt o R tR tR tR tR tR t	R t
R	 tR
 tR tR tR tR tR tR tRtV tR# )ÚTestHistogramddi‡  c           	     óÂ  € \         P                  ! . RO. RO. RO. RO. RO. RO.4      p\        VRR^.^ ^.^ ^..R7      w  r#\         P                  ! . RO. RO. RO.. RO. RO. RO..4      p\        W$4       . RO. RO. RO.p\        WRR7      w  r#\	        \         P
                  ! W$R,          8H  4      4       \        VRR^.^ ^.^ ^..RR7      w  r#\         P                  ! . RO. RO. RO.. RO. RO. RO..4      p\        W$R,          ^4       \         P                  ! V^^R7       Uu. uF  p\         P                  ! V4      NK  	  pp\        VRR^.^ ^.^ ^..R7      w  r#\         P                  ! ^ ^ .^ ^ .^ ^ ..^ ^.^ ^ .^^ ..^ ^.^ ^ .^ ^ ..^ ^ .^ ^ .^ ^ ...4      p\        W$4       \         P                  ! R4      pR	V\        \        ^4      4      \        \        ^4      4      \        \        ^4      4      3&   \        \         P                  ! ^4      \         P                  ! ^4      \         P                  ! ^4      .^4      w  r#\        W(4       R
# u upi )rC   rS   T©r0   rA   g      (@rU   g      @r    r·   r1   N)rÄ   rC   rD   )rÄ   rD   r˜   )rÄ   r˜   rC   )rC   rC   rD   )rC   rD   r˜   )rC   r˜   r˜   )r4   r5   r5   r[   )r   r.   r   )r   r   r.   )r.   r   r   r–  )r–  r   r4   )r   r.   r4   r5   )r4   r5   r6   )r   r.   r   r   )r   r   r.   r   )r.   r   r   r   )r6   r5   r4   )rˆ   rˆ   rˆ   )r"   r8   r   r
   r   Úallr	   ÚsplitÚsqueezer‹   ÚlistrT   rK   )	r   rs   ÚHr:   ÚanswerÚedrt   Úzr,  s	   &        r   r+   ÚTestHistogramdd.test_simple‰  sI  € Ü�HŠH’n¢o²~Ú$¢o²ðHó Iˆä˜q )Ø')¨1 g°°1¨v¸¸1°vÐ%>ô@‰ˆä—’šI¢y²)Ð<Ú%¢y²)Ð<ð>ó ?ˆä˜1Ô%ò š,ªÐ5ˆÜ˜q°4Ô8‰ˆÜ”—’�q S�LÑ(Ó)Ô*ô ˜q )Ø')¨1 g°°1¨v¸¸1°vÐ%>Ø'+ô-‰ˆô —’šLª,ºÐEÚ(ª,ºÐEðGó Hˆä! !¨b¥[°!Ô4ô %'§H¢H¨Q°¸Õ$:Ó;Ñ$:˜qŒR�ZŠZ˜Ž]Ñ$:ˆÐ;ÜØ�I r¨1 g°°1¨v¸¸1°vÐ%>ô@‰ˆä—’˜Q ˜F Q¨ F¨Q°¨FÐ3Ø ˜F Q¨ F¨Q°¨FÐ3Ø ˜F Q¨ F¨Q°¨FÐ3Ø ˜F Q¨ F¨Q°¨FÐ3ð5ó 6ˆô 	˜1Ô%ä�HŠH�YÓˆØ<>ˆŒ$Œu�Q‹x‹.œ$œu Q›x›.¬$¬u°Q«x«.Ð
8Ñ9Ü¤§	¢	¨!£¬b¯iªi¸«l¼B¿IºIÀa»LÐIÈ1ÓM‰ˆÜ˜1Ö ùò <s   Ä+Ic                ó¦   € Rp\         P                  P                  ^
^4      pV F(  p\        W#4      w  rE\	        VP
                  V8H  4       K*  	  R# )rˆ   N))rˆ   r6   rG   )rG   r6   rˆ   )rˆ   rG   r6   )r6   rG   rˆ   )rG   rˆ   r6   )r6   rˆ   rG   ©r"   r#   r$   r   r   Úshape©r   r0   Úrr*   r²  r:   s   &     r   Útest_shape_3dÚTestHistogramdd.test_shape_3d®  sC   € ðˆä�I‰I�N‰N˜2˜qÓ!ˆÛˆAÜ" 1Ó(‰HˆAÜ�A—G‘G˜q‘LÖ!ó r   c                ó¦   € Rp\         P                  P                  ^
^4      pV F(  p\        W#4      w  rE\	        VP
                  V8H  4       K*  	  R# )rà   N))rà   r6   rˆ   rG   )r6   rˆ   rà   rG   )rˆ   rG   r6   rà   )rà   rG   rˆ   r6   )rˆ   rà   rG   r6   )r6   rG   rà   rˆ   )rG   rˆ   rà   r6   )rà   rˆ   r6   rG   )rà   r6   rG   rˆ   )rG   r6   rà   rˆ   )rG   rà   rˆ   r6   )r6   rG   rˆ   rà   )r6   rà   rˆ   rG   )rˆ   r6   rG   rà   )rˆ   rà   r6   rG   )rG   rà   r6   rˆ   )rG   rˆ   r6   rà   )r6   rà   rG   rˆ   )r6   rˆ   rG   rà   )rà   rG   r6   rˆ   )rˆ   r6   rà   rG   )rˆ   rG   rà   r6   )rG   r6   rˆ   rà   )rà   rˆ   rG   r6   r¸  rº  s   &     r   Útest_shape_4dÚTestHistogramdd.test_shape_4d·  sF   € ðHˆô �I‰I�N‰N˜2˜qÓ!ˆÛˆAÜ" 1Ó(‰HˆAÜ�A—G‘G˜q‘LÖ!ó r   c                óÊ  € \         P                  P                  ^d^4      p\        V4      w  r#\        VRR7      w  rC\        V\         P                  ! ^d4      R7      w  rS\        WR4       \        V\         P                  ! ^d4      ^,          RR7      w  rS\        WT4       \        V\         P                  ! ^d\        4      ^,          R7      w  rS\        V^V,          4       R# )r   Tr@   rc   r†   N)r"   r#   r$   r   rh   r
   ri   )r   r(   r9   r:   Ún_histÚw_hists   &     r   r’   ÚTestHistogramdd.test_weightsÅ  sž   € Ü�I‰I�N‰N˜3 Ó"ˆÜ! !“n‰ˆÜ# A¨tÔ4‰ˆÜ# A¬r¯wªw°s«|Ô<‰ˆÜ˜6Ô(Ü# A¬r¯wªw°s«|¸aÕ/?ÈÔN‰ˆÜ˜6Ô*Ü# A¬r¯wªw°s¼CÓ/@À1Õ/DÔE‰ˆÜ˜6 1 t¥8Ö,r   c                ó¬   € \         P                  ! R\        4      p\        V^R7      w  r#\	        V^ ,          \         P
                  ! . RO4      4       R# )rH   r/   N)rH   r4   )rÄ   rI   rC   )r"   r‹   ri   r   r
   r8   )r   rs   r9   r:   s   &   r   Útest_identical_samplesÚ&TestHistogramdd.test_identical_samplesÐ  s7   € Ü�HŠH�WœcÓ"ˆÜ! !¨!Ô,‰ˆÜ˜5 �8¤R§X¢XªoÓ%>Ö?r   c                óò   € \        . . .^ ^.^ ^.3R7      w  r\        V\        P                  ! R..4      4       \        P                   ! . . . .^R7      w  r\        V\        P                  ! R4      4       R# )r   r/   rI   N)r4   r4   r4   )r   r   r"   r8   r‹   r¢   s   &  r   r£   ÚTestHistogramdd.test_emptyÕ  sc   € Ü˜B ˜8¨A¨q¨6°A°q°6Ð*:Ô;‰ˆÜ˜Q¤§¢¨2¨$¨Ó 0Ô1Ü�~Š~˜r 2 r˜l°Ô3‰ˆÜ˜Q¤§¢¨Ó 3Ö4r   c           
     óz  € \         P                  ! ^4      P                  ^^4      p\        \        \         P
                  V. ROR7       \        \        \         P
                  V. ROR7       \        \        \         P
                  V^^^. RO.R7       \        \         P
                  ! V^^^. RO.R7      4       R# )rñ   r/   N)r[   r4   r6   rˆ   )r.   g®Gáz®ï?r.   r.   )r.   r4   r5   éýÿÿÿr3   )r"   rK   Úreshaper   r7   r   r   )r   rs   s   & r   Útest_bins_errorsÚ TestHistogramdd.test_bins_errorsÛ  s}   € ô �IŠI�a‹L× Ñ   AÓ&ˆÜ”j¤"§.¡.°!º-ÕHÜ”j¤"§.¡.°!º/ÕJÜÜœŸ™¨°°A°qº-Ð0Hõ	Jä”—’˜q¨¨1¨a²Ð'>Ô?Ö@r   c                ó   € \         P                  ! R R7      ;_uu_ 4        \         P                  ! ^4      P                  ^^4      p\         P                  ! ^^ .^ ^.^ ^..4      p\         P
                  ! V^\         P                  ) ^^
..R7      w  r4\        W24       \         P
                  ! V^\         P                  ! R^\         P                  .4      .R7      w  r4\        W24       \         P
                  ! V^\         P                  ) ^\         P                  ..R7      w  r4\        W24       RRR4       R#   + '       g   i     R# ; i)rÓ   )Úinvalidr/   Nr[   )r"   ÚerrstaterK   rÌ  r8   r   rL   r   )r   rs   Úexpectedr;   r<   s   &    r   Útest_inf_edgesÚTestHistogramdd.test_inf_edgeså  sé   € ä�[Š[ ×*Ö*Ü—	’	˜!“×$Ñ$ Q¨Ó*ˆAÜ—x’x ! Q ¨!¨Q¨°!°Q°Ð 8Ó9ˆHÜ—>’> !¨1´·±¨w¸¸2Ð.>Ð*?Ô@‰DˆAÜ˜AÔ(Ü—>’> !¨1¬b¯hªh¸¸A¼r¿v¹v°Ó.GÐ*HÔI‰DˆAÜ˜AÔ(Ü—>’> !¨1´·±¨w¸¼2¿6¹6Ð.BÐ*CÔD‰DˆAÜ˜AÔ(÷ +×*×*Ò*ús    DD<Ä<E	c                ó  € R .p. RO.p\        WR7      w  r4\        V^ ,          R8H  4       \        V^,          R8H  4       R.p. RO.p\        WR7      w  r4\        V^ ,          R8H  4       \        V^,          R8H  4       R.p. RO.p\        WR7      w  r4\        V^ ,          R8H  4       \        V^,          R8H  4       R.p. RO.p\        WR7      w  r4\        V^ ,          R8H  4       \        V^,          R8H  4       R# )gÐG»ÿÿÿï?rI   r1   r/   g8ß   ð?gq¬‹Ûh ð?N)rI   rC   r1   )r   r   )r   rs   r0   r9   Ú_s   &    r   Útest_rightmost_binedgeÚ&TestHistogramdd.test_rightmost_binedgeñ  sî   € àˆNˆÚÐˆÜ˜aÔ+‰ˆÜ��Q•˜3‘ÔÜ��Q•˜2‘ÔØˆEˆÚÐˆÜ˜aÔ+‰ˆÜ��Q•˜3‘ÔÜ��Q•˜2‘ÔØˆNˆÚÐˆÜ˜aÔ+‰ˆÜ��Q•˜3‘ÔÜ��Q•˜3‘ÔØˆHˆÚÐˆÜ˜aÔ+‰ˆÜ��Q•˜3‘ÔÜ��Q•˜3‘Ör   c           	     ó(  € \         P                  P                  R4      p\        VRR.RR.RR..R7       \        \        \        VRR.RR.R\         P
                  ..R7       \        \        \        VRR.\         P                  R.RR..R7       R# )	r   rI   r1   rE   r®   rC   rS   N)r   r5   )r"   r#   r   r   r7   rL   r¯   r©   s   & r   r°   Ú!TestHistogramdd.test_finite_range  s…   € Ü�y‰y×Ñ Ó)ˆÜ�D # s ¨d°D¨\¸DÀ#¸;Ð GÕHÜ”j¤+¨tØ! 3˜Z¨$°¨¸¼b¿f¹f°~ÐFõ	Hä”j¤+¨tØ! 3˜Z¬"¯&©&°$¨¸$À¸ÐE÷	Gr   c                ó  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p^p\        W3W43R7      w  rV\         P                  ! R.R..4      p\        WW4       R# )z9Test that adjacent entries in an edge array can be equal r/   r2   r1   N)r   r.   r4   )r   r4   r4   ©r"   r8   r   r   )r   rs   rt   Úx_edgesÚy_edgesr9   r:   Úhist_expecteds   &       r   Útest_equal_edgesÚ TestHistogramdd.test_equal_edges  sk   € ä�HŠH’YÓˆÜ�HŠH’YÓˆÜ—(’(š9Ó%ˆØˆÜ! 1 &°Ð/AÔB‰ˆäŸšØˆDØˆDð"
ó ˆô 	�TÖ)r   c                óH  € \         P                  ! . RO4      pV^
,          p\         P                  ! . RO4      pV^
,          p\        W3W43R7      w  rV\        V^ ,          P                  VP                  4       \        V^,          P                  VP                  4       R# )z;Test that if an edge array is input, its type is preserved r/   N)r   rH   rß   )r   rˆ   é   rß   )r"   r8   r   r   re   )r   rs   rt   rÝ  rÞ  r9   r:   s   &      r   Útest_edge_dtypeÚTestHistogramdd.test_edge_dtype  so   € ä�HŠH’[Ó!ˆØ��FˆÜ—(’(š>Ó*ˆØ˜B•,ˆÜ! 1 &°Ð/AÔB‰ˆä�U˜1•X—^‘^ W§]¡]Ô3Ü�U˜1•X—^‘^ W§]¡]Ö3r   c                ó  € Rp\         P                  ! ^ .\         P                  4      p\         P                  ! R^.\         P                  4      pW,           pW,           p\        W$3W53R7      w  rg\	        VR,          ^4       R# )r4   r/   Nl            r[   )r   r   )r"   r8   Úint64r   r   )r   Úbigrs   rÝ  rt   rÞ  r9   r:   s   &       r   Útest_large_integersÚ#TestHistogramdd.test_large_integers)  sd   € Øˆä�HŠH�a�Sœ"Ÿ(™(Ó#ˆÜ—(’(˜B ˜8¤R§X¡XÓ.ˆØ�GˆØ•-ˆä! 1 &°Ð/AÔB‰ˆä�T˜$•Z Ö#r   c                ó"  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! ^^	.^^..4      p\         P                  ! ^.^.^,          ,           ^.^,          ,           ^.^	,          ,           4      p\         P                  ! ^.^.^,          ,           ^.^,          ,           ^.^	,          ,           4      p\        WT3W!3R7      w  rg\        Wc4       \        WT3W!3RR7      w  rg\        VR4       R# )r   r/   Tr­  N)r   r4   rñ   )r   rG   rñ   g      �?rÜ  )r   rÝ  rÞ  Úrelative_areasrs   rt   r9   r:   s   &       r   Útest_density_non_uniform_2dÚ+TestHistogramdd.test_density_non_uniform_2d5  sá   € ô —(’(š9Ó%ˆÜ—(’(š9Ó%ˆÜŸšØ�ˆFØ�ˆFð#ó ˆô
 �HŠH�a�S˜A˜3 �7•] a S¨1¥WÕ,°¨s°Q­wÕ6Ó7ˆÜ�HŠH�a�S˜A˜3 �7•] a S¨1¥WÕ,°¨s°Q­wÕ6Ó7ˆô " 1 &°Ð/AÔB‰ˆÜ�TÔ*ô " 1 &°Ð/AÈ4ÔP‰ˆÜ�T˜;Ö'r   c                óÞ   € \         P                  ! ^
4      p\         P                  ! . RO4      p\        WRR7      w  r4\	        V3V3RR7      w  rV\        W54       \        WF^ ,          4       R# )rH   Tr@   NrF   )r"   rK   r8   r   r   r   )r   r(   r0   r9   r:   Úhist_ddÚedges_dds   &      r   Útest_density_non_uniform_1dÚ+TestHistogramdd.test_density_non_uniform_1dP  sU   € ä�IŠI�b‹MˆÜ�xŠxÒ(Ó)ˆÜ °Ô6‰ˆÜ'¨¨¨t¨g¸tÔDÑˆÜ�TÔ#Ü�U Q�KÖ(r   r   N)r/  r0  r1  r2  r+   r¼  r¿  r’   rÆ  r£   rÍ  rÓ  r×  r°   rà  rä  ré  rí  rò  r5  r6  r7  s   @r   r«  r«  ‡  sY   ø‡ € ò#!òJ"ò"ò	-ò@ò
5òAò
)ò ò.Gò*ò	4ò
$ò(÷6)ð )r   r«  )rÖ   r~   Únumpyr"   r   r   r   Únumpy.testingr   r   r   r	   r
   r   r   r   r   r   r:  r«  r   r   r   Ú<module>rö     sI   ðÛ ã ã ß =Ñ =÷
÷ 
õ 
÷Z"ñ Z"÷xT8ñ T8÷nP)ó P)r   