+
    yȇi;!                         ^ RI t^ RIt^ RIHtHtHtHtHtH	t	 ^ RI
Ht ]P                  P                  R. ROR.RR..4      R 4       tR tR tR	 tR
 tR tR tR tR tR t]P                  P                  R^ ^.4      R 4       tR tR tR# )    N)	DataFrameIndexInterval
MultiIndexSeriesStringDtypeotherthreeonec                 ^   \        V4      pVP                  WR RR7      w  r4pVP                  V P                  ^,          VR7      pVP                  ^ ,          P                  V P                  ^ ,          4      '       g   Q hVP                  ^,          P                  V4      '       g   Q h\        P
                  ! V  Uu. uF  qw^,          V9   NK  	  up\        R7      pV P                  V,          p	\        P                  ! VP                  V	4       VR9   d   V P                  WR RR7      w  rpVP                  V
4      '       g   Q h\        P                  ! WL4       Vf
   W[8X  g   Q hM\        P                  ! W[4       \        P                  ! V
P                  V	4       R# R# u upi )secondT)howlevelreturn_indexersr   dtypeN)outerinner)
r   joinlevelsequalsnparrayboolvaluestmassert_numpy_array_equal)idxr	   	join_type
join_indexlidxridx	exp_levelxmask
exp_valuesjoin_index2ridx2lidx2s   &&&          t/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/indexes/multi/test_join.pytest_join_levelr,      sj   %LE"ZZ(D ( Jd 

3::a=i
8IQ&&szz!}5555Q&&y1111 8841qTY&4DADD!J
 1 1:>&&$'HH$ %- %
!E   ----
##D0<= =''4
##K$6$6
C '	 5s    F*c                    \        . RO4      pVP                  V RR7      p\        V\        4      '       g   Q h\        P
                  ! \        RR7      ;_uu_ 4        V P                  V ^R7       RRR4       R#   + '       g   i     R# ; i)r
   r   )r   zJoin.*MultiIndex.*ambiguous)matchNr
   r   two)r   r   
isinstancer   pytestraises	TypeError)r   indexresults   &  r+   test_join_level_corner_caser7   -   sd    )*EZZ8Z,Ffj))))	y(E	F	FA 
G	F	F	Fs   A;;B	c                     V P                  WR 7      pT pVR8X  d   VP                  4       p\        P                  ! W#4       R# )r   r   N)r   sort_valuesr   assert_index_equal)r   r    r6   expecteds   &&  r+   test_join_selfr<   7   s;    XXcX)FHG'')&+    c                     \         P                  ! \        P                  ! ^4      \        P                  ! ^4      .RR.R7      p \	        . RORR7      pV P                  VRRR7      w  r#p\         P                  ! \        P                  ! ^4      ^^..RR.R7      p\        P                  ! . RO\        P                  R7      p\        P                  ! . RO\        P                  R7      p\        P                  ! W%4       \        P                  ! W64       \        P                  ! WG4       VP                  V RRR7      w  r$p\        P                  ! W%4       \        P                  ! W64       \        P                  ! WG4       V P                  VR	RR7      w  r#p\        P                  ! . RO\        P                  R7      p\        P                  ! W 4       Ve   Q h\        P                  ! WG4       VP                  V RRR7      w  r$p\        P                  ! W 4       Ve   Q h\        P                  ! WG4       R
# )   abnames)namer   T)r   r   r   leftNright)         )rG   rH   rI      	   
         )r   rG   r   rG   r   rG   r   rG   )r   rG   rO   rO   r   rG   rO   rO   r   rG   rO   rO   r   rG   rO   )r   from_productr   aranger   r   r   intpr   r:   r   )midxr   jidxr"   r#   exp_idxexp_lidxexp_ridxs           r+   test_join_multirX   ?   s   ""BIIaL"))A,#?SzRD
	
