+
    JV-j$¤  ã                   óÈ  € ^ RI t ^ RIt^ RIt^ RIt^ RIt ^ RIt^ RIt^ RI	H
t
 ^ RIt^ RIHt ^ RIHtHtHtHtHtHt ^ RIHt ^ RIHt  ^ RIHt ^ RIHtH t H!t!H"t"  ^ RI#t$^ RI%H&t' ]PP                  P8                  ]PP                  PR                  .t*R t+]PP                  PF                  R 4       t,]PP                  PF                  R 4       t-]PP                  PF                  R	 4       t.]PP                  PF                  R
 4       t/]PP                  Pa                  ]1]23RR7      ]PP                  PF                  R 4       4       t3]PP                  PF                  R 4       t4]PP                  PF                  R 4       t5]PP                  PF                  R 4       t6]PP                  PF                  R 4       t7]PP                  PF                  R 4       t8]PP                  PF                  ]PP                  Ps                  RRN.RN..]Pt                  ! R4      ^8  ]Pt                  ! RR4      ^8  ]Pt                  ! RR4      Pw                  ]Px                  ! 4       4      ^8  34      ]PP                  Ps                  RRO4      R 4       4       4       t=]PP                  PF                  R 4       t>]PP                  P~                  R 4       t@]PP                  P~                  R 4       tA]PP                  PF                  R 4       tB]PP                  PF                  ]PP                  P~                  R 4       4       tCR tDR  tER! tF]PP                  PF                  R" 4       tG]PP                  PF                  R# 4       tH]PP                  PF                  R$ 4       tI]PP                  P
                  R% 4       tJ]PP                  P
                  R& 4       tK]PP                  P
                  R' 4       tLRPR( ltMR) tN]PP                  P
                  ]PP                  Ps                  R*R+R,.4      R- 4       4       tO]PP                  P
                  R. 4       tP]PP                  P
                  R/ 4       tQ]PP                  P
                  ]PP                  Ps                  R*R+R,.4      R0 4       4       tRR1 tSR2 tTRQR3 ltURRR4 ltV]PP                  PF                  R5 4       tW]PP                  PF                  R6 4       tX]PP                  PF                  R7 4       tY]PP                  PF                  R8 4       tZ]PP                  PF                  R9 4       t[]PP                  PF                  ]PP                  P~                  R: 4       4       t\]PP                  PF                  ]PP                  P~                  ]PP                  P»                  ]P¼                  R;8H  R<R=7      R> 4       4       4       t_]PP                  PF                  ]PP                  P~                  R? 4       4       t`]PP                  PF                  R@ 4       taRSRA ltb]PP                  PF                  RB 4       tc]PP                  PF                  RC 4       tdRD teRE tfRF tgRG thRH tiRI tjRJ tk]PP                  Ps                  RKRT4      RL 4       tl]PP                  PF                  RM 4       tmR#   ] d    Rt EL¤i ; i  ] d    Rt ELqi ; i  ] d	    R;t$t' ELxi ; i)Ué    N)ÚFileSelectorÚ
FileSystemÚLocalFileSystemÚPyFileSystemÚSubTreeFileSystemÚFSSpecHandler)Úutil)Úguid)Ú_read_tableÚ_test_dataframeÚ_test_tableÚ_write_tablec                 óº  € \         P                  ! R . RO/4      pV R,          pVP                  4        VR,          p\        P                  ! V\        V4      4       \        P                  ! V\        4       R7      pVP                  V4      '       g   Q h\        P                  ! R\        P                  ! V 4      R7      pVP                  V4      '       g   Q hR# )ÚaÚdata_dirúdata.parquet©Ú
filesystemzdata_dir/data.parquetN©é   é   é   )ÚpaÚtableÚmkdirÚpqÚwrite_tableÚstrÚ
read_tabler   Úequalsr	   Ú_filesystem_uri)Útempdirr   Ú	directoryÚpathÚresults   &    Ús/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pyarrow/tests/parquet/test_dataset.pyÚtest_filesystem_urir'   ;   s¨   € Ü�HŠH�cš9Ð%Ó&€Eà˜*Õ$€IØ‡O�OÔØ�~Õ%€DÜ‡N‚N�5œ#˜d›)Ô$ô �]Š]ØœÓ*ô,€Fà�=‰=˜×ÒÐÐô �]Š]Ø¬D×,@Ò,@ÀÓ,IôK€Fà�=‰=˜×ÒÐÒó    c                 ó0   € \        4       p\        W4       R # ©N)r   Ú_partition_test_for_filesystem)r"   Úlocals   & r&   Útest_read_partitioned_directoryr-   N   s   € äÓ€EÜ" 5Ö2r(   c                 ó®   € \        4       pT p\        W4       \        P                  ! V4      pVP	                  R .R7      pVP
                  R .8X  g   Q hR# )Úvalues©ÚcolumnsN)r   r+   r   ÚParquetDatasetÚreadÚcolumn_names)r"   r,   Ú	base_pathÚdatasetr%   s   &    r&   Ú'test_read_partitioned_columns_selectionr7   T   sQ   € ô Ó€EØ€IÜ" 5Ô4ä×Ò 	Ó*€GØ�\‰\ 8 *ˆ\Ó-€FØ×Ñ 8 *Ô,Ð,Ò,r(   c                 ó  € \        4       pT p^ ^.p. ROpRR.pRV.RV.RV..p\        P                  ! R\        P                  ! VRR7      P                  ^4      R\        P                  ! \        P                  ! \        P                  ! V\        R7      ^4      ^4      R\        P                  ! \        P                  ! \        P                  ! VR	R7      ^4      ^4      R
\        P                  ! ^4      /4      p\        WWg4       \        P                  ! W!. ROR7      pVP                  4       p	V	P                  4       P                  RR7      p
^ V
R,          P                  9  g   Q hRV
R,          P                  9  g   Q hRV
R,          P                  9  g   Q h. RORR..p\        P                  ! W!VR7      pVP                  4       p	V	P                  4       P                  RR7      p
V
R,          ^8H  V
R,          R8g  ,          V
R,          R8H  ,          p\        P                  ! V
R,          4      ^ 8H  V
R,          R8H  ,          pVP!                  4       ^ 8”  g   Q hVP!                  4       ^ 8”  g   Q hV
P"                  ^ ,          VP!                  4       VP!                  4       ,           8X  g   Q hR..R..3 F<  p\        P                  ! W!VR7      pVP                  4       P$                  ^ 8X  d   K<  Q h	  R# )r   ÚbTFÚintegerÚstringÚbooleanÚi4©ÚdtypeÚboolr/   ÚTrue©r   Úfilters©ÚdropÚFalseN©r   r9   Úc))r:   Ú=r   )r;   ú!=r9   )r<   ú==rA   )r:   rI   r   )r<   rK   rF   )r;   rK   s   1 a)r;   rK   z1 a)r   ÚpdÚ	DataFrameÚnpÚarrayÚrepeatÚtileÚobjectÚarangeÚ_generate_partition_directoriesr   r2   r3   Ú	to_pandasÚreset_indexr/   ÚsumÚshapeÚnum_rows)r"   r,   r5   Úinteger_keysÚstring_keysÚboolean_keysÚpartition_specÚdfr6   r   Ú	result_dfrC   Údf_filter_1Údf_filter_2s   &             r&   Útest_filters_equivalencyrb   a   s»  € äÓ€EØ€Ià�q�6€LÚ!€KØ˜%�=€Là	�LÐ!Ø	�;ÐØ	�LÐ!ð€Nô 
�ŠØ”2—8’8˜L°Ô5×<Ñ<¸RÓ@Ø”"—'’'œ"Ÿ'š'¤"§(¢(¨;¼fÔ"EÀqÓIÈ1ÓMØ”2—7’7œ2Ÿ7š7¤2§8¢8¨LÀÔ#GÈÓKÈQÓOØ”"—)’)˜B“-ð	ó 
€Bô $ E°nÔIô ×ÒØò,ô€Gð
 �L‰L‹N€EØ—‘Ó"×.Ñ.°DÐ.Ó9€Ià�I˜iÕ(×/Ñ/Ô/Ð/Ð/Ø�i Õ)×0Ñ0Ô0Ð0Ð0Ø˜	 )Õ,×3Ñ3Ô3Ð3Ð3ò	
ð
 
Ð8Ð9ð€Gô ×ÒØ¨Wô6€Gà�L‰L‹N€EØ—‘Ó!×-Ñ-°4Ð-Ó8€Ið ˜YÕ'¨1Ñ,Ø�XÕ #Ñ%õ'à�YÕ 6Ñ)õ+€Kô —8’8˜I iÕ0Ó1°QÑ6Ø�YÕ 7Ñ*õ,€Kà�?‰?Ó˜qÔ Ð Ð Ø�?‰?Ó˜qÔ Ð Ð Ø�?‰?˜1Õ +§/¡/Ó"3°k·o±oÓ6GÕ"GÔHÐHÐHà/Ð0Ð1Ø.Ð/Ð0ó2ˆä×#Ò#Ø°ô:ˆà�|‰|‹~×&Ñ&¨!Ö+Ð+Ð+ó	2r(   c           
      ó  € \        4       pT p. ROpRV..p^p\        P                  ! R\        P                  ! V4      R\        P
                  ! VRR7      /RR.R7      p\        WWF4       \        P                  ! W!RR.R7      pVP                  4       pVP                  4       P                  RR7      P                  RR	7      p	\        \        V	R,          P                  4       U
u. uF  qªNK  	  pp
V^^.8X  g   Q hR
# u up
i )r   ÚintegersÚindexr=   r>   r0   rB   ©ÚbyTrD   N©r   r   r   r   é   )rd   Ú<ri   )rd   Ú>r   ©r   rL   rM   rN   rS   rO   rT   r   r2   r3   rU   Úsort_valuesrV   ÚmapÚintr/   ©r"   r,   r5   rZ   r]   ÚNr^   r6   r   r_   ÚxÚresult_lists   &           r&   Ú%test_filters_cutoff_exclusive_integerrt   ¨   s  € äÓ€EØ€Iâ"€Là	�\Ð"ð€Nð 	
€Aä	�ŠØ”—’˜1“Ø”B—H’H˜\°Ô6ðð ˜Ð$ô
&€Bô
 $ E°nÔIä×ÒØà Ø ð
ô€Gð �L‰L‹N€EØ—‘Ó"ß"‘{ g�{Ó.ß"‘{¨�{Ó-ð ô "¤# y°Õ'<×'CÑ'CÔDÓEÑD˜’1ÑD€KÐEØ˜1˜a˜&Ô Ð Ò ùò Fs   Ã)
Dz5Loss of type information in creation of categoricals.)ÚraisesÚreasonc           
      ó\  € \        4       pT p\        P                  ! R ^^	4      \        P                  ! R ^^
4      \        P                  ! R ^^4      \        P                  ! R ^^4      \        P                  ! R ^^4      .pRV..p^p\        P                  ! R\
        P                  ! V4      R\
        P                  ! VRR7      /RR.R7      p\        WWF4       \        P                  ! W!RR.R7      pVP                  4       pVP                  4       P                  RR7      P                  RR	7      p	\        P                  ! \
        P                  ! \        P                  ! R ^^4      .RR7      \
        P                  ! VRR7      R
7      p
V	R,          P                   V
8X  g   Q hR# )iâ  Údatesre   Ú
datetime64r>   r0   rB   rf   TrD   ©Ú
categoriesN)rx   rj   z
2018-04-12)rx   rk   z
2018-04-10)r   ÚdatetimeÚdaterL   rM   rN   rS   rO   rT   r   r2   r3   rU   rm   rV   ÚCategoricalr/   )r"   r,   r5   Ú	date_keysr]   rq   r^   r6   r   r_   Úexpecteds   &          r&   Ú&test_filters_cutoff_exclusive_datetimer�   Ê   sq  € ô Ó€EØ€Iô 	�Š�d˜A˜qÓ!Ü�Š�d˜A˜rÓ"Ü�Š�d˜A˜rÓ"Ü�Š�d˜A˜rÓ"Ü�Š�d˜A˜rÓ"ð€Ið 
�)Ðð€Nð 	
€Aä	�ŠØ”—’˜1“Ø”—’˜)¨<Ô8ðð ˜Ð!ô
#€Bô
 $ E°nÔIä×ÒØà(Ø(ð
ô€Gð �L‰L‹N€EØ—‘Ó"ß"‘{ g�{Ó.ß"‘{¨�{Ó-ð ô �~Š~Ü
�Š”(—-’-  a¨Ó,Ð-°\ÔBÜ—8’8˜I¨\Ô:ô<€Hð �WÕ×$Ñ$¨Ô0Ð0Ò0r(   c           
      ób  € V R ,          p\         P                  ! R\         P                  ! R^
RR7      R\        ^
4      /4      P	                  VRR7       \
        P                  ! VRR\        P                  ! R	^^4      3.R
7      pVP                  R4      P                  4       . RO8X  g   Q hR# )ztimestamps.parquetrx   z
2020-01-01ÚD)ÚperiodsÚfreqÚidT)Úuse_deprecated_int96_timestampsú<=iä  ©rC   Nrh   )
rL   rM   Ú
date_rangeÚrangeÚ
to_parquetr   r   r|   ÚcolumnÚ	to_pylist)r"   r$   r   s   &  r&   Útest_filters_inclusive_datetimer�   û   s›   € ð Ð)Õ)€Dä‡L‚LØ”—’˜|°R¸cÔBØŒe�B‹iðó ÷ �z�$¸€zÔ=ä�MŠM˜$Ø	�$œ×)Ò)¨$°°1Ó5Ð6ð)ô €Eð �<‰<˜Ó×'Ñ'Ó)ª_Ô<Ð<Ò<r(   c           
      ó"  € \        4       pT p. ROpRV..p^p\        P                  ! R\        P                  ! V4      R\        P
                  ! VRR7      /RR.R7      p\        WWF4       \        P                  ! W!RR.R7      pVP                  4       pVP                  4       P                  RR7      P                  RR	7      p	\        \        V	R,          P                  4       U
u. uF  p
\        V
4      NK  	  pp
V^^.8X  g   Q hR
# u up
i )r   rd   re   r=   r>   r0   rB   rf   TrD   Nrh   )rd   rˆ   r   )rd   z>=r   rl   rp   s   &           r&   Útest_filters_inclusive_integerr‘     s  € äÓ€EØ€Iâ"€Là	�\Ð"ð€Nð 	
€Aä	�ŠØ”—’˜1“Ø”B—H’H˜\°Ô6ðð ˜Ð$ô
&€Bô
 $ E°nÔIä×ÒØà!Ø!ð
ô€Gð �L‰L‹N€EØ—‘Ó"ß‘+ �+Ó)ß‘+ 4�+Ó(ð ô $'¤s¨I°jÕ,A×,HÑ,HÔ#IÓJÑ#I˜a”3�q–6Ñ#I€KÐJØ˜1˜a˜&Ô Ð Ò ùò Ks   Ã)Dc                 óŠ  € \        4       pT p^ ^.p. ROpRR.pRV.RV.RV..p\        P                  ! R\        P                  ! VR	R
7      P                  ^4      R\        P                  ! \        P                  ! \        P                  ! V\        R
7      ^4      ^4      R\        P                  ! \        P                  ! \        P                  ! VRR
7      ^4      ^4      R\        P                  ! ^4      /4      p\        WWg4       \        P                  ! W!R.R7      pVP                  4       p	V	P                  4       P                  RR7      p
RV
R,          P                  9   g   Q hRV
R,          P                  9   g   Q hRV
R,          P                  9  g   Q h\        P                  ! W!RR^.3RRRR03.R7      pVP                  4       p	V	P                  4       P                  RR7      p
^ V
R,          P                  9  g   Q hRV
R,          P                  9  g   Q hRV
R,          P                  9  g   Q hR# )r   r   r9   rH   TFr:   r;   r<   r=   r>   r@   r/   ÚinrB   rD   znot inrF   NrG   )r;   r“   Úab)r;   r“   )r   r9   )r   rL   rM   rN   rO   rP   rQ   rR   rS   rT   r   r2   r3   rU   rV   r/   )r"   r,   r5   rZ   r[   r\   r]   r^   r6   r   r_   s   &          r&   Útest_filters_inclusive_setr•   .  s
  € äÓ€EØ€Ià�q�6€LÚ!€KØ˜%�=€Là	�LÐ!Ø	�;ÐØ	�LÐ!ð€Nô 
�ŠØ”2—8’8˜L°Ô5×<Ñ<¸RÓ@Ø”"—'’'œ"Ÿ'š'¤"§(¢(¨;¼fÔ"EÀqÓIÈ1ÓMØ”2—7’7œ2Ÿ7š7¤2§8¢8¨LÀÔ#GÈÓKÈQÓOØ”"—)’)˜B“-ð	ó 
€Bô $ E°nÔIä×ÒØØ'Ð(ô€Gð �L‰L‹N€EØ—‘Ó"×.Ñ.°DÐ.Ó9€Ià�)˜HÕ%×,Ñ,Ô,Ð,Ð,Ø�)˜HÕ%×,Ñ,Ô,Ð,Ð,Ø�i Õ)×0Ñ0Ô0Ð0Ð0ä×ÒØØ˜T A 3Ð'Ð)EØ˜X¨ yÐ1ð3ô€Gð
 �L‰L‹N€EØ—‘Ó"×.Ñ.°DÐ.Ó9€Ià�I˜iÕ(×/Ñ/Ô/Ð/Ð/Ø�i Õ)×0Ñ0Ô0Ð0Ð0Ø˜	 )Õ,×3Ñ3Ô3Ð3Ò3r(   c           
      óÈ  € \        4       pT p. R
OpRV..p^p\        P                  ! R\        P                  ! V4      R\        P
                  ! VRR7      /RR.R7      p\        WWF4       \        P                  ! \        4      ;_uu_ 4        \        P                  ! VVR.R7       RRR4       \        P                  ! \        4      ;_uu_ 4        \        P                  ! VVR.R7       RRR4       \        P                  ! VVRR\        4       3.R7      pVP                  4       P                  ^ 8X  g   Q h\        P                  ! VVRR	^03.R7      p\        P                  ! \         4      ;_uu_ 4        VP                  4       P                  ^ 8X  g   Q h RRR4       R#   + '       g   i     EL	; i  + '       g   i     L×; i  + '       g   i     R# ; i)r   rd   re   r=   r>   r0   r“   rB   NrJ   rh   )rd   r“   r   )rd   z=<r   )r   rL   rM   rN   rS   rO   rT   Úpytestru   Ú	TypeErrorr   r2   Ú
ValueErrorÚsetr3   rY   ÚNotImplementedError)r"   r,   r5   rZ   r]   rq   r^   r6   s   &       r&   Útest_filters_invalid_pred_oprœ   ]  s‰  € äÓ€EØ€Iâ"€Là	�\Ð"ð€Nð 	
€Aä	�ŠØ”—’˜1“Ø”B—H’H˜\°Ô6ðð ˜Ð$ô
&€Bô
 $ E°nÔIä	�Š”y×	!Õ	!Ü
×Ò˜)Ø%*Ø#8Ð";õ	=÷ 
"ô
 
�Š”z×	"Õ	"Ü
×Ò˜)Ø%*Ø#8Ð";õ	=÷ 
#ô ×Ò 	Ø+0Ø*4°d¼C»EÐ)BÐ(EôG€Gð �<‰<‹>×"Ñ" aÔ'Ð'Ð'ä×Ò 	Ø+0Ø*4°d¸Q¸CÐ)@Ð(AôC€Gô 
�ŠÔ*×	+Õ	+Ø�|‰|‹~×&Ñ&¨!Ô+Ð+Ñ+÷ 
,Ñ	+÷' 
"×	!Ð	!ú÷
 
#×	"ú÷ 
,×	+Ð	+ús$   ÂF)ÃF=Å<"GÆ)F:	Æ=G	ÇG!	c           
      ó°  € \        4       pT p. R
OpRV..p^p\        P                  ! R\        P                  ! V4      R\        P
                  ! VRR7      /RR.R7      p\        WWF4       Rp\        P                  ! \        VR7      ;_uu_ 4        \        P                  ! W!R.R7      P                  4        R	R	R	4       R	#   + '       g   i     R	# ; i)r   rd   re   r=   r>   r0   z1No match for FieldRef.Name\(non_existent_column\)©ÚmatchrB   Nrh   )Únon_existent_columnrj   r   )r   rL   rM   rN   rS   rO   rT   r—   ru   r™   r   r2   r3   )r"   r,   r5   rZ   r]   rq   r^   Úmsgs   &       r&   Útest_filters_invalid_columnr¢   †  s±   € ô Ó€EØ€Iâ"€LØ! <Ð0Ð1€NØ	€Aä	�ŠØ”—’˜1“Ø”B—H’H˜\°Ô6ðð ˜Ð$ô
&€Bô
 $ E°nÔIà
>€CÜ	�Š”z¨×	-Ö	-Ü
×Ò˜)Ø#BÐ"Eô	GßGKÁtÄv÷ 
.×	-×	-Ò	-ús   Â(CÃC	rC   rd   Únestedr   r9   Úread_methodc                 óØ  € \        \        V4      p\        4       pT p. R
OpRV..p\        V4      p\        P
                  ! R\        P                  ! V4      R\        P                  ! VRR7      R\        P                  ! \        V4       U	u. uF  p	RV	R\        V	4      /NK  	  up	4      /4      p
\        WEWz4       \        WAR7      pV! V3/ VB pVP                  ^8X  g   Q hR	# u up	i )r   rd   re   r=   r>   r£   r   r9   rB   Nrh   )Úgetattrr   r   ÚlenrL   rM   rN   rS   rO   r‹   r   rT   ÚdictrY   )r"   rC   r¤   r3   r,   r5   rZ   r]   rq   Úir^   Úkwargsr   s   &&&          r&   Útest_filters_read_tabler«   ž  sØ   € ô ”2�{Ó#€DäÓ€EØ€Iâ"€Là	�\Ð"ð€Nô 	ˆLÓ€Aä	�ŠØ”—’˜1“Ø”B—H’H˜\°Ô6Ø”"—(’(¼5À¼8ÓD¹8°a˜S ! S¬#¨a«&Ó1¹8ÑDÓEðó 
€Bô $ E°nÔIä˜UÔ4€Fá�Ñ%˜fÑ%€EØ�>‰>˜QÔÐÒùò Es   ÂC'c           
      ót  € \        4       pT pR R.pRV..p^p\        P                  ! R\        P                  ! V4      R\        P
                  ! VRR7      /RR.R7      p\        WWF4       \        P                  ! V4      pVP                  4       pVP                  R4      P                  4       V8X  g   Q hR# )Ú2019_2Ú2019_3Ú	year_weekre   rR   r>   r0   N)r   rL   rM   rN   rS   rO   rT   r   r2   r3   r�   rŽ   )	r"   r,   r5   r[   r]   rq   r^   r6   r%   s	   &        r&   Ú$test_partition_keys_with_underscoresr°   À  s²   € ô Ó€EØ€Ià˜XÐ&€Kà	�kÐ"ð€Nð 	
€Aä	�ŠØ”—’˜1“Ø”R—X’X˜k°Ô:ðð ˜Ð%ô
'€Bô
 $ E°nÔIä×Ò 	Ó*€GØ�\‰\‹^€FØ�=‰=˜Ó%×/Ñ/Ó1°[Ô@Ð@Ò@r(   c                 ó¸   € V w  rVR ,           p\         P                  ! R. RO/4      p\        W2VR7       \        W!R7      pVP	                  V4      '       g   Q hR# ©z/test.parquetr   r   Nr   ©r   r   r   r   r    )Ús3_example_s3fsÚfsr$   r   r%   s   &    r&   Útest_read_s3fsr¶   Ø  sO   € à�H€BØ�/Õ!€DÜ�HŠH�cš9Ð%Ó&€EÜ�¨Õ,ä˜Ô-€FØ�=‰=˜×ÒÐÒr(   c                 ó¸   € V w  rVR ,           p\         P                  ! R. RO/4      p\        WCVR7       \        W!R7      pVP	                  V4      '       g   Q hR# r²   r³   )r´   rµ   r#   r$   r   r%   s   &     r&   Útest_read_directory_s3fsr¸   ã  sO   € à#�M€BØ�Õ&€DÜ�HŠH�cš9Ð%Ó&€EÜ�¨Õ,ä˜Ô2€FØ�=‰=˜×ÒÐÒr(   c                 óð   € \        V R ,          4      p\        P                  ! R. RO/4      p\        W!4       \        P
                  ! V.4      P                  4       pVP                  V4      '       g   Q hR# )r   r   Nr   )r   r   r   r   r   r2   r3   r    )r"   Ú	data_pathr   r%   s   &   r&   Útest_read_single_file_listr»   î  s\   € ä�G˜nÕ,Ó-€Iä�HŠH�cš9Ð%Ó&€EÜ�Ô"ä×Ò 	˜{Ó+×0Ñ0Ó2€FØ�=‰=˜×ÒÐÒr(   c                 ó$   € V w  r\        W4       R # r*   )r+   ©r´   rµ   r$   s   &  r&   Ú$test_read_partitioned_directory_s3fsr¾   ù  s   € ð �H€BÜ" 2Ö,r(   c                 óÆ  € ^ ^.p. ROpRV.RV..p^p\         P                  ! R\        P                  ! V4      R\        P                  ! VRR7      P                  ^4      R\        P                  ! \        P                  ! \        P                  ! V\        R7      ^4      ^4      R\        P                  P                  V4      /. ROR7      p\        WWF4       \        P                  ! WR7      pVP                  4       pVP                  4       P                  RR	7      P!                  R
R7      p	VP                  RR	7      P!                  R
R7      P#                  V	P$                  R7      p
V
R,          P'                  R4      V
R&   V
R,          P'                  R4      V
R&   V	P$                  . RO8H  P)                  4       '       g   Q h\*        P,                  ! Wš4       R# )r   ÚfooÚbarre   r=   r>   r/   r0   r   rf   TrD   ÚcategoryNrG   )re   rÀ   rÁ   r/   )re   r/   rÀ   rÁ   )rL   rM   rN   rS   rO   rP   rQ   rR   ÚrandomÚrandnrT   r   r2   r3   rU   rm   rV   Úreindexr1   ÚastypeÚallÚtmÚassert_frame_equal)rµ   r5   Úfoo_keysÚbar_keysr]   rq   r^   r6   r   r_   Úexpected_dfs   &&         r&   r+   r+      sŒ  € Ø�1ˆv€HÚ€Hà	�ÐØ	�Ðð€Nð 	€Aä	�ŠØ”—’˜1“ØŒr�xŠx˜¨Ô-×4Ñ4°RÓ8ØŒr�wŠw”r—w’wœrŸxšx¨¼Ô?ÀÓCÀQÓGØ”"—)‘)—/‘/ !Ó$ð	ò
 1ô
2€Bô $ B°>ÔFä×Ò 	Ô9€GØ�L‰L‹N€EØ—‘Ó"ß‘+ �+Ó)ß‘+ 4�+Ó(ð ð —>‘> W�>Ó-ß‘K T�KÓ*ß‘G I×$5Ñ$5�GÓ6ð ð % UÕ+×2Ñ2°:Ó>€K�ÑØ$ UÕ+×2Ñ2°:Ó>€K�Ñà×ÑÒ!BÑB×GÑG×IÒIÐIÐIä×Ò˜)Ö1r(   c           	      óÖ   a aaaaa€ \        S \        4      '       g   \        \        S 4      4      o \	        S4      o\        S R \        S RR4      4      oVVVV VV3R loS! V^ . 4       R# )ÚpathsepÚsepÚ/c                 óæ  <€ SV,          w  r4V EF   pW#V3.,           pSP                  \        V 4      V R V 2.4      pSP                  V4       VS^,
          8X  Ed   ^ RIHp SP                  V\        4       .4      p	\        SV4      p
\        P                  P                  V
4      pSP                  V	4      ;_uu_ 4       p\        W¼4       RRR4       SP                  V	4      P                  VP                  8w  g   Q hSP                  V	4      P                  VP                  8X  g   Q hSP                  VR.4      pSP                  V4      ;_uu_ 4       p RRR4       EKZ  S! Wq^,           V4       SP                  VR.4      pSP                  V4      ;_uu_ 4       p RRR4       EK£  	  R#   + '       g   i     Lî; i  + '       g   i     EKÌ  ; i  + '       g   i     EKá  ; i)rI   )ÚFileTypeNÚ_SUCCESS)Újoinr   Ú
create_dirÚ
pyarrow.fsrÒ   r
   Ú_filter_partitionr   ÚTableÚfrom_pandasÚopen_output_streamr   Úget_file_infoÚtypeÚNotFoundÚFile)Úbase_dirÚlevelÚ	part_keysÚnamer/   ÚvalueÚthis_part_keysÚ	level_dirrÒ   Ú	file_pathÚfiltered_dfÚ
part_tableÚfÚfile_successÚDEPTHÚ_visit_levelr^   rµ   r]   rÎ   s   &&&           €€€€€€r&   rì   Ú5_generate_partition_directories.<locals>._visit_level2  sœ  ø€ Ø% eÕ,‰ˆÜˆEØ&°¨-¨Õ8ˆNàŸ™Ü�H“Ø�&˜˜%˜Ð!ð&ó ˆIð �M‰M˜)Ô$à˜ �	Õ!å/à#ŸL™L¨)´T³VÐ)<Ó=�	Ü/°°NÓC�ÜŸX™X×1Ñ1°+Ó>�
Ø×*Ñ*¨9×5Ô5¸Ü  Ô/÷ 6à×'Ñ'¨	Ó2×7Ñ7¸8×;LÑ;LÔLÐLÐLØ×'Ñ'¨	Ó2×7Ñ7¸8¿=¹=ÔHÐHÐHà&Ÿ|™|¨Y¸
Ð,CÓD�Ø×*Ñ*¨<×8Ô8¸AØ÷ 9Ò8ñ ˜Y°­	°>ÔBØ&Ÿ|™|¨Y¸
Ð,CÓD�Ø×*Ñ*¨<×8Ô8¸AØ÷ 9Ò8ó7 ÷  6×5ú÷ 9×8Ñ8ú÷
 9×8Ñ8ús$   ÃF6ÅG	Æ%GÆ6GÇ	GÇG0N)Ú
isinstancer   r   r   r§   r¦   )rµ   rß   r]   r^   rë   rì   rÎ   s   f&ff@@@r&   rT   rT   '  s[   ý€ ô �bœ*×%Ò%Üœ-¨Ó+Ó,ˆä�Ó€Eä�b˜)¤W¨R°¸Ó%<Ó=€G÷ò ñ@ �˜1˜bÖ!r(   c                 ój  € \         P                  ! \        V 4      \        R 7      p. pV Fn  w  rEVP	                  V4       \        V\        P                  \        P                  34      '       d   \        P                  ! V4      pW V,          V8H  ,          pKp  	  W,          P                  V^R7      # )r>   )Úaxis)rN   Úonesr§   r@   Úappendrî   r|   r}   rL   Ú	TimestamprE   )r^   rá   Ú	predicateÚto_droprâ   rã   s   &&    r&   r×   r×   U  sŠ   € Ü—’œ˜B›¤tÔ,€Ià€GÛ ‰ˆØ�‰�tÔô �eœhŸm™m¬X×->Ñ->Ð?×@Ò@Ü—L’L Ó'ˆEà˜•X Ñ&Õ&Š	ñ !ð �=×Ñ˜g¨AÐÓ.Ð.r(   c                 ól  € V R ,          pVP                  4        \        P                  P                  \        P
                  ! R. RO/4      4      p\        P                  ! W!R,          4       V R,          pVP                  4        \        P                  P                  \        P
                  ! R. RO/4      4      p\        P                  ! WCR,          4       \        P                  ! V R..R7      pVP                  R4      P                  \        P                  ! . RO.4      4      '       g   Q hR# )	zA=0ÚBr   zA=1r‰   Nr   rG   )ÚArK   r   )r   r   rØ   rÙ   rL   rM   r   r   r   r�   r    Úchunked_array)r"   Údir1Útable1Údir2Útable2r   s   &     r&   Ú"test_filter_before_validate_schemarþ   e  sÓ   € ð �U�?€DØ‡J�J„LÜ�X‰X×!Ñ!¤"§,¢,°²YÐ/?Ó"@ÓA€FÜ‡N‚N�6 .Õ0Ô1à�U�?€DØ‡J�J„LÜ�X‰X×!Ñ!¤"§,¢,°²_Ð/EÓ"FÓG€FÜ‡N‚N�6 .Õ0Ô1ô �MŠM˜'¨^Ð,<Ð+=Ô>€EØ�<‰<˜Ó×#Ñ#¤B×$4Ò$4²i°[Ó$A×BÒBÐBÒBr(   c                 óÀ  € ^
p^pV \        4       ,          pVP                  4        . p. p\        V4       F�  p\        W&R7      pVR,          P	                  \
        P                  4      VR&   W6 R2,          p\        P                  P                  V4      p	\        W˜4       VP                  V	4       VP                  V4       K‘  	  VR,          P                  4        RR lp
V
! V4      p\        P                  ! V4      pVP                  V4      '       g   Q h^ ^^VP                  ^,
          .pV Uu. uF  qkP!                  V4      P"                  NK  	  pp\$        P&                  ! W>R7      p\        P                  P)                  V Uu. uF  qkP+                  V4      NK  	  upVVP,                  P.                  R	7      pVP                  V4      '       g   Q h\$        P&                  ! VRR
7       \        VXR7      P0                  R,          pV \        4        R2,          p\        P                  P                  V4      p\        VV4       R# u upi u upi )é
   ©ÚseedÚuint32ú.parquetz_SUCCESS.crcNTc                 óT   € \         P                  ! V 3/ VB pVP                  WR 7      # ))r1   Úuse_threads)r   r2   r3   )Úpathsr1   r  rª   r6   s   &&&, r&   Úread_multiple_filesÚ5test_read_multiple_files.<locals>.read_multiple_files–  s(   € Ü×#Ò# EÑ4¨VÑ4ˆØ�|‰| Gˆ|ÓEÐEr(   r0   )ÚnamesÚmetadata)r  )NT):NNN:Nri   N)r
   r   r‹   r   rÆ   rN   Úint64r   rØ   rÙ   r   rò   ÚtouchÚconcat_tablesr    Únum_columnsÚfieldrâ   r   r   Úfrom_arraysr�   Úschemar  Úiloc)r"   ÚnfilesÚsizeÚdirpathÚ	test_datar  r©   r^   r$   r   r  r%   r€   Úto_readÚ	col_namesÚoutÚ	bad_appleÚbad_apple_pathÚts   &                  r&   Útest_read_multiple_filesr  {  só  € à€FØ€Dàœ›Õ€GØ‡M�M„Oà€IØ€EÜ�6Ž]ˆÜ˜TÔ*ˆð ˜(•|×*Ñ*¬2¯8©8Ó4ˆˆ8‰à˜3˜h˜Õ'ˆä—‘×$Ñ$ RÓ(ˆÜ�UÔ!à×Ñ˜ÔØ�‰�TÖñ ð ˆ~Õ×$Ñ$Ô&ôFñ ! Ó'€FÜ×Ò 	Ó*€Hà�=‰=˜×"Ò"Ð"Ð"ð �!�Q˜×*Ñ*¨QÕ.Ð/€Gá/6Ó7©w¨!—‘˜a“×%Ô%©w€IÐ7Ü
�-Š-˜Ô
3€CÜ�x‰x×#Ñ#¹wÓ$G¹w¸!§]¡]°1Ö%5¹wÑ$GØ*3Ø-3¯]©]×-CÑ-Cð $ó E€Hð �:‰:�h×ÒÐÐô ‡M‚M�' tÕ,ô   ¨1Ô-×2Ñ2°5Õ9€IØ¤$£& ¨Ð2Õ2€Nä
�‰×Ñ˜YÓ'€AÜ��NÖ#ùò 8ùâ$Gs   Ä6#IÆIc                 óÚ  € ^p^pV \        4       ,          pVP                  4        . p. p. p\        V4       F¸  p\        W'R7      p\        P
                  ! Wr,          V^,           V,          4      Vn        RVP                  n        W7 R2,          p	\        P                  P                  V4      p
\        W©4       VP                  V
4       VP                  V4       VP                  V	4       Kº  	  \        P                  ! V4      pRR.pVP                  VR7      P!                  4       p\"        P$                  ! V Uu. uF  qîV,          NK  	  up4      p\&        P(                  ! Wß4       VP                  \+        V4      R7      P!                  4       pVP,                  VP,                  8X  g   Q h\&        P(                  ! VP/                  VP0                  R7      V4       R# u upi )é   r  re   r  Úuint8Ústringsr0   N)r
   r   r‹   r   rN   rS   re   râ   r   rØ   rÙ   r   rò   r   r2   Úread_pandasrU   rL   ÚconcatrÈ   rÉ   rš   rX   rÅ   r1   )r"   r  r  r  r  Úframesr  r©   r^   r$   r   r6   r1   r%   rr   r€   s   &               r&   Útest_dataset_read_pandasr&  Ã  s„  € à€FØ€Dàœ›Õ€GØ‡M�M„Oà€IØ€FØ€EÜ�6Ž]ˆÜ˜TÔ*ˆÜ—9’9˜Q�X¨¨A­°¥~Ó6ˆŒØˆ�‰Œà˜3˜h˜Õ'ˆä—‘×$Ñ$ RÓ(ˆÜ�UÔ!Ø×Ñ˜ÔØ�‰�bÔØ�‰�TÖñ ô ×Ò Ó(€GØ˜	Ð"€GØ× Ñ ¨Ð Ó1×;Ñ;Ó=€FÜ�yŠy©fÓ5©f¨˜GŸ*˜*©fÑ5Ó6€Hä×Ò˜&Ô+ð × Ñ ¬¨W«Ð Ó6×@Ñ@ÓB€FØ�<‰<˜8Ÿ>™>Ô)Ð)Ð)ä×Ò˜&Ÿ.™.°×1AÑ1A˜.ÓBÀHÖMùò 6s   ÅG(c                 ó  € V \        4       ,          pVP                  4        \        ^
^ R7      pVR,          p\        W#RR7       \        P
                  ! VRR7      pVP                  4       P                  V4      '       g   Q hR# )r   r  ú	0.parquetú2.6©ÚversionT)Ú
memory_mapN)r
   r   r   r   r   r2   r3   r    )r"   r  r   r$   r6   s   &    r&   Útest_dataset_memory_mapr-  é  sk   € ð œ›Õ€GØ‡M�M„Oä˜ Ô#€EØ�[Õ €DÜ� eÕ,ä×ÒØ˜Dô"€Gà�<‰<‹>× Ñ  ×'Ò'Ð'Ò'r(   c                 óÈ  € V \        4       ,          pVP                  4        \        ^
^ R7      pVR,          p\        W#RR7       \        P
                  ! \        4      ;_uu_ 4        \        P                  ! VRR7       RRR4       R FA  p\        P                  ! WR7      pVP                  4       P                  V4      '       d   KA  Q h	  R#   + '       g   i     LY; i)	r   r  r(  r)  r*  )Úbuffer_sizeNiÀÿÿÿ)é€   i   )r
   r   r   r   r—   ru   r™   r   r2   r3   r    )r"   r  r   r$   r/  r6   s   &     r&   Ú#test_dataset_enable_buffered_streamr1  ø  s£   € àœ›Õ€GØ‡M�M„Oä˜ Ô#€EØ�[Õ €DÜ� eÕ,ä	�Š”z×	"Õ	"Ü
×ÒØ õ	&÷ 
#ó #ˆÜ×#Ò#Øô.ˆà�|‰|‹~×$Ñ$ U×+Ô+Ð+Ð+ó #÷	 
#×	"ús   Á'CÃC!	c                 ó|  € V \        4       ,          pVP                  4        \        ^
^ R7      pVR,          p\        W#RR7       R Fq  p\        P
                  ! WR7      pVP                  4       P                  V4      '       g   Q h\        P                  ! WR7      pVP                  V4      '       d   Kq  Q h	  R# )r   r  r(  r)  r*  )Ú
pre_bufferN)TF)	r
   r   r   r   r   r2   r3   r    r   )r"   r  r   r$   r3  r6   Úactuals   &      r&   Útest_dataset_enable_pre_bufferr5    s”   € àœ›Õ€GØ‡M�M„Oä˜ Ô#€EØ�[Õ €DÜ� eÕ,ã#ˆ
Ü×#Ò#Øô,ˆà�|‰|‹~×$Ñ$ U×+Ò+Ð+Ð+Ü—’˜wÔ>ˆØ�}‰}˜U×#Ô#Ð#Ð#ó $r(   c                 ó¶   € . p. p\        V4       FE  p\        W%R 7      pW R2,          pVP                  \        Wg4      4       VP                  V4       KG  	  V# )r  r  )r‹   r   rò   r   )r5   r  Ú
file_nrowsr  r  r©   r   r$   s   &&&     r&   Ú_make_example_multifile_datasetr8    sX   € Ø€IØ€EÜ�6Ž]ˆÜ˜JÔ/ˆØ˜S ˜>Õ)ˆà×Ñœ eÓ2Ô3Ø�‰�TÖñ ð €Lr(   c                 óª   € V Uu. uF  p\        VP                  4       4      NK  	  pp\        V4      \        V P                  4      8X  g   Q hR # u upi r*   )r   Úas_posixrš   Úfiles)r6   r  r$   s   && r&   Ú_assert_dataset_pathsr<  (  sA   € Ù.3Ó4©e dŒS�—‘“Ö!©e€EÐ4Üˆu‹:œ˜WŸ]™]Ó+Ô+Ð+Ò+ùò 5s   …"AÚ
dir_prefixÚ_Ú.c                 óØ   € V \        4       ,          pVP                  4        \        V^
^R7      pW! R2,          P                  4        \        P                  ! V4      p\        WC4       R# )r   ©r  r7  ÚstagingN©r
   r   r8  r   r2   r<  ©r"   r=  r  r  r6   s   &&   r&   Útest_ignore_private_directoriesrE  -  sZ   € ð œ›Õ€GØ‡M�M„Oä+¨G¸BØ78ô:€Eð �˜WÐ%Õ%×,Ñ,Ô.ä×Ò Ó(€Gä˜'Ö)r(   c                 óÚ  € V \        4       ,          pVP                  4        \        V^
^R7      pVR,          P                  R4      ;_uu_ 4       pVP	                  R4       RRR4       VR,          P                  R4      ;_uu_ 4       pVP	                  R4       RRR4       \
        P                  ! V4      p\        WB4       R#   + '       g   i     Lm; i  + '       g   i     LF; i)r   rA  z	.DS_StoreÚwbs	   gibberishNz.private©r
   r   r8  ÚopenÚwriter   r2   r<  ©r"   r  r  ré   r6   s   &    r&   Útest_ignore_hidden_files_dotrL  >  sª   € àœ›Õ€GØ‡M�M„Oä+¨G¸BØ78ô:€Eð �KÕ
×	%Ñ	% d×	+Ô	+¨qØ	�‰�Ô÷ 
,ð �JÕ
×	$Ñ	$ T×	*Ô	*¨aØ	�‰�Ô÷ 
+ô ×Ò Ó(€Gä˜'Ö)÷ 
,×	+ú÷ 
+×	*úó   ÁCÂ
CÃC	ÃC*	c                 óÚ  € V \        4       ,          pVP                  4        \        V^
^R7      pVR,          P                  R4      ;_uu_ 4       pVP	                  R4       RRR4       VR,          P                  R4      ;_uu_ 4       pVP	                  R4       RRR4       \
        P                  ! V4      p\        WB4       R#   + '       g   i     Lm; i  + '       g   i     LF; i)r   rA  Ú_committed_123rG  s   abcdNÚ_started_321rH  rK  s   &    r&   Ú#test_ignore_hidden_files_underscorerQ  Q  s«   € àœ›Õ€GØ‡M�M„Oä+¨G¸BØ78ô:€Eð Ð$Õ
$×	*Ñ	*¨4×	0Ô	0°AØ	�‰�Ô÷ 
1ð �NÕ
"×	(Ñ	(¨×	.Ô	.°!Ø	�‰�Ô÷ 
/ô ×Ò Ó(€Gä˜'Ö)÷ 
1×	0ú÷ 
/×	.úrM  c                 óþ   € W R 2,          \        4       ,          pVP                  RR7       \        V^
^R7      p\        P                  ! V4      p\        WC4       \        P                  ! V4      p\        WC4       R# )ÚdataT©ÚparentsrA  NrC  rD  s   &&   r&   Ú/test_ignore_no_private_directories_in_base_pathrV  d  sm   € ð
 ˜, dÐ+Õ+¬d«fÕ4€GØ‡M�M˜$€MÔä+¨G¸BØ78ô:€Eô ×Ò Ó&€GÜ˜'Ô)ô ×Ò Ó(€GÜ˜'Ö)r(   c           	      ó"  € R .^,          R.^,          ,           p\         P                  ! \         P                  ! \        \	        V4      4      4      \         P                  ! V4      P                  4       .RR.R7      p\        P                  ! V\        V 4      R.R7       V R,          pVP                  4        \        P                  ! V\        V4      R.R7       \        P                  ! V R.R7      pVP                  V4      '       g   Q hR	# )
ÚxxxÚyyyre   Ú_part©r
  ©Úpartition_colsÚ_private_duplicateÚ_private)Úignore_prefixesN)r   r   rO   r‹   r§   Údictionary_encoder   Úwrite_to_datasetr   r   r   r    )r"   Úpartr   Úprivate_duplicater3   s   &    r&   Útest_ignore_custom_prefixesre  w  sÛ   € àˆ7�Q�;˜%˜ 1�Õ$€DÜ�HŠHÜ
�Š””s˜4“yÓ!Ó"Ü
�Š�‹×(Ñ(Ó*ðð �wÐô!€Eô
 ×Ò˜œs 7›|¸W¸IÕFàÐ"6Õ6ÐØ×ÑÔÜ×Ò˜œsÐ#4Ó5Ø(/ yõ2ô �=Š=Ø * ô/€Dð �;‰;�u×ÒÐÒr(   c                 óÐ   € V R ,          pVP                  4        \        P                  ! V4      pVP                  4       pVP                  ^ 8X  g   Q hVP
                  ^ 8X  g   Q hR# )r6   N)r   r   r2   r3   rY   r  )r"   Ú	empty_dirr6   r%   s   &   r&   Útest_empty_directoryrh  Œ  sW   € à˜)Õ#€IØ‡O�OÔä×Ò 	Ó*€GØ�\‰\‹^€FØ�?‰?˜aÔÐÐØ×Ñ Ô"Ð"Ò"r(   c                 ó|  € ^ RI p^ RIHp ^ RIHp VP
                  ! R\        R4      R\        R4      R\        \        ^
4      4      R\        P                  .^
,          R\        P                  ! R	R
RR7      P                  R4      /4      pVP                  P                  4       pRR.p	\        P                  P!                  WrRRR7      p
VP"                  ! W V	VR7       \$        P&                  P)                  \+        V 4      R4      pVeB   VP-                  VR4      ;_uu_ 4       pVP.                  ! V
P0                  V4       RRR4       MVP.                  ! V
P0                  V4       VP2                  ! V VR7      p\5        VP0                  P6                  4      pV\5        V
P0                  P6                  4      8X  g   Q hVP9                  4       pVP;                  4       pVP                  P                  4       pV	VR\=        V	4      ,          R 8X  g   Q hVV,          pV	 F  pVV,          P                  R4      VV&   K   	  V'       dE   VP?                  R4      P@                  PC                  4       pVR,          P                  V4      VR&   VPD                  ! VV4       R#   + '       g   i     ELN; i)r   NÚgroup1Ú
aaabbbbcccÚgroup2Ú
eefeffgeeeÚnumÚnanr}   ú
2017-01-01ú
2017-01-11údatetime64[D]r>   údatetime64[ns]F)r  ÚsafeÚpreserve_indexr   Ú_common_metadatarG  rÂ   éÿÿÿÿ)#ÚpandasÚpandas.testingÚtestingÚpyarrow.parquetÚparquetrM   Úlistr‹   rN   ro  rS   rÆ   r1   Útolistr   rØ   rÙ   rb  Úosr$   rÔ   r   rI  Úwrite_metadatar  r2   rš   r
  r3   rU   r§   r  rÜ   Úto_pandas_dtyperÉ   )r5   r   r  Ú
index_namerL   rÈ   r   Ú	output_dfÚcolsÚpartition_byÚoutput_tableÚmetadata_pathré   r6   Údataset_colsÚinput_tableÚinput_dfÚinput_df_colsÚcolÚexpected_date_types   &&&&                r&   Ú&_test_write_to_dataset_with_partitionsrŽ  —  sO  € ó Ýå ð —’Ø”$�|Ó$Ø”$�|Ó$ØŒt”E˜"“I‹Ø”—‘ˆx˜"�}Ø”—	’	˜,¨¸OÔL×SÑSØóðó €Ið ×Ñ×#Ñ#Ó%€DØ˜hÐ'€LÜ—8‘8×'Ñ'¨	ÀuØ7<ð (ó >€Là×Ò˜°Ø#-õ/ô —G‘G—L‘L¤ Y£Ð1CÓD€MàÒØ�_‰_˜]¨D×1Ô1°QØ×Ò˜l×1Ñ1°1Ô5÷ 2Ð1ð 	×Ò˜,×-Ñ-¨}Ô=à×Ò 	Ø+5ô7€Gô �w—~‘~×+Ñ+Ó,€Làœ3˜|×2Ñ2×8Ñ8Ó9Ô9Ð9Ð9à—,‘,“.€KØ×$Ñ$Ó&€Hð ×$Ñ$×+Ñ+Ó-€MØ˜=¨¬c°,Ó.?Õ)?Ð)@ÐAÔAÐAÐAà˜�~€HãˆØ" 3�×.Ñ.¨zÓ:ˆ	�#‹ñ ÷ Ø#Ÿ\™\¨&Ó1×6Ñ6×FÑFÓHÐØ% fÕ-×4Ñ4Ð5GÓHˆ	�&Ñà×Ò˜) XÖ.÷= 2×1Ð1ús   Ä)J*Ê*J;	c                 ó¸  € ^ RI p^ RIHp VP                  ! R\	        R4      R\	        R4      R\	        \        ^
4      4      R\        P                  ! RR	R
R7      P                  R4      /4      pVP                  P                  4       p\        P                  P                  V4      pVf   \        4       pM*\        V\         4      '       g   \#        \%        V4      4      p^p\        V4       F  pVP&                  ! W`VR7       K  	  \)        \+        V 4      RRR7      p	VP-                  V	4      p
V
 Uu. uF'  q»P.                  P1                  R4      '       g   K%  VNK)  	  pp\3        V4      V8X  g   Q hVP4                  ! WR7      P7                  4       pVP9                  4       pVP;                  4       pWå,          p\<        P>                  ! WN4       R# u upi )r   Nrj  rk  rl  rm  rn  r}   rp  rq  rr  r>   rs  r   FT)Úallow_not_foundÚ	recursiver  ) rx  r{  r|  rM   r}  r‹   rN   rS   rÆ   r1   r~  r   rØ   rÙ   r   rî   r   r   r   rb  r   r   rÛ   r$   Úendswithr§   r2   r3   rU   Údrop_duplicatesrÈ   rÉ   )r5   r   rL   r   rƒ  r„  r†  Únr©   ÚselectorÚinfosÚinfoÚoutput_filesr‰  rŠ  s   &&             r&   Ú$_test_write_to_dataset_no_partitionsr™  Ô  s“  € ãå ð —’Ø”$�|Ó$Ø”$�|Ó$ØŒt”E˜"“I‹Ø”—	’	˜,¨¸OÔL×SÑSØóð	ó €Ið ×Ñ×#Ñ#Ó%€DÜ—8‘8×'Ñ'¨	Ó2€LàÒÜ$Ó&‰
