+
    nDj[                        ^ RI t ^ RIt ^ RIt^ RIt^ RIt^ RIH	t	H
t
 ^ RIHt ^ RIHt  ^ RIHt ^ RIHtHtHt  ^ RIt^ RIHt ^ RIHtHt ]P:                  P                   t]P:                  P,                  R 4       t]P:                  P,                  R 4       t ]P:                  P,                  R	 4       t!]P:                  P,                  R
 4       t"]P:                  P,                  R 4       t#]P:                  P,                  R 4       t$]P:                  P,                  R 4       t%]P:                  P,                  R 4       t&]P:                  P,                  R 4       t']P:                  P,                  R 4       t(]P:                  P,                  R 4       t)]P:                  P,                  R 4       t*]P:                  P,                  R 4       t+]P:                  P,                  R 4       t,]P:                  P,                  R 4       t-]P:                  P,                  R 4       t.]P:                  P,                  R 4       t/]P:                  P,                  R 4       t0]P:                  P,                  R 4       t1]P:                  P,                  R 4       t2]P:                  P,                  R 4       t3]P:                  P,                  R 4       t4]P:                  P,                  R 4       t5]P:                  P,                  R 4       t6]P:                  P,                  R 4       t7]P:                  P,                  ]P:                  Pq                  R . R'O4      ]P:                  Pq                  R!R"R#.4      R$ 4       4       4       t9]P:                  P,                  R% 4       t:]P:                  P,                  R& 4       t;R#   ] d    Rt ELi ; i  ] d    Rt ELi ; i  ] d	    R;tt ELi ; i)(    N)LocalFileSystemSubTreeFileSystem)guid)Version)_read_table_test_dataframe_write_table)_roundtrip_pandas_dataframealltypes_samplec                    \        R R7      pV R,          p\        P                  P                  V4      pRVP                  P
                  9   g   Q h\        W24       \        P                  ! V4      P
                  pRV9   g   Q h\        P                  ! VR,          P                  R4      4      pVR,          RRRR	R
^ RR R^/.8X  g   Q hR	# )'  sizepandas_roundtrip.parquet   pandasutf8index_columnskindrangenameNstartstopstep)r   paTablefrom_pandasschemametadatar	   pqread_metadatajsonloadsdecode)tempdirdffilenamearrow_tabler   jss   &     [/data/cameron/venvs/s3viz/lib/python3.14/site-packages/pyarrow/tests/parquet/test_pandas.py#test_pandas_parquet_custom_metadatar*   7   s    	e	$B33H((&&r*K**33333')22H   	HY'..v6	7BoFG$*D$+Q$*A$/ #0 0 0 0    c           
         \         P                  ! \         P                  ! R \         P                  ! 4       4      \         P                  ! R\         P                  ! 4       4      \         P                  ! R\         P
                  ! 4       4      .4      p\        P                  ! R \        P                  ! ^\        P                  R7      R\        P                  ! ^\        P                  R7      R. RO/4      p\        P                  ! R ^^.RRR.RRR./4      p\         P                  P                  W!RR7      p\         P                  P                  W1RR7      pVP                  P                  VP                  RR	7      '       d   Q hVP                  P                  VP                  4      '       g   Q h\        P                  ! V R
,          VR7      pVP!                  V4       VP!                  V4       R# )intfloatstringdtypeg?NF)r   preserve_indexT)check_metadatazmerged.parquet)r   )ABBAEDDAACDC)r   r   fieldint16float32r/   pd	DataFramenparangeuint8r   r   equalsr   ParquetWriterwrite_table)r$   r   df1df2table1table2writers   &      r)   :test_merging_parquet_tables_with_different_pandas_metadatarG   K   sq    YY

#
"**,'
299;' F
 ,,ryy"((+1BJJ/* C
 ,,1v#t4, C
 XX!!#U!KFXX!!#U!KF}}##FMM$#GGGG==....g(88HF
