§
    tŠtjR:  ã                   ón  — d dl Zd dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
mZmZ d dlmZ d dlmZ ej        j        gZ ej        d¦  «        Ze                     ej                              eej        ¦  «         ed¦  «        k    o	 e¦   «         dej        › �¬	¦  «        ¦  «         d
„ Zd„ Zej                             d¦  «        ej                             dddg¦  «        d„ ¦   «         ¦   «         Zej                             d¦  «        ej                             dddg¦  «        d„ ¦   «         ¦   «         Zd„ Z ej                             ddddgiddidddgddœid e
dd¬¦  «        ig¦  «        d„ ¦   «         Z!ej                             dg d¢¦  «        d„ ¦   «         Z"ej                             ddd „ idf ej#        dd!„ d"„ giddgej         $                    d#¬	¦  «        ¬$¦  «        g¦  «        d%„ ¦   «         Z%ej                             ddddgiddiddd&œg¦  «        d'„ ¦   «         Z&ej        j        ej                             d( eg d)¢¦  «        dddgif eg d)¢¦  «        ddif eg d)¢g d*¢dœdd+g¬,¦  «        dddgif eg d)¢g d*¢dœdd+g¬,¦  «        ddif eg d)¢g d*¢dœdd+g¬,¦  «        dddgddœif eg d)¢g d*¢dœdd+g¬,¦  «        d- e
dd¬¦  «        ifg¦  «        d.„ ¦   «         ¦   «         Z'd/„ Z(d0„ Z)d1„ Z*ej                             d¦  «        d2„ ¦   «         Z+d3„ Z,d4„ Z-d5„ Z.dS )6é    N)Úis_platform_arm)ÚNumbaUtilError)Ú	DataFrameÚIndexÚNamedAggÚSeriesÚoption_context)ÚVersionÚnumbaz0.61z&Segfaults on ARM platforms with numba )Úreasonc                  óê  — t          j        d¦  «         d„ } t          g d¢g d¢dœddg¬¦  «        }t          j        t          d	¬
¦  «        5  |                     d¦  «                             | d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d	¬
¦  «        5  |                     d¦  «        d                              | d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   c                 ó&   — t          | ¦  «        dz  S ©Nçš™™™™™@©Úsum©Úxs    úg/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pandas/tests/groupby/aggregate/test_numba.pyÚincorrect_functionz;test_correct_function_signature.<locals>.incorrect_function   s   € Ý�1‰vŒv˜‰|Ðó    ©Úar   Úbr   r   ©ç      ð?ç       @ç      @ç      @ç      @©ÚkeyÚdatar"   r#   ©ÚcolumnszThe first 2©Úmatch©Úengine)ÚpytestÚimportorskipr   Úraisesr   ÚgroupbyÚagg)r   r#   s     r   Útest_correct_function_signaturer/      s´  € Ý
Ô˜Ñ Ô Ð ðð ð õ Ø)Ð)Ð)Ð3LÐ3LÐ3LÐMÐMØ˜�ðñ ô €Dõ 
Œ•~¨]Ð	;Ñ	;Ô	;ð Dð DØ�Š�UÑÔ×ÒÐ 2¸7ÐÑCÔCÐCðDð Dð Dñ Dô Dð Dð Dð Dð Dð Dð Døøøð Dð Dð Dð Dõ 
Œ•~¨]Ð	;Ñ	;Ô	;ð Lð LØ�Š�UÑÔ˜FÔ#×'Ò'Ð(:À7Ð'ÑKÔKÐKðLð Lð Lñ Lô Lð Lð Lð Lð Lð Lð Lð Løøøð Lð Lð Lð Lð Lð Ls$   Á+BÂBÂBÂ*1C(Ã(C,Ã/C,c                  ór  — t          j        d¦  «         d„ } d„ }t          g d¢g d¢dœddg¬	¦  «        }|                     d¦  «                             ¦   «         d
z  }t          j        t          d¬¦  «        5  |                     d¦  «                             | dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  |                     d¦  «                             |dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  |                     d¦  «        d                              | dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  |                     d¦  «        d                              |dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  |                     d¦  «                             | dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                     d¦  «                             |dd¬¦  «        }t          j
        |dz   |¦  «         t          j        t          d¬¦  «        5  |                     d¦  «        d                              | dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   |                     d¦  «        d                              |dd¬¦  «        }t          j        |d         dz   |¦  «         d S )Nr   c                ó,   — t          | ¦  «        dz  |z   S r   r   ©ÚvaluesÚindexr   s      r   r   z6test_check_nopython_kwargs.<locals>.incorrect_function0   ó   € Ý�6‰{Œ{˜SÑ  1Ñ$Ð$r   c                 ó,   — t          | ¦  «        dz  |z   S r   r   r2   s      r   Úcorrect_functionz4test_check_nopython_kwargs.<locals>.correct_function3   r5   r   r   r   r!   r"   r#   r$   r   z8missing a required (keyword-only argument|argument): 'a'r&   é   )r)   r   z missing a required argument: 'a'znumba does not support)r)   r   )r*   r+   r   r-   r   r,   Ú	TypeErrorr.   r   ÚtmÚassert_frame_equalÚassert_series_equal)r   r7   r#   ÚexpectedÚactuals        r   Útest_check_nopython_kwargsr?   -   s  € Ý
Ô˜Ñ Ô Ð ð%ð %ð %ð%ð %ð %õ Ø)Ð)Ð)Ð3LÐ3LÐ3LÐMÐMØ˜�ðñ ô €Dð �|Š|˜EÑ"Ô"×&Ò&Ñ(Ô(¨3Ñ.€Hõ 
ŒÝÐSð
ñ 
ô 
ð Ið Ið 	�Š�UÑÔ×ÒÐ 2¸7ÀaÐÑHÔHÐHðIð Ið Iñ Iô Ið Ið Ið Ið Ið Ið Iøøøð Ið Ið Ið Iõ 
Œ•yÐ(JÐ	KÑ	KÔ	Kð Gð GØ�Š�UÑÔ×ÒÐ 0¸ÀAÐÑFÔFÐFðGð Gð Gñ Gô Gð Gð Gð Gð Gð Gð Gøøøð Gð Gð Gð Gõ 
ŒÝÐSð
ñ 
ô 
ð Qð Qð 	�Š�UÑÔ˜FÔ#×'Ò'Ð(:À7ÈaÐ'ÑPÔPÐPðQð Qð Qñ Qô Qð Qð Qð Qð Qð Qð Qøøøð Qð Qð Qð Qõ 
Œ•yÐ(JÐ	KÑ	KÔ	Kð Oð OØ�Š�UÑÔ˜FÔ#×'Ò'Ð(8ÀÈAÐ'ÑNÔNÐNðOð Oð Oñ Oô Oð Oð Oð Oð Oð Oð Oøøøð Oð Oð Oð Oõ 
Œ•~Ð-EÐ	FÑ	FÔ	Fð Ið IØ�Š�UÑÔ×ÒÐ 2¸7ÀaÐÑHÔHÐHðIð Ið Iñ Iô Ið Ið Ið Ið Ið Ið Iøøøð Ið Ið Ið Ià�\Š\˜%Ñ Ô ×$Ò$Ð%5¸gÈÐ$ÑKÔK€FÝÔ˜( Q™,¨Ñ/Ô/Ð/å	Œ•~Ð-EÐ	FÑ	FÔ	Fð Qð QØ�Š�UÑÔ˜FÔ#×'Ò'Ð(:À7ÈaÐ'ÑPÔPÐPðQð Qð Qñ Qô Qð Qð Qð Qð Qð Qð Qøøøð Qð Qð Qð Qà�\Š\˜%Ñ Ô  Ô(×,Ò,Ð-=ÀgÐQRÐ,ÑSÔS€FÝÔ˜8 FÔ+¨aÑ/°Ñ8Ô8Ð8Ð8Ð8sl   Á:,B2Â2B6Â9B6Ã,DÄDÄDÄ62E4Å4E8Å;E8Æ2GÇGÇGÇ>,H6È6H:È=H:Ê2KËK!Ë$K!ÚignoreÚjitTFc                 ó„  — t          j        d¦  «         d„ }| rdd l}|                     |¦  «        }t	          g d¢g d¢dœddg¬¦  «        }|||d	œ}	|                     d|¬
¦  «        }
|t          u r|
d         }
|
                     |d|	¬¦  «        }|
                     d„ d¬¦  «        }t          j	        ||¦  «         d S )Nr   c                 ó0   — t          j        | ¦  «        dz  S r   ©ÚnpÚmean©r3   r4   s     r   Ú