Ü˜
¤J×/Ò/Ü!¤-°
Ó";Ó<ˆ
ð 	
€AÜ�1ŽXˆØ
×Ò˜LØ'1÷	3ñ ô œC 	›N¸EØ&*ô,€Hð ×$Ñ$ XÓ.€EÙ%*ÓM¡U˜T¯i©i×.@Ñ.@À×.L—D�D¡U€LÐMÜˆ|Ó Ô!Ð!Ð!ð ×#Ò#Øôç
�dƒfð ð ×$Ñ$Ó&€HØ×'Ñ'Ó)€HØ�~€HÜ×Ò˜)Ö.ùò Ns   Ä5"GÅGc                 ó.   € \        \        V 4      4       R # r*   ©rŽ  r   ©r"   s   &r&   Ú%test_write_to_dataset_with_partitionsr�    s   € ä*¬3¨w«<Ö8r(   c                 ó  € \         P                  ! \         P                  ! R \         P                  ! 4       R7      \         P                  ! R\         P                  ! 4       R7      \         P                  ! R\         P                  ! 4       R7      \         P                  ! R\         P
                  ! 4       R7      \         P                  ! R\         P                  ! RR7      R7      .4      p\        \        V 4      VR7       R	# )
rj  )rÜ   rl  rn  ro  r}   Úus)Úunit©r  N)	r   r  r  r;   r  Úint32Ú	timestamprŽ  r   )r"   r  s   & r&   Ú0test_write_to_dataset_with_partitions_and_schemar¤    s�   € ä�YŠYœŸš ´·	²	³Ô<ÜŸš ´·	²	³Ô<ÜŸš ¬R¯XªX«ZÔ8ÜŸš ¬R¯XªX«ZÔ8ÜŸš ¬b¯lªlÀÔ.EÔFð	Hó I€Fô
 +ÜˆG‹˜V÷%r(   c                 ó2   € \        \        V 4      R R7       R# )r‚  )r‚  Nr›  rœ  s   &r&   Ú4test_write_to_dataset_with_partitions_and_index_namer¦    s   € ä*ÜˆG‹ ÷/r(   c                 ó.   € \        \        V 4      4       R # r*   )r™  r   rœ  s   &r&   Ú#test_write_to_dataset_no_partitionsr¨    s   € ä(¬¨W«Ö6r(   c                 óN   € \        V R ,          4       \        V R,          4       R# )Útest1Útest2N)rŽ  r™  rœ  s   &r&   Útest_write_to_dataset_pathlibr¬    s   € ä*¨7°WÕ+<Ô=Ü(¨°7Õ):Ö;r(   c                 ó`  € Vw  r#\         P                  ! \        R R7      ;_uu_ 4        \        V R,          VR7       RRR4       \         P                  ! \        R R7      ;_uu_ 4        \	        V R,          VR7       RRR4       R#   + '       g   i     LS; i  + '       g   i     R# ; i)z"path-like objects are only allowedrž   rª  r   Nr«  )r—   ru   r˜   rŽ  r™  )r"   r´   rµ   r>  s   &&  r&   Ú&test_write_to_dataset_pathlib_nonlocalr®  #  s{   € ð �E€Bä	�Š”yÐ(L×	MÖ	MÜ.Ø�gÕ¨"õ	.÷ 
Nô 
�Š”yÐ(L×	MÖ	MÜ,Ø�gÕ¨"õ	.÷ 
NÑ	M÷	 
N×	Mú÷ 
N×	MÐ	Mús   ©B	Á*BÂ	B	ÂB-	Úwin32z,test fails because of unsupported characters)rv   c                 ó&   € V w  r\        W!R 7       R# ©r   N)rŽ  r½   s   &  r&   Ú*test_write_to_dataset_with_partitions_s3fsr²  2  s   € ð �H€Bä*Ø÷r(   c                 ó&   € V w  r\        W!R 7       R# r±  )r™  r½   s   &  r&   Ú(test_write_to_dataset_no_partitions_s3fsr´  >  s   € ð �H€Bä(Ø÷r(   c                 ó,  € \         P                  ! R . RO/4      p\        P                  P	                  V4      p\        V 4      p\        P                  ! W#\        4       R7       \        P                  ! V4      pVP                  V4      '       g   Q hR# )rø   r   Nr   )rL   rM   r   rØ   rÙ   r   r   rb  r   r   r    )r"   r^   r   r$   r%   s   &    r&   Ú test_write_to_dataset_filesystemr¶  G  sh   € ä	�Š�sšIÐ&Ó	'€BÜ�H‰H× Ñ  Ó$€EÜˆw‹<€Dä×Ò˜´Ó0AÕBÜ�]Š]˜4Ó €FØ�=‰=˜×ÒÐÒr(   c                 ó>  € V R ,          p\        4       p\        P                  ! R\        P                  ! V4      R\        P
                  P                  V4      /RR.R7      p\        P                  P                  V4      p^p\        P                  ! W%P                  4      ;_uu_ 4       p\        V4       F  pVP                  V4       K  	  RRR4       \        P                  ! V4      p	V	P                   P"                  V8X  g   Q hV R,          p
VP%                  \'        V
4      4      ;_uu_ 4       p\        P(                  ! VP                  V4       RRR4       \        P*                  ! WR7      pV#   + '       g   i     L±; i  + '       g   i     L<; i)r   re   r/   r0   NÚ	_metadatar   )r   rL   rM   rN   rS   rÃ   rÄ   r   rØ   rÙ   r   ÚParquetWriterr  r‹   r   ÚParquetFiler  Únum_row_groupsrÚ   r   r€  r2   )r"   rq   r$   r,   r^   r   Ú
num_groupsÚwriterr©   Úreaderr‡  ré   r6   s   &&           r&   Ú_make_dataset_for_picklingr¿  R  s5  € Ø�^Õ#€DÜÓ€Eä	�ŠØ”—’˜1“Ø”"—)‘)—/‘/ !Ó$ðð ˜Ð"ô
$€Bô �H‰H× Ñ  Ó$€Eà€JÜ	×	Ò	˜$§¡×	-Ô	-°Ü�zÖ"ˆAØ×Ñ˜uÖ%ñ #÷ 
.ô �^Š^˜DÓ!€FØ�?‰?×)Ñ)¨ZÔ7Ð7Ð7à˜kÕ)€MØ	×	!Ñ	!¤# mÓ"4×	5Ô	5¸Ü
×Ò˜%Ÿ,™,¨Ô*÷ 
6ô ×ÒØô#€Gð €N÷ 
.×	-ú÷ 
6×	5ús   Â,$E9Ä6"FÅ9F		ÆF	c                 óJ   a€ V3R  lp\        V 4      pV! V4      '       g   Q hR# )c                 óJ   <€ V SP                  SP                  V 4      4      8H  # r*   )ÚloadsÚdumps)ÚobjÚpickle_modules   &€r&   Úis_pickleableÚ*test_pickle_dataset.<locals>.is_pickleablep  s$   ø€ Ø�m×)Ñ)¨-×*=Ñ*=¸cÓ*BÓCÑCÐCr(   N)r¿  )r"   rÅ  rÆ  r6   s   &f  r&   Útest_pickle_datasetrÈ  n  s&   ø€ õDô )¨Ó1€GÙ˜×!Ò!Ð!Ò!r(   c           	      ód  € V R ,          p\         P                  ! R. ROR. ROR. R	O/4      p\        P                  P	                  V4      p\
        P                  ! V\        V4      RR.R7       \
        P                  ! V4      P                  4       p\
        P                  ! W1R,          4       R# )
z
ARROW-3208ÚoneÚtwoÚthree)Ú	root_pathr]  zoutput.parquetN)rw  r   g      @éd   éè  r   g333333=@)rw  r   r   rÎ  rÏ  r   é   )r   r   r   r   r   r   r   )rL   rM   r   rØ   rÙ   r   rb  r   r2   r3   r   )r"   r$   r^   r   s   &   r&   Útest_partitioned_datasetrÑ  w  s‘   € ð �\Õ!€DÜ	�ŠØÒ0ØÒ,ØÒ&ðó 
€Bô
 �H‰H× Ñ  Ó$€EÜ×Ò˜¬¨T«Ø(-¨u ~õ7ä×Ò˜dÓ#×(Ñ(Ó*€EÜ‡N‚N�5Ð!1Õ1Ö2r(   c                 ó`  € V R ,          p\         P                  ! \        ^4       Uu. uF  p\        P                  ! ^
4      NK  	  up^
,          .R.R7      p\         P                  ! \        ^4       Uu. uF  p\        P                  ! ^
4      NK  	  up^
,          .R.R7      p\
        P                  ! V\        V4      R7       \
        P                  ! V\        V4      R7       \
        P                  ! VR.R7      P                  4       pV^ ,          P                  ^ 4      P                  4       V^ ,          P                  ^ 4      P                  4       .pV^ ,          P                  ^8X  g   Q hV^ ,          P                  ^ 4      V^ ,          P                  ^4      r‡VP                  V^ ,          4      '       d#   VP                  V^,          4      '       g   Q hR# VP                  V^,          4      '       g   Q hVP                  V^ ,          4      '       g   Q hR# u upi u upi )zARROW-3325-datasetÚf0r[  )rÍ  )Úread_dictionaryN)r   r   r‹   r	   Úrandsr   rb  r   r2   r3   Úchunkra  Ú
num_chunksr    )	r"   r$   r©   Út1Út2r%   Ú	ex_chunksÚc0Úc1s	   &        r&   Útest_dataset_read_dictionaryrÝ  ˆ  sš  € ØÐ)Õ)€DÜ	�Š¬E°!¬HÓ5©H q”D—J’J˜r–N©HÑ5¸Õ:Ð;ÀDÀ6Ô	J€BÜ	�Š¬E°!¬HÓ5©H q”D—J’J˜r–N©HÑ5¸Õ:Ð;ÀDÀ6Ô	J€BÜ×Ò˜¤c¨$£iÕ0Ü×Ò˜¤c¨$£iÕ0ä×ÒØ˜t˜fô&ß&*¡d£fð ð �A•—‘˜Q“×1Ñ1Ó3Ø�A•—‘˜Q“×1Ñ1Ó3ð5€Ið �!�9×Ñ 1Ô$Ð$Ð$Ø�A�Y�_‰_˜QÓ ¨¥§¡°Ó!3ˆØ	‡y�y�˜1•×ÒØ�y‰y˜ 1�×&Ò&Ð&Ò&à�y‰y˜ 1�×&Ò&Ð&Ð&Ø�y‰y˜ 1�×&Ò&Ð&Ò&ùò% 6ùÚ5s   §H&Á5H+c                 ó   € \         P                  ! R \         P                  ! . RO\         P                  ! 4       4      /4      p\        P
                  ! WR,          4       \        P
                  ! WR,          4       \         P                  ! R.4      p\        P                  ! V R,          VR7      p\         P                  ! R . RO/VR7      pVP                  V4      '       g   Q h\        P                  ! WR7      p\         P                  ! R . RO/VR7      pVP                  V4      '       g   Q h\        P                  ! WR7      p\         P                  ! R . RO/VR7      pVP                  4       P                  V4      '       g   Q hR# )r   zdata1.parquetzdata2.parquetr¡  Nr   )r   r  )r   r   r   r   r   r   )r   r   rO   r¢  r   r   r  r   r    r2   r3   )r"   r   r  r%   r€   s   &    r&   Útest_read_table_schemarß  Ÿ  s  € ä�HŠH�cœ2Ÿ8š8¢I¬r¯xªx«zÓ:Ð;Ó<€EÜ‡N‚N�5 OÕ3Ô4Ü‡N‚N�5 OÕ3Ô4ä�YŠY˜Ð'Ó(€Fô �]Š]˜7 _Õ4¸VÔD€FÜ�xŠx˜šiÐ(°Ô8€HØ�=‰=˜×"Ò"Ð"Ð"ô �]Š]˜7Ô2€FÜ�xŠx˜Ò0Ð1¸&ÔA€HØ�=‰=˜×"Ò"Ð"Ð"ä×Ò˜wÔ6€FÜ�xŠx˜Ò0Ð1¸&ÔA€HØ�;‰;‹=×Ñ ×)Ò)Ð)Ò)r(   c           
      óÞ  € \         P                  ! R \         P                  ! . RO\         P                  ! 4       4      R\         P                  ! . RO\         P                  ! 4       4      /4      p\
        P                  ! WR,          4       \
        P                  ! V R,          R R .R7      p\         P                  ! RR.4      pVP                  R R .8X  g   Q hVP                  V8X  g   Q hR# )r   r9   r   r0   Nr   )r   r¢  )
r   r   rO   r¢  r!  r   r   r   r  r4   )r"   r   r%   Úexpected_schemas   &   r&   Ú*test_read_table_duplicate_column_selectionrâ  ¶  s§   € ä�HŠH�cœ2Ÿ8š8¢I¬r¯xªx«zÓ:Øœ2Ÿ8š8¢I¬r¯xªx«zÓ:ð<ó =€Eä‡N‚N�5 NÕ2Ô3ä�]Š]˜7 ^Õ3¸cÀ3¸ZÔH€FÜ—i’i °Ð @ÓA€Oà×Ñ 3¨ *Ô,Ð,Ð,Ø�=‰=˜OÔ+Ð+Ò+r(   c                 ó:  € ^ RI Hp V R,          pVR,          R,          R,          P                  RR7       \        P                  ! R. RO/4      p\
        P                  ! V\        VR,          R,          R,          R	,          4      4       VP                  . ROR