v
vr+   c                    V R ,          p\        RR7      pRRRRRRR	R
/Vn        \        P                  P	                  V4      pRVP
                  P                  R,          9   g   Q h\        W14       \        P                  ! V4      P                  p\        P                  ! VR,          P                  R4      4      pRV9   g   Q hVR,          VP                  8X  g   Q hR# )zmetadata_persistence.parquetr   r   float16zhalf-precisionr9   zsingle precisionfloat64zdouble precision
desciptionz%Attributes Persistence Test DataFrames
   attributesr   r   
attributesN)r   attrsr   r   r   r   r   r	   r   r    r!   r"   r#   )r$   r&   r%   tabler   r(   s   &     r)   $test_attributes_metadata_persistencerO   h   s     77H	e	$B#%%=	BH HH  $EELL11)<<<<!)22H	HY'..v6	7B2lrxx'''r+   c                    \        ^
R7      p\        P                  P                  \	        \        VP                  VP                  RRR1,          4      4      RR.R7      Vn        V R,          p\        P                  P                  V4      pVP                  P                  f   Q h\        W24       \        P                  ! V4      pVP                  4       p\         P"                  ! W4       R# )
   r   Nlevel_1level_2namesr   )r   r:   
MultiIndexfrom_tupleslistzipcolumnsr   r   r   r   pandas_metadatar	   r   read_pandas	to_pandastmassert_frame_equal)r$   r%   r&   r'   
table_readdf_reads   &     r)   %test_pandas_parquet_column_multiindexrc      s    	b	!B**SRZZ"-./)$ + BJ
 33H((&&r*K--999')J""$G"&r+   c                 $   \        R R7      pV R,          p\        P                  P                  VRR7      pVP                  P
                  pVR,          '       d   Q hVR,          '       g   Q h\        W24       \        P                  ! V4      pVP                  P
                  pVR,          '       d   Q hVP                  P                  pVP                  P                  V8X  g   Q hVP                  4       p\        P                  ! W4       R# )r   r   r   Fr2   r   r[   N)r   r   r   r   r   r\   r	   r   r]   r   r^   r_   r`   )r$   r%   r&   r'   r(   ra   r    rb   s   &       r)   <test_pandas_parquet_2_roundtrip_read_pandas_no_index_writtenrf      s    	e	$B33H((&&r%&@K				+	+B/"""" i===')J				*	*B/""""%%..M&&-777""$G"&r+   c                  H   \        R 4      p \        P                  P                  V 4      p\        P                  ! 4       p\        WRR7       VP                  4       p\        P                  ! V4      p\        V4      P                  4       p\        P                  ! W4       R# )r   2.6versionNr   r   r   r   BufferOutputStreamr	   getvalueBufferReaderr   r^   r_   r`   r%   r'   imosbufreaderrb   s         r)   )test_pandas_parquet_native_file_roundtriprs      sr    		B((&&r*K  "DE2
--/C__S!F&!++-G"&r+   c                  z   \        R 4      p \        P                  P                  V 4      p\        P                  ! 4       p\        WRR7       VP                  4       p\        P                  ! V4      p\        P                  ! VRR.R7      P                  4       p\        P                  ! V RR.,          V4       R# )r   rh   ri   stringsr>   r[   N)r   r   r   r   rl   r	   rm   rn   r   r]   r^   r_   r`   ro   s         r)   test_read_pandas_column_subsetrw      s    		B((&&r*K  "DE2
--/C__S!FnnG,ik  "i12G<r+   c                  H   \        ^ 4      p \        P                  P                  V 4      p\        P                  ! 4       p\        WRR7       VP                  4       p\        P                  ! V4      p\        V4      P                  4       p\        P                  ! W4       R# )r   rh   ri   Nrk   ro   s         r)   #test_pandas_parquet_empty_roundtripry      sr    		B((&&r*K  "DE2
--/C__S!F&!++-G"&r+   c                      R R^/R^/R^ /.RR/p \         P                  ! V R7      p\        P                  P	                  V4      p\        P
                  ! 4       p\        W#4       R# )agg_col	page_typerecord_typenon_consecutive_home	uid_first1001)dataN)r:   r;   r   r   r   rl   r	   )r   r%   r'   rp   s       r)   !test_pandas_can_write_nested_datar      sl     	!A#Q'

 	VD 
4	 B((&&r*K  "D#r+   c                    V R ,          p^p\         P                  ! R\        P                  ! V\        P                  R7      R\        P                  ! V\        P
                  R7      R\        P                  ! V\        P                  R7      R\        P                  P                  V4      ^ 8  R. RO/4      p\        P                  P                  V4      pVP                  R4      ;_uu_ 4       p\        WER	R
7       RRR4       \        P                  ! VP!                  4       4      p\#        V4      pVP%                  4       p\&        P(                  ! W84       R#   + '       g   i     Lg; i)zpandas_pyfile_roundtrip.parquetint64r0   r9   rJ   boolru   Nwbrh   ri   )foobarNbazqux)r:   r;   r<   r=   r   r9   rJ   randomrandnr   r   r   openr	   ioBytesIO
read_bytesr   r^   r_   r`   )	r$   r&   r   r%   r'   fr   ra   rb   s	   &        r)   $test_pandas_parquet_pyfile_roundtripr      s    ::HD	4rxx0299T4299T4		%)5 
B ((&&r*K	t		[U3 
 ::h))+,DT"J""$G"& 
	s   2EE/	c                     R p\         P                  P                  ^ 4       \        P                  ! R\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R	\         P
                  ! V\         P                  R7      R
\         P
                  ! V\         P                  R7      R\         P
                  ! V\         P                  R7      R\         P                  P                  V4      ^ 8  /4      pV R,          p\         P"                  P%                  V4      pR FB  p\'        WCRVR7       \)        V4      pVP+                  4       p\,        P.                  ! W'4       KD  	  R FB  p\'        WCRVR7       \)        V4      pVP+                  4       p\,        P.                  ! W'4       KD  	  R Fz  p	V	R8w  d2   \         P0                  P2                  P5                  V	4      '       g   K;  \'        WCRV	R7       \)        V4      pVP+                  4       p\,        P.                  ! W'4       K|  	  R# )r   r>   r0   uint16uint32uint64int8r8   int32r   r9   rJ   r   r   rh   )rj   use_dictionary)rj   write_statisticsNONE)rj   compressionN)TF)r   SNAPPYGZIPLZ4ZSTD)r<   r   seedr:   r;   r=   r>   r   r   r   r8   r   r   r9   rJ   r   r   r   r   r	   r   r^   r_   r`   libCodecis_available)
r$   r   r%   r&   r'   r   ra   rb   r   r   s
   &         r)   )test_pandas_parquet_configuration_optionsr      s   DIINN1	4rxx0"))D		2"))D		2"))D		2		$bhh/4rxx04rxx04rxx0299T4299T4		%) 
B 33H((&&r*K'[E$2	4 *
&&(
b* ( *[E&6	8 *
&&(
b* * A6!FFLL--k::[E!,	. *
&&(
b* Ar+   c                      \        ^dR7      p \        P                  ! ^ ^
\        V 4      ,          ^
4      V n        RV P                  n        \        V RR/4      p\        P                  ! W4       R# )d   r   r   flavorsparkN)	r   r<   r=   lenindexr   r
   r_   r`   )r%   results     r)   +test_spark_flavor_preserves_pandas_metadatar   )  sR    	c	"ByyBRL"-BHBHHM(h-@AF&%r+   c           	      >   R \         P                  ! R4      R\         P                  ! R4      R/R\         P                  ! R4      \         P                  ! R4      \         P                  ! R4      \         P                  ! R4      //p\        V R,          4      p\         P                  ! VRR7      P	                  RRR	7      p\
        P                  P                  V4      p\        WB4       \        V4      pVP                  4       p\        P                  ! Wc4       R
# )closez2017-06-30 01:31:00g*_c@z2017-06-30 01:32:00timedata.parquetzdatetime64[us]r0   FdropN)r:   	Timestampstrr;   	set_indexr   r   r   r	   r   r^   r_   r`   )r$   r   pathdfxtdfxr'   	result_dfs   &      r)    test_index_column_name_duplicater   3  s     	LL./1CLL./1C
 	LL./%2 LL./%2	
D w'(D
 ,,t#3
4
>
>vE
>
RC88$Dd#K%%'I))r+   c                    ^p\        \        V4      4      p\        P                  P	                  . ROV.RR.R7      p\        P
                  ! RV/VR7      p\        P                  P                  V4      pV R,          p\        WV4       \        V4      pVP                  V4      '       g   Q hVP                  4       p\        P                  ! W4       R# )	   foobarsome_numbersrT   numbers)r   zdup_multi_index_levels.parquetN)r   r   r   )rY   r   r:   rW   from_arraysr;   r   r   r   r	   r   r?   r^   r_   r`   )	r$   num_rowsr   r   r%   rN   r&   result_tabler   s	   &        r)    test_multiindex_duplicate_valuesr   Q  s    H5?#GMM%%	(( & E
 
y'*%	8BHH  $E99H!x(L<<%%%%&&(I)(r+   c                     R p\         P                  ! \        P                  ! V4      RR^ RR7      p\	        V R,          4      pVP                  4       p\        P                  ! WB4       R# )  carat        cut  color  clarity  depth  table  price     x     y     z
 0.23      Ideal      E      SI2   61.5   55.0    326  3.95  3.98  2.43
 0.21    Premium      E      SI1   59.8   61.0    326  3.89  3.84  2.31
 0.23       Good      E      VS1   56.9   65.0    327  4.05  4.07  2.31
 0.29    Premium      I      VS2   62.4   58.0    334  4.20  4.23  2.63
 0.31       Good      J      SI2   63.3   58.0    335  4.34  4.35  2.75
 0.24  Very Good      J     VVS2   62.8   57.0    336  3.94  3.96  2.48
 0.24  Very Good      I     VVS1   62.3   57.0    336  3.95  3.98  2.47
 0.26  Very Good      H      SI1   61.9   55.0    337  4.07  4.11  2.53
 0.22       Fair      E      VS2   65.1   61.0    337  3.87  3.78  2.49
 0.23  Very Good      H      VS1   59.4   61.0    338  4.00  4.05  2.39\s{2,}Npythonsep	index_colheaderenginezv0.7.1.parquet)r:   read_csvr   r   r   r^   r_   r`   datadirexpected_stringexpectedrN   r   s   &    r)   &test_backwards_compatible_index_namingr   g  sY    KO {{2::o6I%)!HFH"223E__F&+r+   c                     R p\         P                  ! \        P                  ! V4      R. RO^ RR7      P	                  4       p\        V R,          4      pVP                  4       p\        P                  ! WB4       R# )r   r   r   r   zv0.7.1.all-named-index.parquetNcutcolorclarity)	r:   r   r   r   
sort_indexr   r^   r_   r`   r   s   &    r)   1test_backwards_compatible_index_multi_level_namedr   |  sh    KO {{


?#- jl	  "BBCE__F&+r+   c                 <   R p\         P                  ! \        P                  ! V4      R. RO^ RR7      P	                  4       pVP
                  P                  . RO4      Vn        \        V R,          4      pVP                  4       p\        P                  ! WB4       R# )r   r   r   r   Nzv0.7.1.some-named-index.parquetr   )r   Nr   )r:   r   r   r   r   r   	set_namesr   r^   r_   r`   r   s   &    r)   6test_backwards_compatible_index_multi_level_some_namedr     s    KO {{


?#!< jl	 
 ^^--.FGHN"CCDE__F&+r+   c                    \        R 4      \        \        P                  4      8:  d   \        P                  ! R4       \        P
                  ! R. ROR. ROR\        P                  ! R^RR7      /4      p\        P                  P                  . RO\        P                  ! R^RR7      .RR	.R
7      Vn	        V R,          p\        V4      pVP                  4       p\        P                  ! WA4       \        VR.R7      pVP                  4       p\        P                  ! WAR.,          P                  RR7      4       R	# )z2.2.0zRegression in pandas 2.2.0abcz
2017-01-01zEurope/Brussels)periodstzr   NrT   z'v0.7.1.column-metadata-handling.parquetrv   Tr         r   )g?g?g333333?r   r   r   )r   r:   __version__pytestskipr;   
date_rangerW   r   r   r   r^   r_   r`   reset_index)r   r   r   rN   r   s   &    r)   2test_backwards_compatible_column_metadata_handlingr     s   w72>>22 	01||	il	bmmL!8IJ	LMH ]]..		|Q3D	E	Go / HN
 >>DE__F&+seE__F&C5/"="=4"="HIr+   c                  J   \         P                  ! R R.RR..RR.R7      p V R,          P                  R4      V R&   V P                  R.4      p \        P
                  P                  V 4      p\        P                  ! 4       p\        P                  ! W4       \        P                  ! VP                  4       4      P                  4       p\        VP                  \         P                  4      '       g   Q hVP                  P!                  V P                  4      '       g   Q hR# )	r   r   r   dc1c2rv   categoryN)r:   r;   astyper   r   r   r   rl   r   rA   r]   rm   r^   
isinstancer   CategoricalIndexr?   )r%   rN   bosref_dfs       r)   )test_categorical_index_survives_roundtripr     s     
SzC:.t	EB$xz*BtH	tf	BHH  $E



!CNN5^^CLLN+557FfllB$7$78888<<rxx((((r+   c            	         \         P                  ! R \         P                  ! . RO. RORR7      /4      p \        P                  P                  V 4      p\        P                  ! 4       p\        P                  ! W4       VP                  4       p\        P                  ! V4      P                  4       p\        P                  ! W@4       R# )r   T)
categoriesorderedN)r   r   r   r   )r   r   r   )r:   r;   Categoricalr   r   r   rl   r   rA   rm   r]   r^   r_   r`   )r%   rN   r   contentsr   s        r)   )test_categorical_order_survives_roundtripr     s     
sBNN$H I 
JB HH  $E



!CNN5||~H^^H%//1F&%r+   c                  @   \         P                  ! R R.^d,          RR.^d,          /4      p V P                  R RRR/4      p\        P                  P                  V 4      p\        P                  P                  V4      p\        P                  ! 4       p\        P                  ! W4R^
R7       \        P                  ! VP                  4       4      pV^ ,          P                  V^ ,          4      '       g   Q hV^,          P                  V^,          4      '       g   Q hR# )colNr-   g      ?r   rh   )rj   
chunk_size)r:   r;   r   r   r   r   rl   r   rA   
read_tablerm   r?   )r%   df_categoryrN   	table_catrq   r   s         r)   *test_pandas_categorical_na_type_row_groupsr    s     
utfslEC53;?	@B))UJzBCKHH  $E$$[1I



!C NN95R@]]3<<>*F !9E!H%%%%!9E!H%%%%r+   c                  j   \         P                  ! . RORR7      p . ROp\        P                  ! R\        P                  P                  WR7      /4      p\        P                  ! 4       p\        P                  ! \        P                  ! V4      V4       \        P                  ! VP                  4       4      P                  4       pVP                  P                  R8X  g   Q hVP                  P                   P"                  V8H  P%                  4       '       g   Q h\&        P(                  ! WB4       R# )	r   r   r0   x)r   r   N)r   r   r   r   r   rV   r   )r   r   r   )r<   arrayr:   r;   r   
from_codesr   rl   r   rA   rN   r  rm   r^   r  r1   catr   allr_   r`   )codesr   r%   rq   r   s        r)   !test_pandas_categorical_roundtripr    s    
 HH+7;E&J	sBNN55 6 & ' 
(B 


!CNN288B<%]]3<<>*446F88>>Z'''HHLL##z1668888&%r+   c                    \        \        P                  4      \        R 4      8  d   \        P                  ! R4       \        P
                  ! R. RO/RR7      pVP                  R4      p\        P
                  ! R. RO/4      pVP                  R4      p\        P                  ! VR,          4      P                  4       \        P                  ! VR,          4      P                  4       8X  g   Q h\        P                  ! VR,          P                  P                  P                  4      P                  4       \        P                  ! VR,          P                  P                  P                  4      P                  4       8X  g   Q h\        V R,          4      p\        P                  ! \        P                   ! V4      V4       \        P"                  ! V4      P%                  4       p\&        P(                  ! WB4       R# )	z1.3.0z:PyArrow backed string data type introduced in pandas 1.3.0r  zstring[pyarrow]r0   r   zcat.parquetN)r   r   r   )r   r:   r   r   r   r;   r   r   r  	to_pylistr
  r   valuesr   r   rA   rN   r  r^   r_   r`   )r$   rB   rC   r   r   s   &    r)   )test_categories_with_string_pyarrow_dtyper    sX    r~~!11PQ
