Ë
    ž…j
#  ã            
       óR  — d dl Zd dlZd dlZd dlmZ ej                  j                  dd g d¢gddggdg gdg d¢gdd	d
ggdg gg«      d„ «       Z
d„ Zej                  j                  dd dgg d¢gg d¢g d¢g ed dd«      g d¢gd dhg d¢ggg d¢¬«      d„ «       Zd„ Zd„ Zd„ Zej                  j                  dd g d¢gg d¢g d¢g edd«       edd«      fg d¢gg«      d„ «       Zd„ Zd„ Zej                  j                  dg d¢«      ej                  j                  ddd g«      ej                  j                  d!d"d#g«      d$„ «       «       «       Zej                  j                  d%g d&¢«      ej                  j                  d'g d&¢«      ej                  j                  d(g d)¢«      d*„ «       «       «       Zd+„ Zej                  j                  d(g d,¢«      d-„ «       Zd.„ Zej                  j                  d/eej6                  ej8                  ej:                  g«      d0„ «       Zd1„ Zy)2é    Nzarg, expected_rows)r   é   é   é   é   éÿÿÿÿ)é   r   é   éþÿÿÿr   é   iúÿÿÿc                 ól   — |j                   |   }| j                  |   }t        j                  ||«       y ©N©Ú_positional_selectorÚilocÚtmÚassert_frame_equal©Úslice_test_dfÚslice_test_groupedÚargÚexpected_rowsÚresultÚexpecteds         úc/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/pandas/tests/groupby/test_indexing.pyÚtest_intr   
   s4   € ð  ×4Ñ4°SÑ9€FØ×!Ñ! -Ñ0€Hä×Ñ˜& (Õ+ó    c                 óv   — |j                   ddd…   }| j                  g d¢   }t        j                  ||«       y )Nr   r   r   ©r   r   r   r   r   ©r   r   r   r   s       r   Ú
test_slicer       s8   € à×4Ñ4°Q°q¸°UÑ;€FØ×!Ñ!¢,Ñ/€Hä×Ñ˜& (Õ+r   r   ©r   r   r   ©r   r   r   r   r   r	   r   )ÚlistÚnegativeÚrangeÚset)Úidsc                 ól   — |j                   |   }| j                  |   }t        j                  ||«       y r   r   r   s         r   Ú	test_listr)   %   s4   € ð"  ×4Ñ4°SÑ9€FØ×!Ñ! -Ñ0€Hä×Ñ˜& (Õ+r   c                 óp   — |j                   d   }| j                  g d¢   }t        j                  ||«       y )Nr!   r"   r   r   s       r   Ú	test_intsr+   <   s3   € à×4Ñ4°XÑ>€FØ×!Ñ!Ò"4Ñ5€Hä×Ñ˜& (Õ+r   c                 ó|   — |j                   d d…dd …f   }| j                  g d¢   }t        j                  ||«       y )Nr   r
   ©r   r   r   r   r   r   r	   r   r   s       r   Útest_slicesr.   D   s=   € à×4Ñ4°R°a°R¸¹°WÑ=€FØ×!Ñ!Ò"7Ñ8€Hä×Ñ˜& (Õ+r   c                 óz   — |j                   dddd …f   }| j                  g d¢   }t        j                  ||«       y )Nr   r   r
   r-   r   r   s       r   Útest_mixr0   L   s;   € à×4Ñ4°Q¸¸2¹3°YÑ?€FØ×!Ñ!Ò"7Ñ8€Hä×Ñ˜& (Õ+r   r-   c                 óŽ   — | j                  dd¬«      j                  |   }| j                  |   }t        j                  ||«       y )NÚGroupF)Úsort)Úgroupbyr   r   r   r   )r   r   r   r   r   s        r   Útest_as_indexr5   T   sD   € ð ×"Ñ" 7°Ð"Ó7×LÑLÈSÑQ€FØ×!Ñ! -Ñ0€Hä×Ñ˜& (Õ+r   c                  óœ  — t        j                  ddgddgddgddgddggdd	g¬
«      } | j                  dd¬«      }|j                  dd }t        j                  ddgddggdd	gddg¬«      }t	        j
                  ||«       |j                  d   }t        j                  ddgddgddggdd	gg d¢¬«      }t	        j
                  ||«       y )NÚar   r   r   Úbr   r   ÚAÚB©ÚcolumnsF©Úas_index©r<   Úindex)r   r   )r   r   r   )ÚpdÚ	DataFramer4   r   r   r   )ÚdfÚgroupedr   r   s       r   Útest_doc_examplesrE   d   sä   € ä	�‰Ø