func_numbaz(test_numba_vs_cython.<locals>.func_numba]   ó   € ÝŒw�v‰Œ Ñ$Ð$r   r   r   r   ©r   r8   r8   r$   ©ÚnogilÚparallelÚnopython)Úas_index©r)   Úengine_kwargsc                 ó0   — t          j        | ¦  «        dz  S r   rD   r   s    r   ú<lambda>z&test_numba_vs_cython.<locals>.<lambda>o   ó   € ¥R¤W¨Q¡Z¤Z°#Ñ%5€ r   Úcythonr(   ©
r*   r+   r   rA   r   r-   r   r.   r:   Úassert_equal)rA   Úframe_or_seriesrL   rM   rN   rO   rH   r   r#   rQ   ÚgroupedÚresultr=   s                r   Útest_numba_vs_cythonr[   W   sý   € õ Ô˜Ñ Ô Ð ð%ð %ð %ð ð +àˆˆˆà—Y’Y˜zÑ*Ô*ˆ
åØ%Ð%Ð%Ð*CÐ*CÐ*CÐDÐDÈqÐRSÈfðñ ô €Dð $°ÀxÐPÐP€MØ�lŠl˜1 xˆlÑ0Ô0€GØ�&Ð Ð Ø˜!”*ˆà�[Š[˜¨GÀ=ˆ[ÑQÔQ€FØ�{Š{Ð5Ð5¸hˆ{ÑGÔG€Hå„O�F˜HÑ%Ô%Ð%Ð%Ð%r   c                 óÄ  — t          j        d¦  «         d„ }d„ }| r.dd l}|                     |¦  «        }|                     |¦  «        }t	          g d¢g d¢dœddg¬	¦  «        }|||d
œ}	|                     d¦  «        }
|t          u r|
d         }
|
                     |d|	¬¦  «        }|
                     d„ d¬¦  «        }t          j	        ||¦  «         |
                     |d|	¬¦  «        }|
                     d„ d¬¦  «        }t          j	        ||¦  «         |
                     |d|	¬¦  «        }|
                     d„ d¬¦  «        }t          j	        ||¦  «         d S )Nr   c                 ó0   — t          j        | ¦  «        dz
  S ©Ng333333@rD   rG   s     r   Úfunc_1ztest_cache.<locals>.func_1{   rI   r   c                 ó0   — t          j        | ¦  «        dz  S r   rD   rG   s     r   Úfunc_2ztest_cache.<locals>.func_2~   rI   r   r   r   r   rJ   r8   r$   rK   rP   c                 ó0   — t          j        | ¦  «        dz
  S r^   rD   r   s    r   rS   ztest_cache.<locals>.<lambda>�   rT   r   rU   r(   c                 ó0   — t          j        | ¦  «        dz  S r   rD   r   s    r   rS   ztest_cache.<locals>.<lambda>•   rT   r   c                 ó0   — t          j        | ¦  «        dz
  S r^   rD   r   s    r   rS   ztest_cache.<locals>.<lambda>š   rT   r   rV   )rA   rX   rL   rM   rN   r_   ra   r   r#   rQ   rY   rZ   r=   s                r   Ú
test_cachere   t   sŸ  € õ
 Ô˜Ñ Ô Ð ð%ð %ð %ð%ð %ð %ð ð #Øˆˆˆà—’˜6Ñ"Ô"ˆØ—’˜6Ñ"Ô"ˆåØ%Ð%Ð%Ð*CÐ*CÐ*CÐDÐDÈqÐRSÈfðñ ô €Dð $°ÀxÐPÐP€MØ�lŠl˜1‰oŒo€GØ�&Ð Ð Ø˜!”*ˆà�[Š[˜¨¸}ˆ[ÑMÔM€FØ�{Š{Ð5Ð5¸hˆ{ÑGÔG€HÝ„O�F˜HÑ%Ô%Ð%ð �[Š[˜¨¸}ˆ[ÑMÔM€FØ�{Š{Ð5Ð5¸hˆ{ÑGÔG€HÝ„O�F˜HÑ%Ô%Ð%ð �[Š[˜¨¸}ˆ[ÑMÔM€FØ�{Š{Ð5Ð5¸hˆ{ÑGÔG€HÝ„O�F˜HÑ%Ô%Ð%Ð%Ð%r   c                  óh  — t          j        d¦  «         d„ } t          g d¢g d¢dœddg¬¦  «        }|                     d¦  «        }|                     | d¬	¦  «        }t          d
d¦  «        5  |                     | d ¬	¦  «        }d d d ¦  «         n# 1 swxY w Y   t          j        ||¦  «         d S )Nr   c                 ó0   — t          j        | ¦  «        dz
  S r^   rD   rG   s     r   r_   z&test_use_global_config.<locals>.func_1¡   rI   r   r   r   rJ   r   r8   r$   r(   zcompute.use_numbaT)r*   r+   r   r-   r.   r	   r:   r;   )r_   r#   rY   r=   rZ   s        r   Útest_use_global_configrh   ž   s  € Ý