,,23;L
MC
**Z
 C
,,23
4C
**Z
 C 88CH'')RXXc#h-?-I-I-KKKK88CHLL++223==?288C&&D((1	4 4 4 w&'DNN288C=$']]4 **,F&&r+   c                    \         P                  ! R RR. R	O/4      pVR,          P                  R4      VR&   \        P                  ! V4      p\
        P                  ! V\        V R,          4      R .R7       \
        P                  ! \        V R,          4      4      P                  4       p\        P                  ! VR.,          VR.,          4       \
        P                  ! V\        V R,          4      4       \
        P                  ! \        V R,          4      4      P                  4       p\        P                  ! VR.,          VR.,          4       \
        P                  ! V\        V R,          4      4       \
        P                  ! \        V R,          4      4      P                  4       p\        P                  ! VR.,          VR.,          4       R# )
partr   r   Int64case1partition_colscase2r   Nr   )r:   r;   r   r   rN   r   write_to_datasetr   r  r^   r_   r`   rA   )r$   r%   rN   r   s   &   r)   5test_write_to_dataset_pandas_preserve_extensiondtypesr  $  sJ   	vsE95	6B5	  )BuIHHRLEs7W$%vh ]]3w012<<>F&%/2ug;7s7W#456]]3w012<<>F&%/2ug;7NN5#g678]]3w789CCEF&%/2ug;7r+   c                    \         P                  ! R . R
OR. RO/4      p\         P                  ! . RORR7      Vn        \        P
                  ! V4      pVRR .,          P                  4       pVR ,          P                  R4      VR &   \        P                  ! V\        V R,          4      R .R7       \        P                  ! \        V R,          4      4      P                  4       p\        P                  ! WC4       \        P                  ! V\        V R,          4      4       \        P                  ! \        V R,          4      4      P                  4       p\        P                  ! WA4       \        P                  ! V\        V R,          4      4       \        P                  ! \        V R,          4      4      P                  4       p\        P                  ! WA4       R	# )r  r   idxr   r   r  r  r  r   N)r   r   r   r   r   )r:   r;   Indexr   r   rN   copyr   r   r  r   r  r^   r_   r`   rA   )r$   r%   rN   df_catr   s   &    r)   +test_write_to_dataset_pandas_preserve_indexr!  9  sK    