$C yy'4yHD%%ryy|aV&<S#JOGxx3277CHxx0@H$(//xx'4xHD$(// yy&$yGDxx@H $%<</xx'4xHD$%<</r=   c                  f   \         P                  ! ^^.^^..RR.R7      p \         P                  ! ^^.^^..RR.R7      pV P                  VRR7      w  r#p\        P                  ! . RO\        P
                  R7      p\        P                  ! W4       Ve   Q h\        P                  ! WE4       R# )	rG   r@   rA   rB   Tr   r   N)rO   rO   rO   rO   )	r   rP   r   r   r   rR   r   r:   r   )midx1midx2join_idxr"   r#   rW   s         r+   test_join_multi_wrong_orderr^   a   s     ##aVaV$4S#JGE##aVaV$4S#JGE ::eT:BHDxx(8H%*<</r=   c                      \         P                  ! ^^.^^.^^... ROR7      p \         P                  ! ^^.^^..RR.R7      pV P                  VRR7      p\        P                  ! W 4       R# )rG   r@   rA   rB   FrZ   Nr@   rA   c)r   rP   r   r   r:   )r[   r\   r6   s      r+   test_join_multi_return_indexersrb   q   sl     ##aVaVaV$<OTE##aVaV$4S#JGEZZuZ5F&(r=   c                     \         P                  ! ^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3.RR.R7      p \         P                  ! ^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3.RR.R7      p\         P                  ! ^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3^\        RR4      3.RR.R7      pV P                  VR	R
7      p\        P
                  ! W24       R# )rG   g              ?       @g      @g      @numintervalrB   r   r   N)r   from_tuplesr   r   r   r:   )idx_1idx_2r;   r6   s       r+   $test_join_overlapping_interval_levelrk   {   s   ""c"#c"#c"#c"#c"#c"#	
 j!
E ""c"#c"#c"#c"#c"#c"#	
 j!
E %%c"#c"#c"#c"#c"#c"#	
 j!
H ZZ7Z+F&+r=   c            	         \         P                  ! \        . R
ORR7      \        . RORR7      .RR.R7      p \         P                  ! \        ^.RR7      \        ^.RR7      .RR.R7      pV P                  VRR7      p\         P                  ! \        ^^.RR7      \        ^^.RR7      \        ^^.RR7      .. ROR7      p\        P
                  ! W#4       R	# )rG   Int64r   r@   rA   rB   ra   r   r   N)rG   rG      )rG   rH   rn   r`   )r   from_arraysr   r   r   r:   rS   r\   r6   r;   s       r+   test_join_midx_earq      s    !!			)6)7+KLCjD ""	7	#VQCw%?@c
E YYu'Y*F%%Aq6)Aq6)Aq6)	

 H &+r=   c            	      $   \         P                  ! \        . RO\        4       R7      \        . R	O\        4       R7      .R R.R7      p \         P                  ! \        R .\        4       R7      \        R.\        4       R7      .R R.R7      pV P	                  VRR7      p\         P                  ! \        R R .\        4       R7      \        R R.\        4       R7      \        RR.\        4       R7      .. R	OR7      p\
        P                  ! W#4       R# )
r@   ra   r   rA   rB   r   r   N)r@   r@   ra   r`   )r   ro   r   r   r   r   r:   rp   s       r+   test_join_midx_stringrs      s    !!?+-8?+-8	
 CjD ""	[]	+VSE-OPCjE YYu'Y*F%%C:[]3C:[]3C:[]3	

 H &+r=   c                     \        R RR./\        P                  ! R.RR..RR.R7      R	7      p \        R
RR./\        P                  ! R.\        P                  R..RR.R7      R	7      pV P                  V4      p\        R RR.R
\        P                  R./\        P                  ! R.RR..RR.R7      R	7      p\        P                  ! W#4       R# )col1g?g333333?Ard   re   id1id2rB   )datar5   col2g @g@N)r   r   rP   r   nanr   r   assert_frame_equal)df1df2r6   r;   s       r+   test_join_multi_with_nanr      s    
sCj!%%usCj&9%PC sCj!%%urvvsm&<UENSC XXc]FsCj&2663-8%%usCj&9%PH &+r=   valc                 `   \         P                  ! \        ^^.V R7      ^^..4      p\         P                  ! \        ^W.V R7      . RO.4      pVP                  VRR7      p\         P                  ! \        W^^.V R7      . RO.4      P	                  4       p\
        P                  ! WE4       R# )rG   r   r   r   N)rn   r?   r?   )r?   r?   rn   r?   )r   ro   r   r   r9   r   r:   )any_numeric_ea_dtyper   rS   r\   r6   r;   s   &&    r+   test_join_dtypesr      s     !!61a&8L#MPQSTv"VWD""	C%9	:IFE YYu'Y*F%%	1a (<	=|Lkm  &+r=   c                 D   \         P                  ! \        ^^.V R7      \        P                  \        P                  ..4      p\         P                  ! \        . ROV R7      \        P                  \        P                  \        P                  ..4      pVP                  VRR7      p\         P                  ! \        . ROV R7      \        P                  \        P                  \        P                  \        P                  ..4      p\        P                  ! W44       R# )rG   r   r   r   N)rG   r   r   )r   r   rG   rH   )r   ro   r   r   r{   r   r   r:   )r   rS   r\   r6   r;   s   &    r+   test_join_dtypes_all_nanr      s    !!	A2	3bffbff5EFD ""		!5	68PQE YYu'Y*F%%<';<VVRVVRVVRVV,	
H &+r=   c                  X   \         P                  ! RR.4      p \         P                  ! R.4      pV P                  VRR7      p\         P                  ! . RO4      p\        P                  ! VP
                  ^,          VP
                  ^,          4       \        P                  ! W#4       R# )r@   r   r   Nr@   z
2019-02-01r@   z
2019-01-31)r   r   r   )r   rh   r   r   r:   r   rp   s       r+   test_join_index_levelsr     s    !!#68K"LMD""$7#89EYYu'Y*F%%GH &--*HOOA,>?&+r=   r/   )numpyr   r2   pandasr   r   r   r   r   r   pandas._testing_testingr   markparametrizer,   r7   r<   rX   r^   rb   rk   rq   rs   r   r   r   r    r=   r+   <module>r      s        #:UGeWEU"VWD XD:,0D0 )',T,*,2,$ A'
, (
,,$	,r=   