Ô˜Ñ Ô Ð ð%ð %ð %õ Ø%Ð%Ð%Ð*CÐ*CÐ*CÐDÐDÈqÐRSÈfðñ ô €Dð �lŠl˜1‰oŒo€GØ�{Š{˜6¨'ˆ{Ñ2Ô2€HÝ	Ð+¨TÑ	2Ô	2ð 2ð 2Ø—’˜V¨D�Ñ1Ô1ˆð2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2åÔ˜( FÑ+Ô+Ð+Ð+Ð+s   Á.BÂBÂBÚ
agg_kwargsÚfuncÚminÚmaxr   )r8   é   Úbminr8   )ÚcolumnÚaggfuncc                 ó   — t          j        d¦  «         t          g d¢g d¢g d¢dœg d¢¬¦  «        }|                     d¦  «        } |j        d
i | ¤ddi¤Ž} |j        d
i | ¤dd	i¤Ž}t          j        ||¦  «         d S )Nr   r   r   ©r8   rm   é   é   é   ©r   r8   rm   r$   r   r)   rU   © ©r*   r+   r   r-   r.   r:   r;   )ri   r#   rY   rZ   r=   s        r   Ú$test_multifunc_numba_vs_cython_framery   ®   sÃ   € õ Ô˜Ñ Ô Ð Ýà(Ð(Ð(Ø(Ð(Ð(Øˆˆð	
ð 	
ð
 �	�	ðñ ô €Dð �lŠl˜1‰oŒo€GØˆWŒ[Ð6Ð6˜:Ð6Ð6¨gÐ6Ð6Ð6€FØˆwŒ{Ð9Ð9˜ZÐ9Ð9°Ð9Ð9Ð9€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   )r   rF   ÚvarÚstdrk   rl   c                 ó6  — t          j        d¦  «         t          g d¢dt          j        dddgg d¢dœg d¢¬	¦  «        }|                     d