7      p\
        P                  ! \        V4      VR7      pVP                  . RO8X  g   Q h\
        P                  ! \        V4      VR7      P                  4       pVP                  . RO8X  g   Q hR# )r   NÚtest_partitioningÚ2012Ú10Ú01TrT  r   r   )Úfield_names)Úpartitioningr   )ÚyearÚmonthÚday)r   rê  rë  rì  )Úpyarrow.datasetr6   r   r   r   r   r   r   ré  r   r4   r2   r3   )r"   ÚdsrÍ  r   rc  r%   s   &     r&   Útest_dataset_partitioningrï  Ã  sç   € Ý ð Ð-Õ-€IØ�Õ˜$Õ Õ%×,Ñ,°TÐ,Ô:ä�HŠH�cš9Ð%Ó&€EÜ‡N‚NØŒs�9˜vÕ%¨Õ,¨tÕ3°nÕDÓEôGð �?‰?Ò'?ˆ?Ó@€DÜ�]Š]ÜˆI‹ Tô+€Fà×ÑÒ"?Ô?Ð?Ð?ä×ÒÜˆI‹ Tô+ß+/©4«6ð à×ÑÒ"?Ô?Ð?Ò?r(   c                 ó0  € \         P                  ! R . RO/4      p\        P                  ! WR,          4       \	        \        V 4      \        4       4      p\        P                  ! RVR7      pVP                  4       pVP                  V4      '       g   Q hR# )r   r   r?  r   Nr   )