vyA	BBxxe4BHHHRLE %%'FF^**:6F6Ns7W$%vh ]]3w012<<>F&)s7W#456]]3w012<<>F&%NN5#g678]]3w789CCEF&%r+   r2   metadata_fname	_metadata_common_metadatac           	      @   ^p^pV \        4       ,          pVP                  4        . p. p. p\        V4       F  p	\        WIR7      p
\        P
                  ! \        P                  ! W,          V	^,           V,          RR7      RR7      V
n        WY R2,          p\        P                  P                  WR7      pVP                  R4      pVP                  P                  e   Q h\        W4       VP!                  V4       VP!                  V
4       VP!                  V4       K  	  \        P                  P                  X
VR7      p\"        P$                  ! VP                  WR,          4       \"        P&                  ! V4      pR	R
.pVP)                  VR7      P+                  4       p\        P,                  ! V Uu. uF  pVV,          NK  	  up4      pVRJd   V
P                  P.                  MRVP                  n        \0        P2                  ! VV4       R# u upi )   )r   r   r0   r   r  z.parquetre   Nr>   ru   rv   F)r   mkdirr   r   r:   r  r<   r=   r   r   r   r   replace_schema_metadatar   r   r	   appendr   write_metadataParquetDatasetr]   r^   concatr   r_   r`   )r$   r2   r"  nfilesr   dirpath	test_dataframespathsir%   r   rN   table_for_metadatadatasetr[   r   r  r   s   &&&                r)   (test_dataset_read_pandas_common_metadatar5  R  s    FDGMMOIFE6]T*88IIahQ$g>W
 3h'$$R$G --d3||$$,,,U!bT# ( --