¦  «        }|                     | dd¬¦  «        }|                     | dd¬¦  «        }t          j        ||¦  «         d S )Nr   r   r   r   r   r    rr   rv   r$   r   F)Úskipnar)   rU   )	r*   r+   r   rE   Únanr-   r.   r:   r;   )rj   r#   rY   rZ   r=   s        r   Ú-test_multifunc_numba_vs_cython_frame_noskipnar   Ç   s²   € å
Ô˜Ñ Ô Ð Ýà(Ð(Ð(Ø•R”V˜S # sÐ+Øˆˆð	
ð 	
ð
 �	�	ðñ ô €Dð �lŠl˜1‰oŒo€GØ�[Š[˜ e°Gˆ[Ñ<Ô<€FØ�{Š{˜4¨°hˆ{Ñ?Ô?€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   zagg_kwargs,expected_funcc                 ó*   — |                       ¦   «         S ©Nr   rG   s     r   rS   rS   Û   s   € ¨¯
ª
©¬€ r   c                 ó*   — |                       ¦   «         S r�   r   rG   s     r   rS   rS   à   ó   € ¨&¯*ª*©,¬,€ r   c                 ó*   — |                       ¦   «         S r�   ©rk   rG   s     r   rS   rS   á   rƒ   r   z2This doesn't work yet! Fails in nopython pipeline!)Úmarksc                 ó  — t          j        d¦  «         t          g d¢g d¢g d¢dœg d¢¬¦  «        }|                     d¦  «        } |j        di | ¤ddi¤Ž}|                     |d	¬
¦  «        }t          j        ||d¬¦  «         d S )Nr   r   r   rr   rv   r$   r   r)   rU   r(   F)Úcheck_dtyperw   rx   )ri   Úexpected_funcr#   rY   rZ   r=   s         r   Útest_multifunc_numba_udf_framerŠ   Ø   s½   € õ( Ô˜Ñ Ô Ð Ýà(Ð(Ð(Ø(Ð(Ð(Øˆˆð	
ð 	
ð
 �	�	ðñ ô €Dð �lŠl˜1‰oŒo€GØˆWŒ[Ð6Ð6˜:Ð6Ð6¨gÐ6Ð6Ð6€FØ�{Š{˜=°ˆ{Ñ:Ô:€Hõ Ô˜& (¸Ð>Ñ>Ô>Ð>Ð>Ð>r   )Úmin_valÚmax_valc                 óL  — t          j        d¦  «         g d¢}t          g d¢¦  «        }|                     |¦  «        }d| d<    |j        di | ¤Ž}d| d<    |j        di | ¤Ž}t          |t          ¦  «        rt          j        ||¦  «         d S t          j	        ||¦  «         d S )Nr   r   r   r)   rU   rw   )
r*   r+   r   r-   r.   Ú
isinstancer   r:   r;   r<   )ri   Úlabelsr#   rY   rZ   r=   s         r   Ú%test_multifunc_numba_vs_cython_seriesr�   ý   sË   € õ
 Ô˜Ñ Ô Ð Ø&Ð&Ð&€FÝÐ+Ð+Ð+Ñ,Ô,€DØ�lŠl˜6Ñ"Ô"€GØ"€JˆxÑØˆWŒ[Ð&Ð&˜:Ð&Ð&€FØ#€JˆxÑØˆwŒ{Ð(Ð(˜ZÐ(Ð(€HÝ�(�IÑ&Ô&ð 1Ý