r   r   r   r   r   r   r   r2   r3   r    )r"   r   r   r6   r%   s   &    r&   Ú#test_parquet_dataset_new_filesystemrñ  Û  sk   € ä�HŠH�cš9Ð%Ó&€EÜ‡N‚N�5 NÕ2Ô3Ü"¤3 w£<´Ó1BÓC€JÜ×Ò °
Ô;€GØ�\‰\‹^€FØ�=‰=˜×ÒÐÒr(   c                 ó€  € \         P                  ! R 4      pVP                  R4      p\        P                  ! R. R	O/4      p\
        P                  ! W0R,          4       \        V 4      P                  RR4      p\
        P                  ! WBR7      pVR,           pVP                  ^ ,          P                  V8X  g   Q hR# )
ÚfsspecÚfiler   r   Ú\rÐ   r   z/data.parquetNr   )r—   Úimportorskipr   r   r   r   r   r   Úreplacer2   Ú	fragmentsr$   )r"   ró  r   r   r$   r6   r€   s   &      r&   Ú6test_parquet_dataset_partitions_piece_path_with_fsspecrù  å  sž   € ô × Ò  Ó*€FØ×"Ñ" 6Ó*€JÜ�HŠH�cš9Ð%Ó&€EÜ‡N‚N�5 NÕ2Ô3ô ˆw‹<×Ñ  cÓ*€DÜ×ÒØô%€Gð �oÕ%€HØ×Ñ˜QÕ×$Ñ$¨Ô0Ð0Ò0r(   c                 óL  a€ \         P                  ! R . R
O/4      pV R,          p. oV3R lpRp\        P                  ! WR .VVR7       VR,          R,          VR,          R,          VR,          R,          0p\	        \        \        P                  S4      4      pWe8X  g   Q hR	# )r   ré  c                 ó>   <€ SP                  V P                  4       R # r*   )rò   r$   )Úwritten_fileÚpaths_writtens   &€r&   Úfile_visitorÚDtest_parquet_write_to_dataset_exposed_keywords.<locals>.file_visitorü  s   ø€ Ø×Ñ˜\×.Ñ.Ö/r(   zpart-{i}.parquet)ré  rþ  Úbasename_templateÚ1zpart-0.parquetÚ2Ú3Nr   )r   r   r   rb  rš   rn   ÚpathlibÚPath)r"   r   r$   rþ  r   Úexpected_pathsÚpaths_written_setrý  s   &      @r&   Ú.test_parquet_write_to_dataset_exposed_keywordsr  ö  s    ø€ Ü�HŠH�cš9Ð%Ó&€EØ�^Õ#€Dà€Mõ0ð +Ðä×Ò˜°3°%Ø%1Ø*;õ=ð
 	ˆs�
