+
    xȇiC                        R t ^ RIHt ^ RIt^ RIHtHt ^ RIHt	 ]P                  P                  R4      t]P                  P                  R4      t]R 4       t]R 4       tR t]]P                  P%                  R	R
]! . RO.. ROR7      3R]! . RO.. ROR7      3R]! . RO.. R OR7      3.4      R 4       4       t]P                  P%                  RR. R!O]! . R"O. R#O.. R$OR7      3R. R%O]! . R&O. R'O.. R(OR7      3R. R)O]! . R*O. R+O.. R,OR7      3.4      R 4       t]R 4       t]R 4       t]R 4       t]P                  P%                  R. R-OR3. R-OR3.4      R 4       tR# ).z
Tests that duplicate columns are handled appropriately when parsed by the
CSV engine. In general, the expected result is that they are either thoroughly
de-duplicated (if mangling requested) or ignored otherwise.
)StringION)	DataFrameIndexpyarrow_xfailz=ignore:Passing a BlockManager to DataFrame:DeprecationWarningc                     T pR pVP                  \        V4      RR7      p\        . RO.. ROR7      p\        P                  ! W44       R# )za,a,b,b,b
1,2,3,4,5,)sepcolumnsN)               )aa.1bzb.1zb.2read_csvr   r   tmassert_frame_equalall_parsersparserdataresultexpecteds   &    x/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/io/parser/test_mangle_dupes.py
test_basicr      s@    F!D__Xd^_5F/*4STH&+    c                     T pR p\        . RO. RO.. ROR7      pVP                  \        V4      4      p\        P                  ! WC4       R# )za,b,a
0,1,2
3,4,5r	   N    r   r   )r   r   r   )r   r   r   )r   r   r   r   r   )r   r   r   r   r   s   &    r   test_basic_namesr#   $   s@     F D)Y/9JKH__Xd^,F&+r   c                     T pR p\         P                  ! \        RR7      ;_uu_ 4        VP                  \	        V4      . ROR7       RRR4       R#   + '       g   i     R# ; i)z0,1,2
3,4,5Duplicate namesmatchnamesN)r   r   r   pytestraises
ValueErrorr   r   )r   r   r   s   &  r   test_basic_names_raiser.   0   sA    FD	z):	;	;o> 
<	;	;	;s   AA#	zdata,expectedza,a,a.1
1,2,3r	   z+a,a,a.1,a.1.1,a.1.1.1,a.1.1.1.1
1,2,3,4,5,6z!a,a,a.3,a.1,a.2,a,a
1,2,3,4,5,6,7c                 j    T pVP                  \        V4      4      p\        P                  ! WB4       R # )N)r   r   r   r   )r   r   r   r   r   s   &&&  r   test_thorough_mangle_columnsr0   9   s)    . F__Xd^,F&+r   zdata,names,expectedza,b,b
1,2,3za,b,c,d,e,f
1,2,3,4,5,6cza,b,c,d,e,f,g
1,2,3,4,5,6,7c                     T p\         P                  ! \        R R7      ;_uu_ 4        VP                  \	        V4      VR7       RRR4       R#   + '       g   i     R# ; i)r%   r&   r(   Nr*   )r   r   r)   r   r   s   &&&& r   test_thorough_mangle_namesr3   V   s?    B F	z):	;	;e4 
<	;	;	;s   AA	c                    R pT p. ROp\        W/4      p\        ^4       F  p\        \        . RR7      R7      p\        V^,           4       F=  pRR^V,           2\        V^4      ,          ,           pVP	                  ^ V. R	OR7       K?  	  W6V&   VP                  \        VP                  4       4      4      p\        P                  ! WF4       K  	  R# )
0str)dtyper	   
Unnamed: 0.)loccolumnvalueNr   r   r   r!   )
r   ranger   mininsertr   r   to_csvr   r   )	r   orig_keyr   
orig_valuedfir   jcol_names	   &        r   !test_mangled_unnamed_placeholdersrH   }   s     HFJ	H)	*B 1XU2U%;<q1uA#!a%kC1I&==HOO()OD  (__Xbiik23
b+ r   c                     T pR pVP                  \        V4      4      p\        . RO.. ROR7      p\        P                  ! W44       R# )z%a,a,a.1,a,a.3,a.1,a.1.1
1,2,3,4,5,6,7r	   Nr   r   r   r   r         )r   a.2r   a.4a.3za.1.2a.1.1r   r   s   &    r   $test_mangle_dupe_cols_already_existsrQ      sC     F3D__Xd^,F	CH &+r   c                     T pR pVP                  \        V4      4      p\        . RO.. ROR7      p\        P                  ! W44       R# )z,Unnamed: 0,,Unnamed: 2
1,2,3,4r	   N)r   r   r   r   )zUnnamed: 0.1r8   zUnnamed: 2.1z
Unnamed: 2r   r   s   &    r   0test_mangle_dupe_cols_already_exists_unnamed_colrS      sB     F-D__Xd^,F	LH &+r   zusecol, enginepythonc           	          T pR p. ROp\         P                  ! \        RR7      ;_uu_ 4        VP                  \	        V4      WQVR7       RRR4       R#   + '       g   i     R# ; i)z1,2,3r%   r&   )r)   usecolsengineN)ArX   Br*   )r   usecolrW   r   r   r)   s   &&&   r   test_mangle_cols_namesr[      sJ     FDE	z):	;	;eFS 
<	;	;	;s   AA&	r=   )r   rM   r   )r   r   r   r   r   rK   )r   rM   r   rP   a.1.1.1	a.1.1.1.1rJ   )r   rN   rO   r   rM   za.5za.6)r   r   rP   )r   r   r   )123)r   rP   r\   )r   r   r   rP   r\   r]   )r   r   r1   def)r^   r_   r`   456)r   r   rP   r\   r]   za.1.1.1.1.1)r   r   rO   r   rM   r   r   )r   r   r1   ra   rb   rc   g)r^   r_   r`   rd   re   rf   7)r   r   rO   rP   rM   za.2.1za.3.1)r"   r   r   )__doc__ior   r+   pandasr   r   pandas._testing_testingr   markusefixturesxfail_pyarrowfilterwarnings
pytestmarkr   r#   r.   parametrizer0   r3   rH   rQ   rS   r[    r   r   <module>ru      s     ''8 [[''C

 , , , ,? 	9i[:MNO:#$L	
 1&'G	
(,) *,  # /2<W	
 '>/1OPT	
 +577 N
	
!>5?>5 , ,, 
, 
, 
, 
, )Y,AIsCS+TUT VTr   