Ô˜f hÑ/Ô/Ð/Ð/Ð/å
Ô˜v xÑ0Ô0Ð0Ð0Ð0r   zdata,agg_kwargsr   rr   rm   r$   Úmin_colc                 ó,  — t          j        d¦  «         g d¢}|                      |¦  «        } |j        di |¤dddidœ¤Ž} |j        di |¤ddi¤Ž}t	          |t
          ¦  «        rt          j        ||¦  «         d S t          j        ||¦  «         d S )Nr   r   rM   TrP   r)   rw   )	r*   r+   r-   r.   rŽ   r   r:   r;   r<   )r#   ri   r�   rY   rZ   r=   s         r   Ú&test_multifunc_numba_kwarg_propagationr“     sÂ   € õB Ô˜Ñ Ô Ð Ø&Ð&Ð&€FØ�lŠl˜6Ñ"Ô"€GØˆWŒ[ÐXÐX˜:ÐX¨gÀjÐRVÐEWÐXÐXÐXÐX€FØˆwŒ{Ð8Ð8˜ZÐ8Ð8°Ð8Ð8Ð8€HÝ�(�IÑ&Ô&ð 1Ý
Ô˜f hÑ/Ô/Ð/Ð/Ð/å
Ô˜v xÑ0Ô0Ð0Ð0Ð0r   c                  óæ  — t          j        d¦  «         d„ } t          g d¢g d¢dœ¦  «        }|                     d¦  «        d         }|                     | dd¬	¦  «        }t          d
gdz  dt          ddgd¬¦  «        ¬¦  «        }t          j        ||¦  «         |                     | dd¬	¦  «        }t          dgdz  dt          ddgd¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nr   c                 ó<   — | | d …                               ¦   «         S r�   r   )r3   r4   Úns      r   Úsum_lastz&test_args_not_cached.<locals>.sum_last@  s   € Ø�q�b�c�cŒ{�ŠÑ Ô Ð r   )r   r   r8   r8   )r8   r8   r8   r8   )Úidr   r˜   r   r8   r(   r   rm   r   ©Úname)rš   r4   r   )	r*   r+   r   r-   r.   r   r   r:   r<   )r—   ÚdfÚ	grouped_xrZ   r=   s        r   Útest_args_not_cachedr�   <  s  € å
Ô˜Ñ Ô Ð ð!ð !ð !õ 
˜,˜,˜,¨\¨\¨\Ð:Ð:Ñ	;Ô	;€BØ—
’
˜4Ñ Ô  Ô%€IØ�]Š]˜8 Q¨wˆ]Ñ7Ô7€FÝ�s�e˜a‘i cµ¸¸1°vÀDÐ1IÑ1IÔ1IÐJÑJÔJ€HÝÔ˜6 8Ñ,Ô,Ð,à�]Š]˜8 Q¨wˆ]Ñ7Ô7€FÝ�s�e˜a‘i cµ¸¸1°vÀDÐ1IÑ1IÔ1IÐJÑJÔJ€HÝÔ˜6 8Ñ,Ô,Ð,Ð,Ð,r   c                  ó2  — t          j        d¦  «         d„ } t          g d¢g d¢dœg d¢¬¦  «        }|                     d¦  «                             | d¬	¦  «        }t          d
dgdgt          ddgd¬¦  «        ¬¦  «        }t          j        ||¦  «         d S )Nr   c                 ó*   — t          j        |¦  «        S r�   rD   rG   s     r   Úfz+test_index_data_correctly_passed.<locals>.fR  s   € ÝŒw�u‰~Œ~Ðr   )ÚAr¡   ÚB)rt   ru   é   )ÚgroupÚv)éÿÿÿÿéþÿÿÿéýÿÿÿ)r4   r¤   r(   g      ø¿g      Àr¥   r¡   r¢   r™   )r%   r4   )r*   r+   r   r-   Ú	aggregater   r:   r;   )r    r›   rZ   r=   s       r   Ú test_index_data_correctly_passedrª   N  s»   € å
Ô˜Ñ Ô Ð ðð ð õ 
˜_˜_˜_°9°9°9Ð=Ð=À\À\À\Ð	RÑ	RÔ	R€BØ�ZŠZ˜Ñ Ô ×*Ò*¨1°WÐ*Ñ=Ô=€FÝØ	ˆtˆ˜s˜e­5°#°s°À'Ð+JÑ+JÔ+Jðñ ô €Hõ Ô˜& (Ñ+Ô+Ð+Ð+Ð+r   c                  óà  ‡‡‡— t          j        d¦  «         dŠdŠdŠˆˆˆfd„} ‰‰‰dœ}t          dg d¢i¦  «        }|                     d¬	¦  «                             | d|¬
¦  «        }t          dg d¢i¦  «        }t          j        ||¦  «         dŠ‰‰‰dœ}|                     d¬	¦  «                             | d|¬
¦  «        }t          dg d¢i¦  «        }t          j        ||¦  «         d S )Nr   TFc                 ó   •— ‰‰z   ‰z   S r�   rw   )r3   r4   rL   rN   rM   s     €€€r   Úfunc_kwargsz2test_engine_kwargs_not_cached.<locals>.func_kwargse  s   ø€ Ø�xÑ (Ñ*Ð*r   ©rN   rL   rM   Úvalue)r   r   r   r   )ÚlevelrP   )r   r   r   )r   r   r   )r*   r+   r   r-   r©   r:   r;   )r­   rQ   r›   rZ   r=   rL   rN   rM   s        @@@r   Útest_engine_kwargs_not_cachedr±   ]  s?  øøø€ õ Ô˜Ñ Ô Ð Ø€EØ€HØ€Hð+ð +ð +ð +ð +ð +ð +ð "*°EÀxÐPÐP€MÝ	�G˜Y˜Y˜YÐ'Ñ	(Ô	(€BØ�ZŠZ˜aˆZÑ Ô ×*Ò*Ø˜G°=ð +ñ ô €Fõ ˜' ? ? ?Ð3Ñ4Ô4€HÝÔ˜& (Ñ+Ô+Ð+à€EØ!)°EÀxÐPÐP€MØ�ZŠZ˜aˆZÑ Ô ×*Ò*Ø˜G°=ð +ñ ô €Fõ ˜' ? ? ?Ð3Ñ4Ô4€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   c                 óZ  — t          j        d¦  «         d„ }t          ddddœg¦  «                             ddg¦  «        }|| |d	œ}|                     d¦  «                             |d|¬
¦  «        }t          dgt          dgd¬¦  «        dg¬¦  «        }t          j        ||¦  «         d S )Nr   c                 ó   — dS ©Nr8   rw   rG   s     r   Ú
numba_funcz+test_multiindex_one_key.<locals>.numba_func}  ó   € Øˆqr   r8   rm   rs   ©r¡   r¢   ÚCr¡   r¢   r®   rP   r   r™   r¸   )r4   r%   )	r*   r+   r   Ú	set_indexr-   r.   r   r:   r;   )rL   rM   rN   rµ   r›   rQ   rZ   r=   s           r   Útest_multiindex_one_keyrº   y  sÌ   € å
Ô˜Ñ Ô Ð ðð ð õ 
˜! !¨!Ð,Ð,Ð-Ñ	.Ô	.×	8Ò	8¸#¸s¸Ñ	DÔ	D€BØ!)°EÀxÐPÐP€MØ�ZŠZ˜‰_Œ_× Ò Ø˜7°-ð !ñ ô €Fõ ˜#˜¥e¨Q¨C°cÐ&:Ñ&:Ô&:ÀSÀEÐJÑJÔJ€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   c                 óT  — t          j        d¦  «         d„ }t          ddddœg¦  «                             ddg¦  «        }|| |d	œ}t          j        t
          d