Ð%Õ%Øˆs�
Ð%Õ%Øˆs�
Ð%Õ%ð€Nô
 œC¤§¡¨mÓ<Ó=ÐØÔ.Ð.Ò.r(   Úwrite_dataset_kwargc                ó8  € ^ RI Hp \        P                  ! R. RO/4      pV R,          p\        P
                  ! VP                  4      pVw  rgV\        P
                  ! \        P                  4      P                  9  g   Q hWeP                  9   g   Q h\        P                  P                  VRRR7      ;_uu_ 4       p\        P                  ! W43/ Wg/B  VP                  ^ ,          w  ršpW¶,          V8X  g   Q h RRR4       R#   + '       g   i     R# ; i)zEVerify kwargs in pq.write_to_dataset are passed onto ds.write_datasetNr   zout.parquetÚwrite_datasetT)Úautospecr   )rí  r6   r   r   ÚinspectÚ	signaturer  r   rb  Ú
parametersÚmockÚpatchrR   Ú
mock_calls)r"   r	  rî  r   r$   r  ÚkeyÚargÚmock_write_datasetÚ_nameÚ_argsrª   s   &&          r&   Ú#test_write_to_dataset_kwargs_passedr    sâ   € õ !ä�HŠH�cš9Ð%Ó&€EØ�]Õ"€Dä×!Ò! "×"2Ñ"2Ó3€IØ"�H€Cð ”g×'Ò'¬×(;Ñ(;Ó<×GÑGÔGÐGÐGØ×&Ñ&Ô&Ð&Ð&ä	�‰×	Ñ	˜2˜¸Ð	×	>Ô	>Ø!Ü
×Ò˜EÑ6¨C¨:Ò6Ø1×<Ñ<¸QÕ?Ñˆ�fØ�{˜cÔ!Ð!Ñ!÷	 
?×	>×	>Ò	>ús   Â?>DÄD	c                 ó°  € \         P                  ! R \         P                  ! . RO. ROR7      R. R	O/4      p\        P                  ! V4      pV R,          p\
        P                  ! W R,          R .R7       VP                  4        Uu. uF&  qDP                  4       '       g   K  VP                  NK(  	  pp\        V4      ^8X  g   Q hRV9  g   Q hR# u upi )
Úcatrz   rŒ  r6   r\  zcat=cN)r   r9   r   rG   r   )rL   rM   r~   r   r   r   rb  ÚiterdirÚis_dirrâ   r§   )r"   r^   r   r$   ré   Úsubdirss   &     r&   Ú'test_write_to_dataset_category_observedr  '  s¬   € ô
 