ˆqˆ�C˜�8˜c 1˜X¨¨Q x°#°q°Ð:ÀSÈ#ÀJô
€Bð �j‰j˜ uˆjÓ-€Gà×)Ñ)¨!¨AÐ.€FÜ�|‰|˜c 1˜X¨¨Q xÐ0¸3À¸*ÈQÐPQÈFÔS€Hä×Ñ˜& (Ô+à×)Ñ)¨%Ñ0€FÜ�|‰|Ø
ˆqˆ�C˜�8˜c 1˜XÐ&°°c°
Â)ô€Hô ×Ñ˜& (Õ+r   c            
      ó¨  — d„ } t         j                  j                  d«      }d}d}t        j                  d|d¬«      }t        |«      D �cg c]  }d|› �‘Œ	 }}i }|D ]j  }||j                  d	d
«      z
  }	|d |	 D �
cg c]-  }
|
|j                  d	d«      dz  |j                  d	d«      dz  f‘Œ/ }}
|j                  d„ ¬«       |||<   Œl  | |«      }|j                  dd¬«      j                  t        dd«      «      }|j                  «       D ��ci c]  \  }}||dd “Œ }}} | |«      }t        j                  ||«       y c c}w c c}
w c c}}w )Nc                 ó¶   — i }| D ]  }| |   D ]  }|d   |d   dœ|||d   f<   Œ Œ! t         j                  j                  |d¬«      }d|j                  _        |S )Nr   r   )r9   r:   r   r@   )Úorient)ÚDateÚItem)rA   rB   Ú	from_dictr@   Únames)ÚdataÚrowsÚdateÚlevelrC   s        r   Ú_make_df_from_dataz+test_multiindex.<locals>._make_df_from_data|   sx   € ØˆØò 	HˆDØ˜d™ò H�Ø/4°Q©x¸eÀA¹hÑ)G��d˜E !™HÐ%Ò&ñHð	Hô �\‰\×#Ñ# D°Ð#Ó9ˆØ)ˆ�‰ŒØˆ	r   r   éd   é   Ú20130101ÚD)ÚperiodsÚfreqzitem r   é   i'  c                 ó   — | d   S )Nr   © )Úxs    r   ú<lambda>z!test_multiindex.<locals>.<lambda>“   s
   €  ! A¡$€ r   )ÚkeyrI   Fr=   r   éýÿÿÿ)ÚnpÚrandomÚdefault_rngrA   Ú
date_ranger%   Úintegersr3   r4   ÚnthÚsliceÚitemsr   r   )rQ   ÚrngÚndatesÚnitemsÚdatesÚirf   Úmultiindex_datarO   Únitems_for_dateÚitemÚlevelsrC   r   ÚvaluesÚslicedr   s                    r   Útest_multiindexrr   y   sk  € òô �)‰)×
Ñ
 Ó