¬¦  «        5  |                     ddg¦  «                             |d|¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   c                 ó   — dS r´   rw   rG   s     r   rµ   z;test_multiindex_multi_key_not_supported.<locals>.numba_funcŒ  r¶   r   r8   rm   rs   r·   r¡   r¢   r®   zmore than 1 grouping labelsr&   rP   )r*   r+   r   r¹   r,   ÚNotImplementedErrorr-   r.   )rL   rM   rN   rµ   r›   rQ   s         r   Ú'test_multiindex_multi_key_not_supportedr¾   ‰  s  € Ý
Ô˜Ñ Ô Ð ðð ð õ 
˜! !¨!Ð,Ð,Ð-Ñ	.Ô	.×	8Ò	8¸#¸s¸Ñ	DÔ	D€BØ!)°EÀxÐPÐP€MÝ	ŒÕ*Ð2OÐ	PÑ	PÔ	Pð 
ð 
Ø
�
Š
�C˜�:ÑÔ×"Ò"Ø˜w°mð 	#ñ 	
ô 	
ð 	
ð
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
ð 
ð 
s   Á".BÂB!Â$B!c                 óJ  — t          j        d¦  «         | \  }}t          g d¢g d¢t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        dœ¦  «        }|                     ddg¦  «        } |j        |fd	di|¤Ž} |j        |fd	d
i|¤Ž}t          j
        ||¦  «          t          ||¦  «        dd	di|¤Ž} t          ||¦  «        dd	d