�ŠØŒr�~Š~šoº/ÔJØŠyðó 
€Bô �HŠH�R‹L€EØ�YÕ€DÜ×ÒØ˜Õ"°E°7õð  $Ÿ|™|œ~Ó<™~˜!·±·Œvˆq�vŒv™~€GÐ<Üˆw‹<˜1ÔÐÐØ˜'Ô!Ð!Ò!ùò =s   ÂCÂ$C)rd   rj   r   )r   r#  )r   r   )NNNr*   )rÎ  ))rÕ   T)rÕ   F)nr|   r  r  r  ÚsysÚnumpyrN   ÚImportErrorr—   Úunittest.mockr  Úpyarrowr   Úpyarrow.computeÚcomputeÚpcrÖ   r   r   r   r   r   r   Úpyarrow.testsr	   Úpyarrow.utilr
   r{  r|  r   Úpyarrow.tests.parquet.commonr   r   r   r   rx  rL   ry  rz  rÈ   Úmarkr6   Ú
pytestmarkr'   r-   r7   rb   rt   Úxfailr˜   ÚAssertionErrorr�   r�   r‘   r•   rœ   r¢   Úparametrizer  Úcastr  r«   r°   Ús3r¶   r¸   r»   r¾   r+   rT   r×   rþ   r  r&  r-  r1  r5  r8  r<  rE  rL  rQ  rV  re  rh  rŽ  r™  r�  r¤  r¦  r¨  r¬  r®  ÚskipifÚplatformr²  r´  r¶  r¿  rÈ  rÑ  rÝ  rß  râ  rï  rñ  rù  r  r  r  © r(   r&   Ú<module>r4     s4  ðó$ Û Û 	Û Û 
ðÛó Ý ã Ý ÷H÷ Hå Ý ðÝ ÷Aó AðÛÝð �k‰k×!Ñ! 6§;¡;×#6Ñ#6Ð7€
ò ð& ‡�×Ññ3ó ð3ð
 ‡�×Ññ	-ó ð	-ð ‡�×ÑñC,ó ðC,ðL ‡�×Ññ!ó ð!ðB ‡�×Ñð �~Ð&ØBð	 ó ð ‡�×Ññ'1ó óð'1ðT ‡�×Ññ=ó ð=ð  ‡�×Ññ!ó ð!ðB ‡�×Ññ+4ó ð+4ð\ ‡�×Ññ%,ó ð%,ðP ‡�×ÑñNó ðNð. ‡�×ÑØ‡�×Ñ˜Ø/Ð0Ø0Ð1Ð2ØŸ(š( :Ó.°Ñ2ØŸ(š( 8¨SÓ1°AÑ5ØŸ(š( 8¨SÓ1×6Ñ6°r·x²x³zÓBÀQÑFð	HóIð ‡�×Ñ˜Ð(EÓFñó GóIó ðð4 ‡�×ÑñAó ðAð. ‡�‡�ñ ó ð ð ‡�‡�ñ ó ð ð ‡�×Ññ ó ð ð ‡�×ÑØ‡�‡�ñ-ó ó ð-ò
$2òN+"ò\/ð  ‡�×ÑñCó ðCð* ‡�×Ññ5$ó ð5$ðN ‡�×Ññ"Nó ð"NðJ ‡�×Ññ(ó ð(ð ‡�×Ññ,ó ð,ð$ ‡�×Ññ$ó ð$ô 	ò,ð
 ‡�×ÑØ‡�×Ñ˜¨¨S zÓ2ñ*ó 3ó ð*ð ‡�×Ññ*ó ð*ð$ ‡�×Ññ*ó ð*ð$ ‡�×ÑØ‡�×Ñ˜¨¨S zÓ2ñ*ó 3ó ð*ò"ò*#ô:/ôz+/ð\ ‡�×Ññ9ó ð9ð ‡�×Ññ%ó ð%ð ‡�×Ññ/ó ð/ð
 ‡�×Ññ7ó ð7ð ‡�×Ññ<ó ð<ð
 ‡�×ÑØ‡�‡�ñ
.ó ó ð
.ð ‡�×ÑØ‡�‡�à‡�×Ñ�C—L‘L GÑ+ØIð ó KñóKó ó ð
ð ‡�×ÑØ‡�‡�ñó ó ðð ‡�×Ññ ó ð ôð8 ‡�×Ññ"ó ð"ð ‡�×Ññ3ó ð3ò 'ò.*ò.
,ò@ò0 ò1ò"/ð0 ‡�×ÑÐ.ð 1ó ñ"ó	ð"ð* ‡�×Ññ"ó ò"øð]( ô Ø	ƒBðûð  ô Ø	ƒBðûð ô Ø€N€B‹ðús5   –Z2 Á[ Á
[ Ú2	Z?Ú>Z?Û	[Û[Û[!Û [!