"€CØ€FØ€FÜ�M‰M˜*¨f¸3Ô?€EÜ"'¨£-Ö0˜Qˆu�Q�CŠ[Ð0€EÐ0à€OØò 'ˆØ  3§<¡<°°2Ó#6Ñ6ˆð Ð.˜Ð/ö
àð �3—<‘<  5Ó)¨CÑ/°·±¸aÀÓ1GÈ#Ñ1MÒNð
ˆð 
ð 	�‰™ˆÔ'Ø &ˆ˜Òð'ñ 
˜OÓ	,€BØ�Z‰Z˜¨ˆZÓ/×3Ñ3´E¸!¸R³LÓA€Fà5D×5JÑ5JÓ5L×M¡\ T¨6ˆd�F˜1˜R�LÑ ÐM€FÑMÙ! &Ó)€Hä×Ñ˜& (Õ+ùò% 1ùò

ùó Ns   ÁEÁ=2E	ÄEr   )r   r   é   iè  r   éûÿÿÿiâÿÿÿiüÿÿÚmethodÚheadÚtailÚ	simulatedTFc           
      óp  — d}d}t        |«      D ��cg c]  }t        |«      D ]  }d|› �‘Œ	 Œ c}}t        |«      D ��cg c]  }t        |«      D ]
  }d|› d|› �‘Œ Œ c}}dœ}t        j                  |«      }|j                  dd¬«      }	| d	k\  r| n|| z   }
|d
k(  rq|	j                  d |  }|rNt        |
«      D ��cg c](  }t        |«      D ]  }||z  |z   ||z  k  r||z  |z   ‘Œ Œ* }}}|j
                  |   }nŒ|	j                  | «      }nz|	j                  |  d  }|rWt        |
«      D ��cg c]1  }t        |«      D ]!  }||z   |
z
  |z  |z   d	k\  r||z   |
z
  |z  |z   ‘Œ# Œ3 }}}|j
                  |   }n|	j                  | «      }t        j                  ||«       y c c}}w c c}}w c c}}w c c}}w )NrR   rs   zgroup z row ©ÚgroupÚvaluer{   Fr=   r   rv   )
r%   rA   rB   r4   r   r   rv   rw   r   r   )r   ru   rx   Ún_groupsÚn_rows_per_groupÚjÚgrM   rC   rD   Úsizer   rk   Úindicesr   s                  r   Útest_against_head_and_tailrƒ   Ÿ   s)  € ð
 €HØÐô #(Ð(8Ó"9÷
ØÄ5ÈÃ?ò
Ø>?ˆf�Q�CŠLð
Øó
ô
 Ð+Ó,÷
àÜ˜8“_ò
ð ð �Q�C�u˜Q˜CÒ ð
Ø ó
ñ		€Dô 
�‰�dÓ	€BØ�j‰j˜¨5ˆjÓ1€GØ˜’(‰3Ð 0°3Ñ 6€Dà�ÒØ×-Ñ-¨d¨sÐ3ˆáô ˜t›÷àÜ˜x›òð Ø�x‘< !Ñ# hÐ1AÑ&AÒAð �H‘˜qÓ ðØ ðˆGñ ð —w‘w˜wÑ'‰Hð —|‘| CÓ(‰Hð ×-Ñ-¨s¨d¨eÐ4ˆáô ˜t›÷àÜ˜x›òð Ø$ qÑ(¨4Ñ/°8Ñ;¸aÑ?À1ÒDð " AÑ%¨Ñ,°Ñ8¸1Ó<ðØ<ðˆGñ ð —w‘w˜wÑ'‰Hð —|‘| CÓ(ˆHä×Ñ˜& (Õ+ùóW
ùó
ùóùós   “F Á F&Â=-F,Ä/6F2Ústart)Nr   r   é
   r   iöÿÿÿÚstopÚstep)Nr   r   c                 ó  — d}dg|z  t        t        |«      «      dœ}t        j                  |«      }|j	                  dd¬«      }|j
                  | ||…   }|j                  | ||…   }t        j                  ||«       y )Nrs   zgroup 0rz   r{   Fr=   )	r#   r%   rA   rB   r4   r   r   r   r   )	r„   r†   r‡   Ún_rowsrM   rC   rD   r   r   s	            r   Útest_against_df_ilocrŠ   Ö   s„   € ð
 €Fð �˜vÑ%Ü”e˜F“mÓ$ñ€Dô 