i|¤Ž}t          j
        ||¦  «         d S )Nr   ©ÚfooÚbarrÁ   rÂ   rÁ   rÂ   rÁ   rÁ   ©ÚonerÄ   ÚtwoÚthreerÅ   rÅ   rÄ   rÆ   rm   é   ©r¡   r¢   r¸   ÚDr¡   r¢   r)   rU   rw   )r*   r+   r   rE   ÚrandomÚdefault_rngÚstandard_normalr-   r.   r:   r;   Úgetattr)	Únumba_supported_reductionsÚ	reductionÚkwargsr›   ÚgbÚres_aggÚexpected_aggÚ
direct_resÚdirect_expecteds	            r   Útest_multilabel_numba_vs_cythonrÖ   —  sQ  € Ý
Ô˜Ñ Ô Ð Ø2Ñ€IˆvÝ	àIÐIÐIØMÐMÐMÝ”×&Ò& qÑ)Ô)×9Ò9¸!Ñ<Ô<Ý”×&Ò& qÑ)Ô)×9Ò9¸!Ñ<Ô<ð		
ð 	
ñ
ô 
€Bð 
�Š�S˜#�JÑ	Ô	€BØˆbŒf�YÐ9Ð9 wÐ9°&Ð9Ð9€GØ�2”6˜)Ð?Ð?¨HÐ?¸Ð?Ð?€LÝÔ˜' <Ñ0Ô0Ð0à'•˜˜YÑ'Ô'ÐAÐA¨wÐA¸&ÐAÐA€JØ,•g˜b )Ñ,Ô,ÐGÐG°HÐGÀÐGÐG€OÝÔ˜* oÑ6Ô6Ð6Ð6Ð6r   c                  óÖ  — t          j        d¦  «         t          g d¢g d¢t          j                             d¦  «                             d¦  «        t          j                             d¦  «                             d¦  «        dœ¦  «        } |                      ddg¦  «        }|                     d	„ d¬
¦  «        }|                     d„ d¬
¦  «        }t          j
        ||¦  «         d S )Nr   rÀ   rÃ   rm   rÇ   rÈ   r¡   r¢   c                 ó*   — |                       ¦   «         S r�   r…   rG   s     r   rS   z5test_multilabel_udf_numba_vs_cython.<locals>.<lambda>·  rƒ   r   r(   c                 ó*   — |                       ¦   «         S r�   r…   r   s    r   rS   z5test_multilabel_udf_numba_vs_cython.<locals>.<lambda>¸  s   €  §¢¡¤€ r   rU   )r*   r+   r   rE   rÊ   rË   rÌ   r-   r.   r:   r;   )r›   rÑ   rZ   r=   s       r   Ú#test_multilabel_udf_numba_vs_cythonrÚ   ¬  sâ   € Ý