> .  (//1IJ(G	"G   1;;=Fyyf5f!G**f56H'u4$ NN&(+ 6s   <Hc                 "   \         P                  ! R . RO/4      pV R,          p\        W4       \        P                  ! R\        \        V 4      \        4       4      R7      pVP                  \        P                  ! V4      4      '       g   Q hR# )r   r   )
filesystemNr   )r:   r;   r	   r   r]   r   r   r   r?   r   rN   )r$   r%   r&   r   s   &   r)   %test_read_pandas_passthrough_keywordsr8    sj     
sI&	'B'H^^$S\?3DEF =="&&&&r+   c           	         \         P                  ! R \         P                  ! RR.RR	..4      R\         P                  ! RR.4      /4      pV R,          p\        P                  ! \        P
                  ! 4       \        P
                  ! 4       4      p\        P                  ! \        P                  ! R V4      \        P                  ! R\        P
                  ! 4       4      .4      p\        P                  P                  W4      p\        WR4       \        P                  ! V4      P                  4       p\        P                  ! Wa4       R# )
col1col2r   r   r   N)id	something)value2else)r<  
something2)valueelse2)r:   r;   Seriesr   map_r/   r   r7   r   r   r	   r   r]   r^   r_   r`   )r$   r%   r&   udtr   r'   r   s   &      r)   test_read_pandas_map_fieldsrF    s     
		 "45!#56
  			5%.) 
B 'H
''"))+ryy{
+CYY-rxx		/LMNF((&&r2K'^^H%//1F&%r+   )TFN)<r   r!   numpyr<   ImportErrorr   pyarrowr   
pyarrow.fsr   r   pyarrow.utilr   pyarrow.vendored.versionr   pyarrow.parquetparquetr   pyarrow.tests.parquet.commonr   r   r	   pandasr:   pandas.testingtestingr_   r
   r   mark
pytestmarkr*   rG   rO   rc   rf   rs   rw   ry   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r!  parametrizer5  r8  rF   r+   r)   <module>rW     s'  $ 
    9  , < <? [[  
 0 0&  8 ( (0 ' '$ ' '0 ' ' 
= 
= ' ' $ $  ' '. )+ )+X & & * *: ) )* , ,( , ,0 , ,2 J J0 ) ) & & & &" & &$ ' '. 8 8( & &0 )+>?)K9K+LM,, N @ ,,^ ' ' & &}  	B  	B  NBs3   N8 O O 8	OO	OOO'&O'