�‰�dÓ	€BØ�j‰j˜¨5ˆjÓ1€Gà×)Ñ)¨%°°T¨/Ñ:€FØ�w‰w�u˜T $�Ñ'€Hä×Ñ˜& (Õ+r   c                  óÞ   — t        j                  g d¢g d¢¬«      } | j                  d¬«      }|j                  dd }t        j                  ddgd	d
g¬«      }t	        j
                  ||«       y )N©r   r   r   r   r   )r7   r7   r7   r8   r8   )r@   r   )rP   r   r   r   r7   r8   )rA   ÚSeriesr4   r   r   Úassert_series_equal)ÚserrD   r   r   s       r   Útest_seriesr�   ê   s]   € ä
�)‰)’OÒ+DÔ
E€CØ�k‰k ˆkÓ"€GØ×)Ñ)¨!¨AÐ.€FÜ�y‰y˜!˜Q˜¨¨S zÔ2€Hä×Ñ˜6 8Õ,r   rŒ   c                 ó€  — t        d«      D �cg c]	  }dd|› �g‘Œ }}|t        d«      D �cg c]	  }dd|› �g‘Œ c}z  }|t        d«      D �cg c]	  }dd|› �g‘Œ c}z  }t        j                  |ddg¬	«      }|j                  dd
¬«      }|j                  d d | …   }t        dd| «      D �cg c]	  }dd|› �g‘Œ }}|t        dd| «      D �cg c]	  }dd|› �g‘Œ c}z  }|t        dd| «      D �cg c]	  }dd|› �g‘Œ c}z  }t        dd| «      D �cg c]  }d|z   ‘Œ	 }}|t        dd| «      D �cg c]  }d|z   ‘Œ	 c}z  }|t        dd| «      D �cg c]  }d|z   ‘Œ	 c}z  }t        j                  |ddg|¬«      }t        j                  ||«       y c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w c c}w )Nr   r[   r   Úyr   Úzr9   r:   r;   Fr=   r   é	   r?   )r%   rA   rB   r4   r   r   r   )r‡   rk   rM   rC   rD   r   r@   r   s           r   Ú	test_stepr•   ô   sÄ  € ô %*¨!£HÖ-˜qˆS�A�a�S�'ŠNÐ-€DÐ-Ø¤U¨1£XÖ. ˆc�Q�q�c�7Š^Ò.Ñ.€DØ¤U¨1£XÖ. ˆc�Q�q�c�7Š^Ò.Ñ.€DÜ	�‰�d S¨# JÔ	/€Bà�j‰j˜ uˆjÓ-€Gà×)Ñ)©&¨D¨&Ñ1€Fä$)¨!¨Q°Ó$5Ö6˜qˆS�A�a�S�'ŠNÐ6€DÐ6Ø¤U¨1¨a°Ó%6Ö7 ˆc�Q�q�c�7Š^Ò7Ñ7€DØ¤U¨1¨a°Ó%6Ö7 ˆc�Q�q�c�7Š^Ò7Ñ7€Dä! ! Q¨Ó-Ö.�qˆQ�‹UÐ.€EÐ.Ø	œU 1 a¨Ó.Ö/˜ˆa�!‹eÒ/Ñ/€EØ	œU 1 a¨Ó.Ö/˜ˆa�!‹eÒ/Ñ/€Eä�|‰|˜D¨3°¨*¸EÔB€Hä×Ñ˜& (Õ+ùò' .ùÚ.ùÚ.ùò 7ùÚ7ùÚ7ùâ.ùÚ/ùÚ/s4   ŽF¬FÁFÂ-F"ÃF'Ã0F,ÄF1Ä0F6ÅF;c            	      óH  — t        j                  dD � ci c]  } | t        d«      “Œ c} «      }ddg}|j                  |j                  dk  «      |   D ]H  \  }}t        j                  |j                  t        j                  |«      «       d|j                  vrŒHJ ‚ y c c} w )NÚABCr…   r9   r:   r   ÚC)	rA   rB   r%   r4   r9   r   Úassert_index_equalr<   ÚIndex)ÚkrC   ÚcolsÚ_Údgs        r   Útest_columns_on_iterrŸ     sŠ   € ä	�‰¨UÖ3¨�qœ% ›)‘|Ò3Ó	4€Bð �ˆ:€DØ—‘˜BŸD™D 1™HÓ% dÑ+ò %‰ˆˆ2Ü
×Ñ˜bŸj™j¬"¯(©(°4«.Ô9Ø˜"Ÿ*™*Ò$Ð$Ð$ñ%ùò	 4s   ”BÚfuncc                 ó(  — t        j                  ddgddgddgdœ«      }|j                  d«       | g d¢«         j                  «       }t        j                  g d¢gg d¢t        j                  dgd¬	«      ¬
«      }t        j                  ||«       y )Nr   r   r   ÚG)r9   r:   r˜   r˜   )r9   r:   r9   )ç      ø?g      @r£   )Únamer?   )rA   rB   r4   Úmeanrš   r   r   )r    rC   r   r   s       r   Útest_groupby_duplicated_columnsr¦     s…   € ô 
�‰à�Q�Ø�Q�Ø�s�ñ	
ó
€Bð �Z‰Z˜‹_™T¢/Ó2Ñ3×8Ñ8Ó:€FÜ�|‰|Ú	Ð¢?¼"¿(¹(ÀCÀ5ÈsÔ:Sô€Hô ×Ñ˜& (Õ+r   c                  óò   — t        j                  g d¢g d¢g d¢dœ¬«      } | j                  ddg¬«      }d	}t        j                  t
        |¬