Ô˜Ñ Ô Ð Ý	àIÐIÐIØMÐMÐMÝ”×&Ò& qÑ)Ô)×9Ò9¸!Ñ<Ô<Ý”×&Ò& qÑ)Ô)×9Ò9¸!Ñ<Ô<ð		
ð 	
ñ
ô 
€Bð 
�Š�S˜#�JÑ	Ô	€BØ�VŠVÐ6Ð6¸wˆVÑGÔG€FØ�vŠvÐ'Ð'°ˆvÑ9Ô9€HÝÔ˜& (Ñ+Ô+Ð+Ð+Ð+r   )/ÚnumpyrE   r*   Úpandas.compatr   Úpandas.errorsr   Úpandasr   r   r   r   r	   Úpandas._testingÚ_testingr:   Úpandas.util.versionr
   ÚmarkÚ
single_cpuÚ
pytestmarkr+   r   ÚappendÚskipifÚ__version__r/   r?   ÚfilterwarningsÚparametrizer[   re   rh   ry   r   ÚparamÚxfailrŠ   r�   r“   r�   rª   r±   rº   r¾   rÖ   rÚ   rw   r   r   ú<module>rì      sÓ  ðØ Ð Ð Ð Ø €€€à )Ð )Ð )Ð )Ð )Ð )Ø (Ð (Ð (Ð (Ð (Ð (ðð ð ð ð ð ð ð ð ð ð ð ð ð ð Ð Ð Ð Ð Ð Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'àŒkÔ$Ð%€
àˆÔ˜GÑ$Ô$€Ø 
× Ò Ø
„K×ÒØˆ�Ô!Ñ"Ô" g g¨f¡o¤oÒ5ÐK¸/¸/Ñ:KÔ:KØK¸Ô8IÐKÐKð ñ ô ñô ð ðLð Lð Lð"'9ð '9ð '9ðT „×Ò˜HÑ%Ô%à„×Ò˜  u Ñ.Ô.ð&ð &ñ /Ô.ñ &Ô%ð&ð4 „×Ò˜HÑ%Ô%à„×Ò˜  u Ñ.Ô.ð$&ð $&ñ /Ô.ñ &Ô%ð$&ðN,ð ,ð ,ð  „×ÒØà	�%˜�Ð Ø	�ˆØ	�e˜U�^¨Ð.Ð.Ð/Ø	�� ¨EÐ2Ñ2Ô2Ð3ð	ñô ð,ð ,ñô ð,ð  „×Ò˜Ð!LÐ!LÐ!LÑMÔMð,ð ,ñ NÔMð,ð  „×ÒØà
Ð4Ð4Ð	5°uÐ=àˆŒàØ6Ð6Ø6Ð6ððð �EˆNØ”+×#Ò#ØKð $ñ ô ð	
ñ 	
ô 	
ðñô ð&?ð ?ñ'ô ð&?ð$ „×ÒØØˆu�eˆnÐ ¨˜¸EÈeÐ0TÐ0TÐUñô ð1ð 1ñ	ô ð1ð „ÔØ„×ÒØà	ˆÐ)Ð)Ð)Ñ	*Ô	*¨V°e¸U°^Ð,DÐEØ	ˆÐ)Ð)Ð)Ñ	*Ô	*¨V°U¨OÐ<àˆIØ-Ð-Ð-°/°/°/ÐBÐBÈQÐPQÈFðñ ô ð �e˜U�^Ð$ð		
ð ˆIØ-Ð-Ð-°/°/°/ÐBÐBÈQÐPQÈFðñ ô ð �UˆOð		
ð ˆIØ-Ð-Ð-°/°/°/ÐBÐBÈQÐPQÈFðñ ô ð ˜% ˜¨EÐ2Ð2Ð3ð		
ð ˆIØ-Ð-Ð-°/°/°/ÐBÐBÈQÐPQÈFðñ ô ð ˜˜¨°5Ð9Ñ9Ô9Ð:ð		
ð+ñô ð>	1ð 	1ñ?ô ñ Ôð@	1ð-ð -ð -ð$,ð ,ð ,ð,ð ,ð ,ð8 „×Ò˜HÑ%Ô%ð,ð ,ñ &Ô%ð,ð
ð 
ð 
ð7ð 7ð 7ð*,ð ,ð ,ð ,ð ,r   