«      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)N)Úa1Úa2N)Úb1Úb2rª   )r   r   r   )r9   r:   Úval)rM   r9   r:   )Úbyz('a2', 'b1'))Úmatch)r©   rª   )rA   rB   r4   ÚpytestÚraisesÚKeyErrorÚ	get_group)rC   ÚgrpsÚmsgs      r   Ú#test_groupby_get_nonexisting_groupsrµ   )  sh   € ä	�‰â#Ú#Úñ
ô
€Bð �:‰:˜#˜s˜ˆ:Ó$€Dà
€CÜ	�‰”x sÔ	+ñ %Ø�‰�|Ô$÷%÷ %ñ %ús   ÁA-Á-A6) Únumpyr_   r¯   ÚpandasrA   Úpandas._testingÚ_testingr   ÚmarkÚparametrizer   r    r%   r)   r+   r.   r0   re   r5   rE   rr   rƒ   rŠ   r�   r•   rŸ   r#   rš   r�   Úarrayr¦   rµ   rZ   r   r   ú<module>r½      ss  ðó Û ã Ý ð ‡�×ÑØà	
ŠIˆØ	
ˆQˆCˆØ	
ˆBˆØ	ŠYˆØ	ˆa�ˆVˆØ	ˆRˆðó
ñ,ó
ð,ò,ð ‡�×ÑØà
ˆQˆ’ÐÚ	Ò'Ð(Ù	ˆq�!�Q‹šÐ&Ø
ˆQˆ’Ðð	ò	ð ó ñ,óð,ò,ò,ò,ð ‡�×ÑØà	
ŠIˆÚ	Ò'Ð(Ù
��a‹.™%  D›/Ð	*Ò,AÐBðóñ,óð,ò,ò*#,ðL ‡�×Ñ˜Ò DÓEØ‡�×Ñ˜ F¨FÐ#3Ó4Ø‡�×Ñ˜ t¨U mÓ4ñ1,ó 5ó 5ó Fð1,ðh ‡�×Ñ˜Ò";Ó<Ø‡�×Ñ˜Ò!:Ó;Ø‡�×Ñ˜¢Ó.ñ,ó /ó <ó =ð,ò"-ð ‡�×Ñ˜¢Ó1ñ,ó 2ð,ò0%ð ‡�×Ñ˜ $¨¯©°"·)±)¸R¿X¹XÐ!FÓGñ,ó Hð,ó %r   