Ë
    Èš§jt ã                   ó  — d dl mZ d dlmZ d dlZd dlZ	 d dlZd dl	Z	d dl
Zd dlmZ d dlmZ d dlmZ d„ Zd„ Zd„ Zd	„ Ze	j.                  j                  d
„ «       Zd„ Zd„ Ze	j.                  j                  d„ «       Zd„ Zd„ Zd„ Ze	j.                  j?                  dg d¢ ej@                  «       fg d¢ ejB                  «       fg d¢ ejD                  «       fg d¢ ejF                  «       fg  ejH                   ejJ                  «       «      fddgdgg ejH                   ejB                  «       «      fdgdddgg ejH                   ejF                  «       «      fg d¢ ejL                   ejN                  d ejB                  «       «       ejN                  d ejF                  «       «      g«      fg«      d„ «       Z(e	j.                  jR                  d„ «       Z*e	j.                  jR                  d„ «       Z+e	j.                  jR                  d „ «       Z,e	j.                  jR                  d!„ «       Z-e	j.                  jR                  d"„ «       Z.e	j.                  jR                  e	j.                  j^                  d#„ «       «       Z0d$„ Z1d%„ Z2d&„ Z3d'„ Z4d(„ Z5 G d)„ d*«      Z6 G d+„ d,«      Z7e	j.                  j?                  d-e6e7g«      d.„ «       Z8d/„ Z9e	j.                  j?                  d-e6e7g«      d0„ «       Z:d1„ Z;d2„ Z<d3„ Z=d4„ Z>d5„ Z?d6„ Z@d7„ ZAd8„ ZBd9„ ZCd:„ ZDd;„ ZEd<„ ZFd=„ ZGd>„ ZHd?„ ZId@„ ZJdA„ ZKdB„ ZLdC„ ZMdD„ ZNdE„ ZOdF„ ZPdG„ ZQdH„ ZRe	j.                  j                  e	j.                  j?                  dIg dJ¢«      dK„ «       «       ZSe	j.                  j                  e	j.                  j?                  dLej¨                  ejª                  g«      dM„ «       «       ZVe	j.                  j                  dN„ «       ZWe	j.                  j                  dO„ «       ZXe	j.                  j                  dP„ «       ZYe	j.                  j                  dQ„ «       ZZdR„ Z[e	j.                  j                  e	j.                  j?                  dIg dJ¢«      dS„ «       «       Z\dT„ Z]dU„ Z^dV„ Z_e	j.                  jR                  dW„ «       Z`e	j.                  j                  dX„ «       ZadY„ ZbdZ„ Zcd[„ Zde	j.                  jR                  d\„ «       Zee	j.                  j?                  dLej¨                  ejª                  g«      d]„ «       Zfd^„ Zgd_„ Zhd`„ Zida„ Zjdb„ Zkdc„ Zldd„ Zmde„ Zne	j.                  j?                  dLej¨                  ejª                  g«      df„ «       Zoe	j.                  j?                  dLej¨                  ejª                  g«      dg„ «       Zpe	j.                  j?                  dLej¨                  ejª                  g«      dh„ «       Zqdi„ Zre	j.                  j?                  dLej¨                  ejª                  g«      dj„ «       Zse	j.                  j?                  dLej¨                  ejª                  g«      dk„ «       Ztdl„ Zudm„ Zve	j.                  j?                  dLej¨                  ejª                  g«      dn„ «       Zwe	j.                  j?                  dLej¨                  ejª                  g«      do„ «       Zxdp„ Zydq„ Zzdr„ Z{ds„ Z|dt„ Z}du„ Z~dv„ Zdw„ Z€e	j.                  jR                  dx„ «       Z�dy„ Z‚dz„ Zƒd{„ Z„d|„ Z…d}„ Z†d~„ Z‡d„ Zˆe	j.                  j?                  dLej¨                  ejª                  g«      d€„ «       Z‰e	j.                  j?                  dLej¨                  ejª                  g«      d�„ «       ZŠe	j.                  j?                  dLej¨                  ejª                  g«      d‚„ «       Z‹e	j.                  j                  dƒ„ «       ZŒe	j.                  j?                  d„g d…¢g d†¢fe�fg d…¢g d†¢fe�j                  fd‡gdˆd‰ggdŠgd‹dggfe�j                  fg«      dŒ„ «       Z�e	j.                  j?                  dLej¨                  ejª                  g«      d�„ «       Z‘e	j.                  j?                  d„g d…¢g d†¢fe�j                  fd‡gdˆd‰ggdŠgd‹dggfe�j                  fg«      dŽ„ «       Z’e	j.                  j?                  d„g d…¢g d†¢fe�fg d…¢g d†¢fe�j                  fd‡gdˆd‰ggdŠgd‹dggfe�j                  fg«      d�„ «       Z“e	j.                  j?                  dLej¨                  ejª                  g«      d�„ «       Z”e	j.                  jR                  d‘„ «       Z•e	j.                  jR                  d’„ «       Z–d“„ Z—e	j.                  jR                  d”„ «       Z˜d•„ Z™d–„ Zšd—„ Z›d˜„ Zœd™„ Z�dš„ Zžd›„ ZŸdœ„ Z d�„ Z¡dž„ Z¢e	j.                  �jF                  dŸ„ «       Z¤e	j.                  �jF                  d „ «       Z¥e	j.                  �jF                  d¡„ «       Z¦e	j.                  �jF                  d¢„ «       Z§d£„ Z¨e	j.                  �jF                  d¤„ «       Z©e	j.                  �jF                  d¥„ «       Zªe	j.                  �jF                  d¦„ «       Z«e	j.                  �jF                  e	j.                  j?                  dLej¨                  ejª                  g«      d§„ «       «       Z¬e	j.                  �jF                  d¨„ «       Z­e	j.                  �jF                  d©„ «       Z®e	j.                  �j^                  dª„ «       Z°e	j.                  �j^                  d«„ «       Z±e	j.                  �j^                  d¬„ «       Z²e	j.                  �j^                  d­„ «       Z³e	j.                  �j^                  d®„ «       Z´e	j.                  �j^                  d¯„ «       Zµe	j.                  �j^                  d°„ «       Z¶e	j.                  j?                  dLej¨                  ejª                  g«      d±„ «       Z·e	j.                  j?                  dLej¨                  ejª                  g«      d²„ «       Z¸d³„ Z¹e	j.                  j                  e	j.                  j?                  d´e�jt                  e�jv                  g«      dµ„ «       «       Z¼e	j.                  j                  e	j.                  j?                  d´e�jt                  e�jv                  g«      d¶„ «       «       Z½e	j.                  �jF                  d·„ «       Z¾e	�j~                  d¸„ «       ZÀe	�j~                  d¹„ «       ZÁe	�j~                  dº„ «       ZÂe	�j~                  d»„ «       ZÃe	�j~                  d¼„ «       ZÄe	�j~                  d½„ «       ZÅe	�j~                  d¾„ «       ZÆe	�j~                  d¿„ «       ZÇe	�j~                  dÀ„ «       ZÈe	�j~                  dÁ„ «       ZÉe	�j~                  dÂ„ «       ZÊe	�j~                  dÃ„ «       ZËdÄ„ ZÌdÅ„ ZÍdÆ„ ZÎdÇ„ ZÏdÈ„ ZÐy# e$ r dZY �Œðw xY w)Éé    )ÚOrderedDict)ÚIterableN)Úfrom_dataframe)ÚVersionc                  ó~  — t        j                  g t        j                  «       ¬«      } | j                  t        j                  «       k(  sJ ‚| j	                  «       g k(  sJ ‚| j                  «        t        j                  g d¬«      }|j                  t        j                  «       k(  sJ ‚t        j                  t        «      5  t        j                  g «       d d d «       t        j                  g d¢g d¢g d¢g«      } t        | j                  t        «      sJ ‚t        d„ | j                  D «       «      sJ ‚t        d„ | j                  «       D «       «      sJ ‚t        | j                  «      dk(  sJ ‚| j!                  «       t#        d	„ | j                  «       D «       «      k(  sJ ‚t%        j&                  | «      t(        j+                  | «      | j!                  «       z   k\  sJ ‚| j,                  d
k(  sJ ‚| j                  «        t/        j0                  | «      } |«       €J ‚~  |«       �J ‚y # 1 sw Y   �ŒYxY w)N©ÚtypeÚbinary©é   é   é   ©é   é   é   ©é   é   é	   c              3   ód   K  — | ](  }t        |t        j                  j                  «      –— Œ* y ­w©N©Ú
isinstanceÚpaÚlibÚ
Int64Array©Ú.0Úcs     ú[C:\Users\Luka\AppData\Local\Temp\pip-target-o84fipzb\lib\python\pyarrow/tests/test_table.pyÚ	<genexpr>z,test_chunked_array_basics.<locals>.<genexpr>4   s"   è ø€ ÐE¹°AŒz˜!œRŸV™V×.Ñ.×/¹ùó   ‚.0c              3   ód   K  — | ](  }t        |t        j                  j                  «      –— Œ* y ­wr   r   r   s     r!   r"   z,test_chunked_array_basics.<locals>.<genexpr>5   s$   è ø€ ÐKÑ9J°AŒz˜!œRŸV™V×.Ñ.×/Ñ9Jùr#   r   c              3   ó<   K  — | ]  }|j                  «       –— Œ y ­wr   )Úget_total_buffer_sizer   s     r!   r"   z,test_chunked_array_basics.<locals>.<genexpr>7   s"   è ø€ ð /KÙ8I°1ð 01×/FÑ/F×/HÙ8Iùs   ‚éH   )r   Úchunked_arrayÚstringr	   Ú	to_pylistÚvalidater
   ÚpytestÚraisesÚ
ValueErrorr   ÚchunksÚlistÚallÚ
iterchunksÚlenr&   ÚsumÚsysÚ	getsizeofÚobjectÚ
__sizeof__ÚnbytesÚweakrefÚref)ÚdataÚdata2Úwrs      r!   Útest_chunked_array_basicsr?   "   sà  € Ü×Ñ˜B¤R§Y¡Y£[Ô1€DØ�9‰9œŸ	™	›Ò#Ð#Ð#Ø�>‰>Ó˜rÒ!Ð!Ð!Ø‡M�M„Oä×Ñ˜R hÔ/€EØ�:‰:œŸ™›Ò$Ð$Ð$ä	�‰”zÕ	"Ü
×Ñ˜Ô÷ 
#ô ×ÑÚÚÚðó €Dô
 �d—k‘k¤4Ô(Ð(Ð(ÜÑE¸¿ºÓEÔEÐEÐEÜÑK¸¿¹Ô9JÓKÔKÐKÐKÜˆt�{‰{Ó˜qÒ Ð Ð Ø×%Ñ%Ó'¬3ñ /KØ8<¿¹Ô8Ió/Kó ,Kò Kð Kð Kä�=‰=˜Ó¤&×"3Ñ"3Øó#Ø×*Ñ*Ó,ñ#-ò -ð -ð -à�;‰;˜)Ò#Ð#Ð#Ø‡M�M„Oä	�‰�TÓ	€BÙ‹4ÐÐÐØÙ‹4ˆ<Ð‰<÷- 
#Ñ	"ús   ÃH2È2H<c                  ó¦  — t        j                  g d¢g d¢g d¢g«      } | j                  t        j                  «       k(  sJ ‚t	        | «      dk(  sJ ‚t	        | j
                  «      dk(  sJ ‚t        j                  g d¢g d¢g d¢g«      } | j                  t        j                  «       k(  sJ ‚t	        | «      dk(  sJ ‚t	        | j
                  «      dk(  sJ ‚t        j                  g d¢g d¢g d¢gt        j                  «       ¬«      } | j                  t        j                  «       k(  sJ ‚t	        | «      dk(  sJ ‚t	        | j
                  «      dk(  sJ ‚t        j                  g d¢g g«      } | j                  t        j                  «       k(  sJ ‚t	        | «      dk(  sJ ‚t	        | j
                  «      dk(  sJ ‚d	}t        j                  t        |¬
«      5  t        j                  g «      sJ ‚	 d d d «       t        j                  g t        j                  «       ¬«      j                  t        j                  «       k(  sJ ‚t        j                  g g«      j                  t        j                  «       k(  sJ ‚t        j                  g gt        j                  «       ¬«      j                  t        j                  «       k(  sJ ‚y # 1 sw Y   ŒÖxY w)Nr   r   r   r   r   ©ç      @ç      @g      @r   r   z@cannot construct ChunkedArray from empty vector and omitted type©Úmatch)r   r(   r	   Úint64r3   r/   Úint8r,   r-   r.   r)   Únull)ÚarrÚmsgs     r!   Útest_chunked_array_constructionrK   D   s<  € Ü
×
Ñ
ÚÚÚðó €Cð
 �8‰8”r—x‘x“zÒ!Ð!Ð!Üˆs‹8�qŠ=Ðˆ=Üˆs�z‰z‹?˜aÒÐÐä
×
Ñ
ÚÚÚðó €Cð
 �8‰8”r—x‘x“zÒ!Ð!Ð!Üˆs‹8�qŠ=Ðˆ=Üˆs�z‰z‹?˜aÒÐÐä
×
Ñ
ÚÚÚðô �G‰G‹Iô	€Cð
 �8‰8”r—w‘w“yÒ Ð Ð Üˆs‹8�qŠ=Ðˆ=Üˆs�z‰z‹?˜aÒÐÐä
×
Ñ
ÚØ
ðó €Cð �8‰8”r—x‘x“zÒ!Ð!Ð!Üˆs‹8�qŠ=Ðˆ=Üˆs�z‰z‹?˜aÒÐÐà
L€CÜ	�‰”z¨Ö	-Ü×Ñ Ô#Ð#Ñ#÷ 
.ô ×Ñ˜B¤R§Y¡Y£[Ô1×6Ñ6¼"¿)¹)»+ÒEÐEÐEÜ×Ñ˜R˜DÓ!×&Ñ&¬"¯'©'«)Ò3Ð3Ð3Ü×Ñ˜R˜D¤r§y¡y£{Ô3×8Ñ8¼B¿I¹I»KÒGÐGÑG÷ 
.Ð	-ús   ÇKËKc                  óÔ   — t        j                  ddg«      } t        j                  | | g«      }|j                  «       }t        j                  g d¢«      }|j	                  |«      sJ ‚y )Nr   r   ©r   r   r   r   )r   Úarrayr(   Úcombine_chunksÚequals)rI   Úchunked_arrÚresÚexpecteds       r!   Útest_combine_chunksrT   q   sV   € ä
�(‰(�A�q�6Ó
€CÜ×"Ñ" C¨ :Ó.€KØ
×
$Ñ
$Ó
&€CÜ�x‰xšÓ%€HØ�:‰:�hÔÐÑó    c                  óà  — t        j                  g t        j                  «       ¬«      j                  «       t        j                  g t        j                  «       ¬«      k(  sJ ‚t        j                  t        j                  g t        j                  «       ¬«      gt        j                  «       ¬«      j                  «       t        j                  g t        j                  «       ¬«      k(  sJ ‚y )Nr   )r   r(   Úbool_rO   rN   © rU   r!   Ú4test_chunked_array_can_combine_chunks_with_no_chunksrY   z   s    € ä×Ñ˜B¤R§X¡X£ZÔ0×?Ñ?ÓAÄRÇXÁXØ
”—‘“ôFò ð ð ô ×ÑÜ	�‰�"œ2Ÿ8™8›:Ô	&Ð'¬b¯h©h«jôç�nÓœ"Ÿ(™( 2¬B¯H©H«JÔ7ò8ð 8ñ 8rU   c                  ó  — t        j                  g d¢g d¢g g«      } t        j                  | «      }| j	                  «       }t        |t        j                  «      sJ ‚|j                  dk(  sJ ‚t        j                  ||«      sJ ‚y )Nr   r   )r   )	r   r(   ÚnpÚasarrayÚto_numpyr   ÚndarrayÚshapeÚarray_equal)r<   Úarr1Úarr2s      r!   Útest_chunked_array_to_numpyrc   „   su   € ä×ÑÚÚØ
ðó €Dô
 �:‰:�dÓ€DØ�=‰=‹?€Dä�dœBŸJ™JÔ'Ð'Ð'Ø�:‰:˜ÒÐÐÜ�>‰>˜$ Ô%Ð%Ñ%rU   c                  óÈ  — d} t        j                  t        | ¬«      5  t        j                  t        j
                  g d¢«      t        j
                  g d¢«      g«       d d d «       t        j                  t        | ¬«      5  t        j                  t        j
                  g d¢«      gt        j                  «       ¬«       d d d «       y # 1 sw Y   ŒmxY w# 1 sw Y   y xY w)Nzchunks must all be same typerD   r   ©ç      ð?ç       @ç      @r   )r,   r-   Ú	TypeErrorr   r(   rN   Úfloat64)rJ   s    r!   Ú!test_chunked_array_mismatch_typesrk   “   s‘   € Ø
(€CÜ	�‰”y¨Ö	,ä
×ÑÜ�H‰H’YÓÜ�H‰H’\Ó"ð
ô 	÷ 
-ô 
�‰”y¨Ö	,ä
×Ñœ"Ÿ(™(¢9Ó-Ð.´R·Z±Z³\ÕB÷ 
-Ð	,÷ 
-Ð	,ú÷ 
-Ð	,ús   žACÂA CÃCÃC!c                  óª   — t        j                  g d¢«      t        j                  g d¢«      g} t        j                  | «      } t        | «      dk(  sJ ‚y )Nr   r   z<[
  [
    1,
    2,
    3
  ],
  [
    4,
    5,
    6
  ]
])r   rN   r(   Ústr©r<   s    r!   Útest_chunked_array_strro   ¡   sN   € ä
�‰’ÓÜ
�‰’Óð€Dô ×Ñ˜DÓ!€DÜˆt‹9ð ò ð ñ rU   c                  ó  — t        j                  g d¢«      t        j                  g d¢«      g} t        j                  | «      } | d   j                  «       dk(  sJ ‚| d   j                  «       dk(  sJ ‚| d   j                  «       dk(  sJ ‚t	        j
                  t        «      5  | d    d d d «       t	        j
                  t        «      5  | d    d d d «       | t        j                  d«         j                  «       dk(  sJ ‚| dd	 }|j                  «       d
d	gk(  sJ ‚| d	d }|j                  «       dgk(  sJ ‚| dd }|j                  | j                  k(  sJ ‚|j                  «       g k(  sJ ‚y # 1 sw Y   ŒÈxY w# 1 sw Y   Œ­xY w)Nr   r   r   r   éÿÿÿÿr   iúÿÿÿiùÿÿÿr   r   r   éc   )r   rN   r(   Úas_pyr,   r-   Ú
IndexErrorr[   Úint32r*   r	   )r<   Ú
data_slices     r!   Útest_chunked_array_getitemrw   µ   sg  € ô 	�‰’ÓÜ
�‰’Óð€Dô ×Ñ˜DÓ!€DØ�‰7�=‰=‹?˜aÒÐÐØ�‰8�>‰>Ó˜qÒ Ð Ð Ø�‰8�>‰>Ó˜qÒ Ð Ð Ü	�‰”zÕ	"ØˆQŠ÷ 
#ä	�‰”zÕ	"ØˆRŠ÷ 
#ð ”—‘˜“Ñ×"Ñ"Ó$¨Ò)Ð)Ð)à�a˜�€JØ×ÑÓ! a¨ VÒ+Ð+Ð+à�a˜�€JØ×ÑÓ! a SÒ(Ð(Ð(à�b˜�€JØ�?‰?˜dŸi™iÒ'Ð'Ð'Ø×ÑÓ! RÒ'Ð'Ñ'÷ 
#Ð	"úç	"Ð	"ús   Â%E2ÃE>Å2E;Å>Fc                  óò  — t        j                  g d¢«      t        j                  g d¢«      g} t        j                  | «      } | j                  t	        | «      «      }|j
                  | j
                  k(  sJ ‚|j                  «       g k(  sJ ‚| j                  t	        | «      dz   «      }|j
                  | j
                  k(  sJ ‚|j                  «       g k(  sJ ‚t         j                  j                  | gdg¬«      }|j                  t	        |«      «      }t	        |«      dk(  sJ ‚t         j                  j                  | gdg¬«      }|j                  t	        |«      dz   «      }t	        |«      dk(  sJ ‚y )Nr   r   é
   Úa©Únamesr   )	r   rN   r(   Úslicer3   r	   r*   ÚTableÚfrom_arrays)r<   rv   ÚtableÚtable_slices       r!   Útest_chunked_array_slicer‚   Ñ   s=  € ä
�‰’ÓÜ
�‰’Óð€Dô ×Ñ˜DÓ!€Dà—‘œC ›IÓ&€JØ�?‰?˜dŸi™iÒ'Ð'Ð'Ø×ÑÓ! RÒ'Ð'Ð'à—‘œC ›I¨™NÓ+€JØ�?‰?˜dŸi™iÒ'Ð'Ð'Ø×ÑÓ! RÒ'Ð'Ð'ä�H‰H× Ñ  $ °¨uÐ Ó5€EØ—+‘+œc %›jÓ)€KÜˆ{Ó˜qÒ Ð Ð ä�H‰H× Ñ  $ °¨uÐ Ó5€EØ—+‘+œc %›j¨2™oÓ.€KÜˆ{Ó˜qÒ Ð Ñ rU   c                  óh  — t        j                  dg«      t        j                  g d¢«      t        j                  g d¢«      t        j                  g d¢«      g} t        j                  | «      }t        t	        d«      |«      D ]  \  }}||j                  «       k(  rŒJ ‚ t        |t        «      sJ ‚y )Nr   r   r   r   ry   )r   rN   r(   ÚzipÚrangers   r   r   )r<   rI   ÚiÚjs       r!   Útest_chunked_array_iterrˆ   é   s‰   € ä
�‰�!�‹Ü
�‰’ÓÜ
�‰’ÓÜ
�‰’Óð	€Dô ×
Ñ
˜4Ó
 €Cä”E˜"“I˜sÖ#‰ˆˆ1Ø�A—G‘G“I‹~Ðˆ~ð $ô �cœ8Ô$Ð$Ñ$rU   c                  ó°  — d„ } d„ } | t        j                  g t        j                  «       ¬«      t        j                  g t        j                  «       ¬«      «        |t        j                  g t        j                  «       ¬«      t        j                  g t        j                  «       ¬«      «       t        j                  ddgt        j                  «       ¬«      }t        j                  ddgt        j                  «       ¬«      }t        j                  ddgt        j                  «       ¬«      }t        j                  g d¢t        j                  «       ¬«      } | |g|g«        ||g|g«        | ||g||g«        | ||g|g«        |||g||g«       t        j                  g t        j                  «       ¬«      j                  d «      rJ ‚y )Nc                 óF  — t        | t        j                  «      r| }nt        j                  | «      }t        |t        j                  «      r|}nt        j                  |«      }|j	                  |«      sJ ‚|j	                  |«      sJ ‚||k(  sJ ‚|t        |«      k7  sJ ‚y r   )r   r   ÚChunkedArrayr(   rP   rm   ©ÚxarrsÚyarrsÚxÚys       r!   Úeqz%test_chunked_array_equals.<locals>.eqù   sƒ   € Ü�eœRŸ_™_Ô-Ø‰Aä× Ñ  Ó'ˆAÜ�eœRŸ_™_Ô-Ø‰Aä× Ñ  Ó'ˆAØ�x‰x˜Œ{Ðˆ{Ø�x‰x˜Œ{Ðˆ{Ø�AŠvˆˆvØ”C˜“FŠ{Ð‰{rU   c                 ó&  — t        | t        j                  «      r| }nt        j                  | «      }t        |t        j                  «      r|}nt        j                  |«      }|j	                  |«      rJ ‚|j	                  |«      rJ ‚||k7  sJ ‚y r   )r   r   r‹   r(   rP   rŒ   s       r!   Únez%test_chunked_array_equals.<locals>.ne  ss   € Ü�eœRŸ_™_Ô-Ø‰Aä× Ñ  Ó'ˆAÜ�eœRŸ_™_Ô-Ø‰Aä× Ñ  Ó'ˆAØ—8‘8˜A”;ÐˆØ—8‘8˜A”;ÐˆØ�AŠvˆ‰vrU   r   r   r   r   )r   r   r   r   )r   r(   ru   rF   rN   rP   )r‘   r“   rz   Úbr    Úds         r!   Útest_chunked_array_equalsr–   ø   sS  € òòñ „r×Ñ˜¤§¡£Ô,Ü	×Ñ˜¤§¡£Ô,ô.á„r×Ñ˜¤§¡£Ô,Ü	×Ñ˜¤§¡£Ô,ô.ô 	�‰�!�Q�œbŸh™h›jÔ)€AÜ
�‰�!�Q�œbŸh™h›jÔ)€AÜ
�‰�!�Q�œbŸh™h›jÔ)€AÜ
�‰’¤B§H¡H£JÔ/€Aáˆ€sˆQˆC„LÙˆ€sˆQˆC„LÙˆˆ1€v��1ˆvÔÙˆˆ1€v�ˆs„OÙˆˆ1€v��1ˆvÔô ×Ñ ¬¯©«Ô4×;Ñ;¸DÔAÐAÐAÐArU   )r<   Útyp)TFTT)r   r   r   r   )rf   ç      @N)rz   Nr”   r   r   r   rz   r”   r    ))r   rz   )r   r    Nc                 óB  — g }| r1|j                  t        j                  | d d |¬«      «       | dd  } | rŒ1t        j                  ||¬«      }|j	                  «        |j                  |j                  |«      «      }|j	                  «        |j                  |«      sJ ‚y )Nr   r   )Úappendr   rN   r(   r+   ÚloadsÚdumpsrP   )r<   r—   Úpickle_moduleÚarraysrN   Úresults         r!   Útest_chunked_array_pickler    (  sŽ   € ð €FÙ
Ø�‰”b—h‘h˜t B Q˜x¨cÔ2Ô3Ø�A�Bˆxˆò ô ×Ñ˜V¨#Ô.€EØ	‡N�NÔØ× Ñ  ×!4Ñ!4°UÓ!;Ó<€FØ
‡O�OÔØ�=‰=˜ÔÐÑrU   c                  ón  — dd l } t        j                  g d¢«      g}t        j                  |dg¬«      }|j	                  d«      }t        |t        j                  «      sJ ‚|j                  «       }t        || j                  «      sJ ‚|j                  dk(  sJ ‚|d   dk(  sJ ‚|j                  dk(  sJ ‚y )Nr   ©éöÿÿÿéûÿÿÿr   r   ry   rz   r{   )r   r£   )Úpandasr   rN   r€   Úcolumnr   r‹   Ú	to_pandasÚSeriesr_   Úname)Úpdr<   r€   ÚcolÚseriess        r!   Útest_chunked_array_to_pandasr­   B  s¥   € ãô 	�‰Ò$Ó%ð€Dô �H‰H�T # Ô'€EØ
�,‰,�q‹/€CÜ�cœ2Ÿ?™?Ô+Ð+Ð+Ø�]‰]‹_€FÜ�f˜bŸi™iÔ(Ð(Ð(Ø�<‰<˜4ÒÐÐØ�!‰9˜ÒÐÐØ�;‰;˜#ÒÐÑrU   c                  óÐ  — dd l } dd lm} t        j                  g d¢«      t        j                  | j                  g d¢«      «      t        j                  | j                  dd¬«      «      t        j                  | j                  ddd¬«      «      t        j                  g d¢t        j                  d	«      «      t        j                  g d¢t        j                  d	d«      «      fD ]|  }t        j                  d
|i«      }|j                  d
«      j                  «       }|j                  d
k(  sJ ‚| j                  |j                  «       d
¬«      }|j                  ||«       Œ~ y )Nr   r   ©rz   r”   rz   Ú2012r   )ÚperiodszEurope/Brussels)r±   ÚtzÚmsr©   )r©   )r¥   Úpandas.testingÚtestingr   rN   ÚCategoricalÚ
date_rangeÚ	timestampr€   r¦   r§   r©   r¨   Úassert_series_equal)rª   Útmr<   r€   rŸ   rS   s         r!   Ú*test_chunked_array_to_pandas_preserve_namer»   S  s  € ó Ýô �H‰H’YÓÜ�H‰H�R—^‘^¢OÓ4Ó5Ü�H‰H�R—]‘] 6°1�]Ó5Ó6Ü�H‰H�R—]‘] 6°1Ð9J�]ÓKÓLÜ�H‰H’Y¤§¡¨TÓ 2Ó3Ü�H‰H’Y¤§¡¨TÐ3DÓ EÓFóHˆô —‘˜& $˜Ó(ˆØ—‘˜fÓ%×/Ñ/Ó1ˆØ�{‰{˜fÒ$Ð$Ð$Ø—9‘9˜TŸ^™^Ó-°F�9Ó;ˆØ
×Ñ˜v xÕ0ñHrU   c                  ó”  — dd l } | j                  | j                  ddd«      ¬«      }t        j                  |«      }|j                  «       }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  j                  |j                  «      sJ ‚| j                  | j                  ddd«      ¬«      }t        j                  |«      }|j                  «       }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  j                  |j                  «      sJ ‚y ©	Nr   ry   r   )Úindex)ry   r   r   r   )r   r   )
r¥   Ú	DataFrameÚ
RangeIndexr   r€   r§   Únum_rowsr_   r¾   rP   )rª   r<   r€   rŸ   s       r!   Ú.test_table_roundtrip_to_pandas_empty_dataframerÂ   g  s  € ó
 à�<‰<˜bŸm™m¨A¨r°1Ó5ˆ<Ó6€DÜ�H‰H�T‹N€EØ�_‰_Ó€Fà�>‰>˜RÒÐÐØ�:‰:˜Ò Ð Ð Ø�<‰<˜7Ò"Ð"Ð"Ø�<‰<×Ñ˜tŸz™zÔ*Ð*Ð*à�<‰<˜bŸm™m¨A¨r°1Ó5ˆ<Ó6€DÜ�H‰H�T‹N€EØ�_‰_Ó€Fà�>‰>˜QÒÐÐØ�:‰:˜ÒÐÐØ�<‰<˜6Ò!Ð!Ð!Ø�<‰<×Ñ˜tŸz™zÔ*Ð*Ñ*rU   c                  ó¼  — dd l } | j                  | j                  ddd«      ¬«      }t        j                  j                  |«      }|j                  «       }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  j                  |j                  «      sJ ‚| j                  | j                  ddd«      ¬«      }t        j                  j                  |«      }|j                  «       }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  j                  |j                  «      sJ ‚y r½   )r¥   r¿   rÀ   r   ÚRecordBatchÚfrom_pandasr§   rÁ   r_   r¾   rP   )rª   r<   ÚbatchrŸ   s       r!   Ú4test_recordbatch_roundtrip_to_pandas_empty_dataframerÇ   �  s%  € ó
 à�<‰<˜bŸm™m¨A¨r°1Ó5ˆ<Ó6€DÜ�N‰N×&Ñ& tÓ,€EØ�_‰_Ó€Fà�>‰>˜RÒÐÐØ�:‰:˜Ò Ð Ð Ø�<‰<˜7Ò"Ð"Ð"Ø�<‰<×Ñ˜tŸz™zÔ*Ð*Ð*à�<‰<˜bŸm™m¨A¨r°1Ó5ˆ<Ó6€DÜ�N‰N×&Ñ& tÓ,€EØ�_‰_Ó€Fà�>‰>˜QÒÐÐØ�:‰:˜ÒÐÐØ�<‰<˜6Ò!Ð!Ð!Ø�<‰<×Ñ˜tŸz™zÔ*Ð*Ñ*rU   c                  ó"  — dd l } dd lm} | j                  ddgddgdœ«      }t	        j
                  |«      }|j                  j                  «       j                  «       }|j                  dk(  sJ ‚|j                  ||j                  d d «       y )Nr   r   r   gš™™™™™¹?gš™™™™™É?©rz   r”   ©r   r   )r¥   r´   rµ   r¿   r   r€   ÚschemaÚempty_tabler§   r_   Úassert_frame_equalÚiloc)rª   rº   Údfr€   rŸ   s        r!   Útest_to_pandas_empty_tablerÐ   ›  sy   € ó Ýà	�‰˜Q ˜F¨#¨s¨Ñ4Ó	5€BÜ�H‰H�R‹L€EØ�\‰\×%Ñ%Ó'×1Ñ1Ó3€FØ�<‰<˜6Ò!Ð!Ð!Ø×Ñ˜& "§'¡'¨"¨1 +Õ.rU   c                  ód  — t        j                  dg«      t        j                  g d¢«      g} t        j                  | «      }t        j                  |«      }|j                  «       g d¢k(  sJ ‚|j                  t        j                  d«      k(  sJ ‚t        j                  |d¬«      }|j                  «       g d¢k(  sJ ‚t        j                  dd g«      t        j                  g d¢«      g} t        j                  | «      }t        j                  |«      }|j                  «       }|d   d	k(  sJ ‚t        j                  |d   «      sJ ‚|d
d  g d¢k(  sJ ‚|j                  t        j                  d«      k(  sJ ‚t         j                  j                  t        j                  g d¢«      t        j                  g d¢«      «      }t        j                  ||g«      }t        j                  |«      }|j                  t        j                  d«      k(  sJ ‚|j                  «       g d¢d
z  k(  sJ ‚y )Nr   r   )r   r   r   r   rF   rm   ©Údtype)Ú0Ú1Ú2Ú3r   rf   r   re   rj   )r   r   r   r   r   ©rz   r”   r    r7   )rz   r”   r    rz   r”   )
r   rN   r(   r[   r\   ÚtolistrÓ   ÚisnanÚDictionaryArrayr   )r<   rQ   Únp_arrÚelementsrI   s        r!   Útest_chunked_array_asarrayrÞ   ¨  sÇ  € ô 	�‰�!�‹Ü
�‰’Óð€Dô ×"Ñ" 4Ó(€Kä�Z‰Z˜Ó$€FØ�=‰=‹?šlÒ*Ð*Ð*Ø�<‰<œ2Ÿ8™8 GÓ,Ò,Ð,Ð,ô �Z‰Z˜¨5Ô1€FØ�=‰=‹?Ò2Ò2Ð2Ð2ô 	�‰�!�T�ÓÜ
�‰’Óð€Dô ×"Ñ" 4Ó(€Kä�Z‰Z˜Ó$€FØ�}‰}‹€HØ�A‰;˜"ÒÐÐÜ�8‰8�H˜Q‘KÔ Ð Ð Ø�A�Bˆ<š<Ò'Ð'Ð'Ø�<‰<œ2Ÿ8™8 IÓ.Ò.Ð.Ð.ô ×
Ñ
×
(Ñ
(Ü
�‰’Ó!¤2§8¡8ªOÓ#<ó>€Cä×"Ñ" C¨ :Ó.€KÜ�Z‰Z˜Ó$€FØ�<‰<œ2Ÿ8™8 HÓ-Ò-Ð-Ð-Ø�=‰=‹?Ò7¸!Ñ;Ò;Ð;Ñ;rU   c            	      ó:  — t        j                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      } t        j
                  g d¢| ¬«      }t        j                  |«      }|j                  «       \  }}|j                  t        j                  t        j
                  g d¢t        j                  «       ¬«      «      «      sJ ‚|j                  t        j                  t        j
                  g d¢t        j                  «       ¬«      «      «      sJ ‚t        j
                  g | ¬«      }t        j                  |«      }|j                  «       \  }}|j                  t        j                  t        j
                  g t        j                  «       ¬«      «      «      sJ ‚|j                  t        j                  t        j
                  g t        j                  «       ¬«      «      «      sJ ‚y )Nr�   r�   )©r   r˜   ©r   ç      @)r   ç      @r   )r   r   r   )r˜   râ   rã   )	r   ÚstructÚfieldÚint16Úfloat32rN   r(   ÚflattenrP   )Útyrz   Úcarrr�   r�   s        r!   Útest_chunked_array_flattenrë   Ò  se  € Ü	�‰”B—H‘H˜S¤"§(¡(£*Ó-Ü—H‘H˜S¤"§*¡*£,Ó/ð1ó 
2€Bä
�‰Ò/°bÔ9€AÜ×Ñ˜AÓ€DØ�<‰<‹>�D€A€qØ�8‰8”B×$Ñ$¤R§X¡Xªi¼b¿h¹h»jÔ%IÓJÔKÐKÐKØ�8‰8”B×$Ñ$¤R§X¡XªoÜ35·:±:³<ô&Aó Bô Cð Cð Cô 	�‰�˜"Ô€AÜ×Ñ˜AÓ€DØ�<‰<‹>�D€A€qØ�8‰8”B×$Ñ$¤R§X¡X¨b´r·x±x³zÔ%BÓCÔDÐDÐDØ�8‰8”B×$Ñ$¤R§X¡X¨b´r·z±z³|Ô%DÓEÔFÐFÑFrU   c                  óî  — t        j                  t        j                  g d¢«      j                  «       t        j                  g d¢«      j                  «       g«      } | j	                  d«      j
                  j                  t        j                  ddg«      «      sJ ‚| j	                  d«      j
                  j                  t        j                  ddg«      «      sJ ‚| j                  «       } t        j                  g d¢«      }| j	                  d«      j
                  j                  |«      sJ ‚| j	                  d«      j
                  j                  |«      sJ ‚| j                  «       g d	¢k(  sJ ‚y )
N©ÚfooÚbarNrî   )ÚquuxNrî   r   rî   rï   r   rð   ©rî   rï   rð   )rî   rï   Nrî   rð   Nrî   )	r   r(   rN   Údictionary_encodeÚchunkÚ
dictionaryrP   Úunify_dictionariesr*   )rI   Úexpected_dicts     r!   Ú%test_chunked_array_unify_dictionariesr÷   ä  s  € Ü
×
Ñ
Ü
�‰Ò,Ó-×?Ñ?ÓAÜ
�‰Ò&Ó'×9Ñ9Ó;ðó €Cð �9‰9�Q‹<×"Ñ"×)Ñ)¬"¯(©(°E¸5°>Ó*BÔCÐCÐCØ�9‰9�Q‹<×"Ñ"×)Ñ)¬"¯(©(°F¸E°?Ó*CÔDÐDÐDØ
×
 Ñ
 Ó
"€CÜ—H‘HÒ3Ó4€MØ�9‰9�Q‹<×"Ñ"×)Ñ)¨-Ô8Ð8Ð8Ø�9‰9�Q‹<×"Ñ"×)Ñ)¨-Ô8Ð8Ð8Ø�=‰=‹?ÒNÒNÐNÑNrU   c                  óŒ   — t        j                  t        d¬«      5  t        j                  «        d d d «       y # 1 sw Y   y xY w)NrÄ   rD   )r,   r-   ri   r   rÄ   rX   rU   r!   Útest_recordbatch_dunder_initrù   ò  s&   € Ü	�‰”y¨Ö	6Ü
�‰Ô÷ 
7×	6Ñ	6úó	   œ:ºAc                  ó‚  —  G d„ d«      } t        j                  g d¢t        j                  «       «      }t        j                  |g«      } | |«      }t        j                  |«      }||k(  sJ ‚t        j                  |t        j                  «       ¬«      }||j                  t        j                  «       «      k(  sJ ‚y )Nc                   ó   — e Zd Zd„ Zdd„Zy)ú:test_chunked_array_c_array_interface.<locals>.ArrayWrapperc                 ó   — || _         y r   )rN   )ÚselfrN   s     r!   Ú__init__zCtest_chunked_array_c_array_interface.<locals>.ArrayWrapper.__init__ù  s	   € ØˆD�JrU   Nc                 ó8   — | j                   j                  |«      S r   )rN   Ú__arrow_c_array__©rÿ   Úrequested_schemas     r!   r  zLtest_chunked_array_c_array_interface.<locals>.ArrayWrapper.__arrow_c_array__ü  s   € Ø—:‘:×/Ñ/Ð0@ÓAÐArU   r   ©Ú__name__Ú
__module__Ú__qualname__r   r  rX   rU   r!   ÚArrayWrapperrý   ø  s   „ ò	ô	BrU   r	  r   r   )r   rN   rF   r(   ræ   Úcast)r	  r<   ÚchunkedÚwrapperrŸ   s        r!   Ú$test_chunked_array_c_array_interfacer  ÷  s™   € ÷Bñ Bô �8‰8’IœrŸx™x›zÓ*€DÜ×Ñ ˜vÓ&€GÙ˜4Ó €Gô ×Ñ˜gÓ&€FØ�WÒÐÐô ×Ñ˜g¬B¯H©H«JÔ7€FØ�W—\‘\¤"§(¡(£*Ó-Ò-Ð-Ñ-rU   c                  ó8  —  G d„ d«      } t        j                  g d¢g d¢g«      } | |«      }t        j                  |«      }||k(  sJ ‚t        j                  |t        j                  «       ¬«      }||j                  t        j                  «       «      k(  sJ ‚y )Nc                   ó   — e Zd Zd„ Zdd„Zy)úBtest_chunked_array_c_stream_interface.<locals>.ChunkedArrayWrapperc                 ó   — || _         y r   )r  )rÿ   r  s     r!   r   zKtest_chunked_array_c_stream_interface.<locals>.ChunkedArrayWrapper.__init__  ó	   € Ø"ˆD�LrU   Nc                 ó8   — | j                   j                  |«      S r   )r  Ú__arrow_c_stream__r  s     r!   r  zUtest_chunked_array_c_stream_interface.<locals>.ChunkedArrayWrapper.__arrow_c_stream__  s   € Ø—<‘<×2Ñ2Ð3CÓDÐDrU   r   ©r  r  r  r   r  rX   rU   r!   ÚChunkedArrayWrapperr    s   „ ò	#ô	ErU   r  r   )r   Nr   r   )r   r(   ræ   r
  )r  r<   r  rŸ   s       r!   Ú%test_chunked_array_c_stream_interfacer    s„   € ÷Eñ Eô ×ÑšYªÐ5Ó6€DÙ! $Ó'€Gô ×Ñ˜gÓ&€FØ�TŠ>Ðˆ>ô ×Ñ˜g¬B¯H©H«JÔ7€FØ�T—Y‘YœrŸx™x›zÓ*Ò*Ð*Ñ*rU   c                   ó   — e Zd Zd„ Zdd„Zy)ÚBatchWrapperc                 ó   — || _         y r   ©rÆ   ©rÿ   rÆ   s     r!   r   zBatchWrapper.__init__!  ó	   € Øˆ�
rU   Nc                 ó8   — | j                   j                  |«      S r   )rÆ   r  r  s     r!   r  zBatchWrapper.__arrow_c_array__$  s   € Ø�z‰z×+Ñ+Ð,<Ó=Ð=rU   r   r  rX   rU   r!   r  r     s   „ òô>rU   r  c                   ó   — e Zd Zd„ Zdd„Zy)ÚBatchDeviceWrapperc                 ó   — || _         y r   r  r  s     r!   r   zBatchDeviceWrapper.__init__)  r  rU   Nc                 ó<   —  | j                   j                  |fi |¤ŽS r   )rÆ   Ú__arrow_c_device_array__)rÿ   r  Úkwargss      r!   r#  z+BatchDeviceWrapper.__arrow_c_device_array__,  s   € Ø2ˆt�z‰z×2Ñ2Ð3CÑNÀvÑNÐNrU   r   )r  r  r  r   r#  rX   rU   r!   r   r   (  s   „ òôOrU   r   Úwrapper_classc                 ó  — t        j                  t        j                  g d¢t        j                  «       ¬«      gdg¬«      } | |«      }t        j                  |«      }||k(  sJ ‚t        j                  t        j
                  dt        j                  «       «      g«      }t        j                  ||¬«      }t        j                  t        j                  g d¢t        j                  «       ¬«      gdg¬«      }||k(  sJ ‚y ©Nr   r   rz   r{   ©rË   )r   Úrecord_batchrN   rF   rË   rå   ru   )r%  r<   r  rŸ   Úcastable_schemarS   s         r!   Ú"test_recordbatch_c_array_interfacer+  0  sÍ   € ä�?‰?Ü
�‰’¤§¡£Ô,ðàˆUô€Dñ ˜DÓ!€Gô �_‰_˜WÓ%€FØ�TŠ>Ðˆ>ô —i‘iÜ
�‰�”b—h‘h“jÓ!ð!ó €Oô �_‰_˜W¨_Ô=€FÜ�‰Ü
�‰’¤§¡£Ô,ð àˆUô€Hð �XÒÐÑrU   c                  ó0  — t        j                  t        j                  g d¢t        j                  «       ¬«      gdg¬«      } t	        j
                  t        d¬«      5  | j                  d¬«       d d d «       | j                  d ¬«      }y # 1 sw Y   ŒxY w)	Nr   r   rz   r{   z7Received unsupported keyword argument\(s\): \['other'\]rD   znot-none)Úother)r   r)  rN   rF   r,   r-   ÚNotImplementedErrorr#  )r<   Ú_s     r!   Ú=test_recordbatch_c_array_interface_device_unsupported_keywordr0  F  sw   € ä�?‰?Ü	�‰’)¤"§(¡(£*Ô	-Ð.°s°eô€Dô 
�‰ÜØHö
ð 	×%Ñ%¨JÐ%Ô7÷	
ð 	×%Ñ%¨DÐ%Ó1�A÷
ð 
ús   ÁBÂBc                 óD  — t        j                  t        j                  g d¢t        j                  «       ¬«      gdg¬«      } | |«      }t        j                  |«      }t         j
                  j                  |g«      }||k(  sJ ‚t        j                  t        j                  dt        j                  «       «      g«      }t        j                  ||¬«      }t        j                  dt        j                  g d¢t        j                  «       ¬«      i«      }||k(  sJ ‚y r'  )
r   r)  rN   rF   r€   r~   Úfrom_batchesrË   rå   ru   )r%  r<   r  rŸ   rS   r*  s         r!   Útest_table_c_array_interfacer3  V  sâ   € ä�?‰?Ü
�‰’¤§¡£Ô,ðàˆUô€Dñ ˜DÓ!€Gô �X‰X�gÓ€FÜ�x‰x×$Ñ$ d VÓ,€HØ�XÒÐÐô —i‘iÜ
�‰�”b—h‘h“jÓ!ð!ó €Oô �X‰X�g oÔ6€FÜ�x‰xØŒR�X‰X’i¤b§h¡h£jÔ1ðó €Hð �XÒÐÑrU   c                  ó  —  G d„ d«      } t        j                  t        j                  g d¢t        j                  «       ¬«      gdg¬«      t        j                  t        j                  g d¢t        j                  «       ¬«      gdg¬«      g} | |«      }t        j                  |«      }t         j
                  j                  |«      }||k(  sJ ‚t        j                  ||d   j                  ¬	«      }||k(  sJ ‚t        j                  t        j                  dt        j                  «       «      g«      }t        j                  ||¬	«      }||j                  |«      k(  sJ ‚t        j                  t         j                  j                  d
¬«      5  t        j                  |t        j                  t        j                  dt        j                  t        j                  «       «      «      g«      ¬	«       d d d «       y # 1 sw Y   y xY w)Nc                   ó   — e Zd Zd„ Zdd„Zy)ú4test_table_c_stream_interface.<locals>.StreamWrapperc                 ó   — || _         y r   )Úbatches)rÿ   r8  s     r!   r   z=test_table_c_stream_interface.<locals>.StreamWrapper.__init__o  r  rU   Nc                 ó¦   — t         j                  j                  | j                  d   j                  | j                  «      }|j                  |«      S ©Nr   )r   ÚRecordBatchReaderr2  r8  rË   r  )rÿ   r  Úreaders      r!   r  zGtest_table_c_stream_interface.<locals>.StreamWrapper.__arrow_c_stream__r  sA   € Ü×)Ñ)×6Ñ6Ø—‘˜Q‘×&Ñ&¨¯©ó6ˆFà×,Ñ,Ð-=Ó>Ð>rU   r   r  rX   rU   r!   ÚStreamWrapperr6  n  s   „ ò	#ô	?rU   r=  r   r   rz   r{   r   r   r(  zField 0 cannot be castrD   )r   r)  rN   rF   r€   r~   r2  rË   rå   ru   r
  r,   r-   r   ÚArrowTypeErrorÚlist_)r=  r<   r  rŸ   rS   Úgood_schemas         r!   Útest_table_c_stream_interfacerA  m  su  € ÷?ñ ?ô 	�‰œŸ™¢)´"·(±(³*Ô=Ð>ÀsÀeÔLÜ
�‰œŸ™¢)´"·(±(³*Ô=Ð>ÀsÀeÔLð€Dñ ˜DÓ!€Gô �X‰X�gÓ€FÜ�x‰x×$Ñ$ TÓ*€HØ�XÒÐÐô �X‰X�g d¨1¡g§n¡nÔ5€FØ�XÒÐÐô —)‘)œRŸX™X c¬2¯8©8«:Ó6Ð7Ó8€KÜ�X‰X�g kÔ2€FØ�X—]‘] ;Ó/Ò/Ð/Ð/ô 
�‰Ü
�‰×ÑÐ%=ö
ô 	�‰ØœBŸI™I¤r§x¡x°´R·X±X¼b¿h¹h»jÓ5IÓ'JÐ&KÓLõ	
÷
÷ 
ñ 
ús   ÆA%HÈHc                  óÊ  — t        j                  t        d«      d¬«      t        j                  g d¢d¬«      g} t        j                  | ddg«      }g }|j	                  «       D ]  }|j                  |«       Œ |j                  |k(  sJ ‚|t        j                  ||j                  ¬«      k(  sJ ‚|t        j                  |d	d  |j                  d	d  ¬«      k7  sJ ‚||k7  sJ ‚y )
Nr   ræ   r   ©r£   r¤   r   Nry   ru   Úc0Úc1r{   r   )r   rN   r…   r)  Úitercolumnsrš   ÚcolumnsÚcolumn_names)r<   rÆ   rG  r«   s       r!   Útest_recordbatch_itercolumnsrI  ”  sÑ   € ä
�‰”�q“ Ô(Ü
�‰Ò'¨gÔ6ð€Dô �O‰O˜D 4¨ ,Ó/€Eà€GØ× Ñ Ö"ˆØ�‰�sÕð #ð �=‰=˜GÒ#Ð#Ð#Ø”B—O‘O G°5×3EÑ3EÔFÒFÐFÐFØ”B—O‘O G¨A¨B K°u×7IÑ7IÈ!È"Ð7MÔNÒNÐNÐNØ�GÒÐÑrU   c                  óÎ  — t        j                  t        d«      d¬«      t        j                  g d¢d¬«      g} t        j                  g d¢«      t        j                  dgdgd	gg«      g}d
dg}t        j                  | |«      }|t        j                  | |«      k(  sJ ‚|j	                  t        j                  | |«      «      sJ ‚|t        j                  ||«      k7  sJ ‚|j	                  t        j                  ||«      «      rJ ‚t        j                  | |ddi¬«      }|j	                  |«      sJ ‚|j	                  |d¬«      rJ ‚|j	                  d «      rJ ‚|dk7  sJ ‚y )Nr   ræ   r   rC  ru   rØ   r•   ÚeÚfrD  rE  ÚkeyÚvalue©r|   ÚmetadataT©Úcheck_metadatarî   )r   rN   r…   r)  rP   )Údata1r=   rH  rÆ   Ú
batch_metas        r!   Útest_recordbatch_equalsrU  ¥  sF  € ä
�‰”�q“ Ô(Ü
�‰Ò'¨gÔ6ð€Eô
 	�‰’Ó!Ü
�‰�3�%˜#˜  Ð&Ó'ð€Eð ˜$�<€Lä�O‰O˜E <Ó0€EØ”B—O‘O E¨<Ó8Ò8Ð8Ð8Ø�<‰<œŸ™¨¨|Ó<Ô=Ð=Ð=à”B—O‘O E¨<Ó8Ò8Ð8Ð8Ø�|‰|œBŸO™O¨E°<Ó@ÔAÐAÐAä—‘ ¨lØ+0°'Ð*:ô<€Jà×Ñ˜UÔ#Ð#Ð#Ø× Ñ  °tÐ Ô<Ð<Ð<ð �|‰|˜DÔ!Ð!Ð!Ø�EŠ>Ð‰>rU   c            	      ó  — t        j                  t        j                  g d¢«      t        j                  g d¢«      gddg«      } | j                  t        j                  ddg«      «      j	                  | j                  dd«      «      sJ ‚| j                  t        j                  dd g«      «      j	                  t        j                  t        j                  dd g«      t        j                  dd g«      gddg«      «      sJ ‚y )N©r   r   r   Nr   ©rz   r”   r    r•   rK  Úf1Úf2r   r   r    )r   r)  rN   ÚtakerP   r}   r  s    r!   Útest_recordbatch_taker\  Á  sÏ   € Ü�O‰OÜ	�‰Ò$Ó	%Ü	�‰Ò+Ó	,ð	.à	ˆtˆó€Eð �:‰:”b—h‘h  1˜vÓ&Ó'×.Ñ.¨u¯{©{¸1¸aÓ/@ÔAÐAÐAØ�:‰:”b—h‘h  4˜yÓ)Ó*×1Ñ1Ü
�‰œŸ™ 1 d )Ó,¬b¯h©h¸¸T°{Ó.CÐDØ˜t˜ó	&ô'ð 'ñ 'rU   c                  óˆ   — t        j                  t        j                  g d¢«      gdg¬«      } | d   j                  dk(  sJ ‚y ©N©r   r   r   r   Úa0r{   r   )r   r)  rN   Ú_name)Úrbs    r!   Ú)test_recordbatch_column_sets_private_namerc  Ì  s6   € ä	�‰œ"Ÿ(™(¢<Ó0Ð1¸$¸Ô	@€BØˆa‰5�;‰;˜$ÒÐÑrU   c            	      ó\  — t        j                  ddg«      } t        j                  t        j                  dt        j                  t        j
                  «       «      «      g«      }t        j                  t        «      5  t        j                  | g|¬«       d d d «       y # 1 sw Y   y xY w)Nr   r   Úf0r(  )
r   rN   rË   rå   r?  Úutf8r,   r-   r.  r)  )rI   rË   s     r!   Ú,test_recordbatch_from_arrays_validate_schemarg  Ò  sh   € ä
�(‰(�A�q�6Ó
€CÜ�Y‰YœŸ™ ¤r§x¡x´·±³	Ó':Ó;Ð<Ó=€FÜ	�‰Ô*Õ	+Ü
�‰˜˜ fÕ-÷ 
,×	+Ñ	+ús   Â B"Â"B+c                  ó  — t        j                  dg«      t        j                  g d¢«      t        j                  dg«      g} t        j                  t        «      5  t        j
                  | g d¢«       d d d «       y # 1 sw Y   y xY w)Nr   )ÚtokyoÚlikeÚhappyÚderek)ÚidÚtagsr©   )r   rN   r,   r-   r.   r)  rn   s    r!   Ú-test_recordbatch_from_arrays_validate_lengthsro  Ú  sY   € ä�H‰H�a�S‹Mœ2Ÿ8™8Ò$>Ó?Ü�H‰H�g�YÓð!€Dô 
�‰”zÕ	"Ü
�‰˜Ò4Ô5÷ 
#×	"Ñ	"ús   ÁA>Á>Bc                  ó”   — t        j                  g g «      } t        | «      dk(  sJ ‚| j                  dk(  sJ ‚| j                  dk(  sJ ‚y r:  )r   r)  r3   rÁ   Únum_columnsr  s    r!   Útest_recordbatch_no_fieldsrr  ã  sH   € Ü�O‰O˜B Ó#€Eäˆu‹:˜Š?Ðˆ?Ø�>‰>˜QÒÐÐØ×Ñ Ò!Ð!Ñ!rU   c                  óˆ  — t        j                  t        d«      «      t        j                  g d¢«      g} t        j                  t
        «      5  t        j                  | g d¢¬«       d d d «       t        j                  t
        «      5  t        j                  | dg¬«       d d d «       y # 1 sw Y   ŒDxY w# 1 sw Y   y xY w©Nr   r¢   rØ   r{   rz   )r   rN   r…   r,   r-   r.   r)  rn   s    r!   Ú*test_recordbatch_from_arrays_invalid_namesru  ë  s   € ä
�‰”�q“ÓÜ
�‰Ò$Ó%ð€Dô 
�‰”zÕ	"Ü
�‰˜¢OÕ4÷ 
#ô 
�‰”zÕ	"Ü
�‰˜ S EÕ*÷ 
#Ð	"÷ 
#Ð	"ú÷ 
#Ð	"ús   ÁB,Â
B8Â,B5Â8Cc                  óÎ   — t        j                  t        d«      «      t        j                  g d¢«      g} t        j                  | ddg«      }|j                  j
                  �J ‚y )Nr   r¢   rD  rE  )r   rN   r…   r)  rË   rP  ©r<   rÆ   s     r!   Útest_recordbatch_empty_metadatarx  ÷  sR   € ä
�‰”�q“ÓÜ
�‰Ò$Ó%ð€Dô
 �O‰O˜D 4¨ ,Ó/€EØ�<‰<× Ñ Ð(Ð(Ñ(rU   c                 óþ  — t        j                  t        d«      d¬«      t        j                  g d¢d¬«      g}t        j                  dt        j                  «       «      t        j                  dt        j
                  «       «      g}t        j                  |dd	i¬
«      }t        j                  ||¬«      }| j                  | j                  |«      «      }|j                  |«      sJ ‚|j                  |k(  sJ ‚y )Nr   rG   r   r¢   rç   ÚintsÚfloatsó   fooó   bar©rP  r(  )r   rN   r…   rå   rG   rç   rË   r)  r›   rœ   rP   )r�   r<   ÚfieldsrË   rÆ   rŸ   s         r!   Útest_recordbatch_pickler€    sÁ   € ä
�‰”�q“ Ô'Ü
�‰Ò$¨9Ô5ð€Dô
 	�‰�œŸ™›Ó#Ü
�‰�œ2Ÿ:™:›<Ó(ð€Fô �Y‰Y�v¨°Ð(8Ô9€FÜ�O‰O˜D¨Ô0€Eà× Ñ  ×!4Ñ!4°UÓ!;Ó<€FØ�=‰=˜ÔÐÐØ�=‰=˜FÒ"Ð"Ñ"rU   c                  óR  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g} t         j                  j	                  | d¬«      }|j                  d«      j                  |j                  j                  d«      «      sJ ‚|j                  d«      j                  |j                  j                  d«      «      sJ ‚t        j                  t        «      5  |j                  d«       d d d «       t        j                  t        «      5  |j                  d «       d d d «       t        j                  t        «      5  |j                  d	«       d d d «       y # 1 sw Y   ŒpxY w# 1 sw Y   ŒIxY w# 1 sw Y   y xY w©
Nr   r¢   ry   rØ   r{   rz   r   r•   r   )r   rN   r…   rÄ   r   rå   rP   rË   r,   r-   ÚKeyErrorri   rt   rw  s     r!   Útest_recordbatch_get_fieldr„    s"  € ä
�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dô
 �N‰N×&Ñ& t°?Ð&ÓC€Eà�;‰;�sÓ×"Ñ" 5§<¡<×#5Ñ#5°cÓ#:Ô;Ð;Ð;Ø�;‰;�q‹>× Ñ  §¡×!3Ñ!3°CÓ!8Ô9Ð9Ð9ä	�‰”xÕ	 Ø�‰�CÔ÷ 
!ô 
�‰”yÕ	!Ø�‰�DÔ÷ 
"ô 
�‰”zÕ	"Ø�‰�AŒ÷ 
#Ð	"÷ 
!Ð	 ú÷ 
"Ð	!ú÷ 
#Ð	"úó$   ÄFÄ7FÅ*FÆFÆFÆF&c                  óÌ  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g} t         j                  j	                  | d¬«      }|j                  d«      j                  |j                  d«      «      sJ ‚t        j                  t        d¬	«      5  |j                  d
«       d d d «       t        j                  t        «      5  |j                  d «       d d d «       t        j                  t        «      5  |j                  d«       d d d «       y # 1 sw Y   ŒpxY w# 1 sw Y   ŒIxY w# 1 sw Y   y xY w©Nr   r¢   ry   rØ   r{   rz   r   z"Field "d" does not exist in schemarD   r•   r   )r   rN   r…   rÄ   r   r¦   rP   r,   r-   rƒ  ri   rt   rw  s     r!   Útest_recordbatch_select_columnrˆ  '  sü   € ä
�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dô
 �N‰N×&Ñ& t°?Ð&ÓC€Eà�<‰<˜Ó×#Ñ# E§L¡L°£OÔ4Ð4Ð4ä	�‰ÜÐ@ö
Bà�‰�SÔ÷
Bô 
�‰”yÕ	!Ø�‰�TÔ÷ 
"ô 
�‰”zÕ	"Ø�‰�QŒ÷ 
#Ð	"÷
Bð 
Bú÷ 
"Ð	!ú÷ 
#Ð	"úó$   ÃEÃ4EÄ'EÅEÅEÅE#c                  ó  — t        j                  g d¢«      } t        j                  g d¢«      }t        j                  ddgddgddgd d	d
gg«      }t        j                  | ||gg d¢«      }|j                  dg«      }t        j                  | gdg«      }|j	                  |«      sJ ‚|j                  ddg«      }t        j                  ||gddg«      }|j	                  |«      sJ ‚|j                  dg«      }t        j                  | gdg«      }|j	                  |«      sJ ‚|j                  ddg«      }t        j                  ||gddg«      }|j	                  |«      sJ ‚|j                  ddi«      }|j                  ddg«      }d|j                  j                  v sJ ‚t        j                  t        d¬«      5  |j                  dg«       d d d «       t        j                  t        d¬«      5  |j                  dg«       d d d «       |j                  ddg«      }t        j                  ||gddg«      }|j	                  |«      sJ ‚t        j                  | ||gg d¢«      }t        j                  t        d¬«      5  |j                  dg«       d d d «       |j                  dg«      }t        j                  |gdg«      }|j	                  |«      sJ ‚y # 1 sw Y   �ŒxY w# 1 sw Y   ŒåxY w# 1 sw Y   Œ`xY w©NrW  rX  r   r   r   r   r   r   r   ry   )rY  rZ  Úf3rY  rŒ  rZ  r   rz   Útestó   azField "f5" does not existrD   Úf5zindex out of bounds)rY  rZ  rY  zField "f1" exists 2 times)r   rN   r)  ÚselectrP   Úreplace_schema_metadatarË   rP  r,   r-   rƒ  rt   )Úa1Úa2Úa3rÆ   rŸ   rS   Úbatch2s          r!   Útest_recordbatch_selectr–  <  s¢  € Ü	�‰Ò$Ó	%€BÜ	�‰Ò+Ó	,€BÜ	�‰�A�q�6˜A˜q˜6 A q 6¨4°!°R°Ð9Ó	:€BÜ�O‰O˜R  R˜LÒ*<Ó=€Eð �\‰\˜4˜&Ó!€FÜ�‰ ˜t d VÓ,€HØ�=‰=˜Ô"Ð"Ð"à�\‰\˜4 ˜,Ó'€FÜ�‰  B˜x¨$°¨Ó6€HØ�=‰=˜Ô"Ð"Ð"ð �\‰\˜1˜#Ó€FÜ�‰ ˜t d VÓ,€HØ�=‰=˜Ô"Ð"Ð"à�\‰\˜1˜a˜&Ó!€FÜ�‰  B˜x¨$°¨Ó6€HØ�=‰=˜Ô"Ð"Ð"ð ×*Ñ*¨C°¨=Ó9€FØ�]‰]˜D $˜<Ó(€FØ�6—=‘=×)Ñ)Ñ)Ð)Ð)ô 
�‰”xÐ'BÖ	CØ�‰�d�VÔ÷ 
Dô 
�‰”zÐ)>Ö	?Ø�‰�a�SÔ÷ 
@ð �\‰\˜4 ˜,Ó'€FÜ�‰  B˜x¨$°¨Ó6€HØ�=‰=˜Ô"Ð"Ð"ô �O‰O˜R  R˜LÒ*<Ó=€EÜ	�‰”xÐ'BÖ	CØ�‰�d�VÔ÷ 
Dð �\‰\˜4˜&Ó!€FÜ�‰ ˜t d VÓ,€HØ�=‰=˜Ô"Ð"Ñ"÷% 
DÑ	Cú÷ 
@Ð	?ú÷ 
DÐ	Cúó$   ÇK!Ç7K.ÊK:Ë!K+Ë.K7Ë:Lc                  óÖ   — t        j                  t        «      5  t        j                  j                  t        j                  t        d«      «      «       d d d «       y # 1 sw Y   y xY w)Nr   )r,   r-   ri   r   rÄ   Úfrom_struct_arrayrN   r…   rX   rU   r!   Ú*test_recordbatch_from_struct_array_invalidrš  o  s9   € Ü	�‰”yÕ	!Ü
�‰×(Ñ(¬¯©´%¸³(Ó);Ô<÷ 
"×	!Ñ	!ús   š<AÁA(c            
      ó  — t        j                  ddiddigt        j                  dt        j                  «       fdt        j                  «       fg«      ¬«      } t         j
                  j                  | «      }|j                  t         j
                  j                  t        j                  dd gt        j                  «       ¬«      t        j                  d dgt        j                  «       ¬«      gddg«      «      sJ ‚y ©Nrz  r   r{  rf   r   )	r   rN   rä   ru   rç   rÄ   r™  rP   r   ©Ústruct_arrayrŸ   s     r!   Ú"test_recordbatch_from_struct_arrayrŸ  t  sÃ   € Ü—8‘8Ø
�!ˆ�x �oÐ&Ü�Y‰Y˜¤§¡£Ð,¨x¼¿¹»Ð.FÐGÓHô€Lô �^‰^×-Ñ-¨lÓ;€FØ�=‰=œŸ™×3Ñ3ä�H‰H�a˜�Y¤R§X¡X£ZÔ0Ü�H‰H�d˜C�[¤r§z¡z£|Ô4ð	
ð �HÐó	ô ð ñ rU   c                  óæ  — t         j                  j                  t        j                  dd gt        j                  «       ¬«      t        j                  d dgt        j
                  «       ¬«      gddg«      } | j                  «       }|j                  t        j                  ddiddigt        j                  dt        j                  «       fdt        j
                  «       fg«      ¬«      «      sJ ‚y ©Nr   r   rf   rz  r{  )	r   rÄ   r   rN   ru   rç   Úto_struct_arrayrP   rä   )rÆ   rŸ   s     r!   Ú test_recordbatch_to_struct_arrayr£  ‚  s½   € Ü�N‰N×&Ñ&ä�H‰H�a˜�Y¤R§X¡X£ZÔ0Ü�H‰H�d˜C�[¤r§z¡z£|Ô4ð	
ð �HÐó	€Eð ×"Ñ"Ó$€FØ�=‰=œŸ™Ø
�!ˆ�x �oÐ&Ü�Y‰Y˜¤§¡£Ð,¨x¼¿¹»Ð.FÐGÓHôô ð ñ rU   c                  óÚ   — t        j                  t        d¬«      5  t        j                  j                  t        j                  t        d«      «      «       d d d «       y # 1 sw Y   y xY w)Nz*Argument 'struct_array' has incorrect typerD   r   )r,   r-   ri   r   r~   r™  rN   r…   rX   rU   r!   Ú$test_table_from_struct_array_invalidr¥  �  s=   € Ü	�‰”yÐ(TÖ	UÜ
�‰×"Ñ"¤2§8¡8¬E°!«HÓ#5Ô6÷ 
V×	UÑ	Uús   œ<A!Á!A*c            
      ó  — t        j                  ddiddigt        j                  dt        j                  «       fdt        j                  «       fg«      ¬«      } t         j
                  j                  | «      }|j                  t         j
                  j                  t        j                  dd gt        j                  «       ¬«      t        j                  d dgt        j                  «       ¬«      gddg«      «      sJ ‚y rœ  )	r   rN   rä   ru   rç   r~   r™  rP   r   r�  s     r!   Útest_table_from_struct_arrayr§  •  sÃ   € Ü—8‘8Ø
�!ˆ�x �oÐ&Ü�Y‰Y˜¤§¡£Ð,¨x¼¿¹»Ð.FÐGÓHô€Lô �X‰X×'Ñ'¨Ó5€FØ�=‰=œŸ™×-Ñ-ä�H‰H�a˜�Y¤R§X¡X£ZÔ0Ü�H‰H�d˜C�[¤r§z¡z£|Ô4ð	
ð �HÐó	ô ð ñ rU   c            
      ó  — t        j                  ddiddiggt        j                  dt        j                  «       fdt        j                  «       fg«      ¬«      } t         j
                  j                  | «      }|j                  t         j
                  j                  t        j                  dd gt        j                  «       ¬«      t        j                  d dgt        j                  «       ¬«      gddg«      «      sJ ‚y rœ  )
r   r(   rä   ru   rç   r~   r™  rP   r   rN   )Úchunked_struct_arrayrŸ   s     r!   Ú*test_table_from_struct_array_chunked_arrayrª  £  sÊ   € Ü×+Ñ+Ø�1ˆ+˜ #�Ð	'Ð(Ü�Y‰Y˜¤§¡£Ð,¨x¼¿¹»Ð.FÐGÓHôÐô �X‰X×'Ñ'Ð(<Ó=€FØ�=‰=œŸ™×-Ñ-ä�H‰H�a˜�Y¤R§X¡X£ZÔ0Ü�H‰H�d˜C�[¤r§z¡z£|Ô4ð	
ð �HÐó	ô ð ñ rU   c                  óè  — t         j                  j                  t        j                  dd gt        j                  «       ¬«      t        j                  d dgt        j
                  «       ¬«      gddg«      } | j                  «       }|j                  t        j                  ddiddiggt        j                  dt        j                  «       fdt        j
                  «       fg«      ¬«      «      sJ ‚y r¡  ©
r   r~   r   rN   ru   rç   r¢  rP   r(   rä   ©r€   rŸ   s     r!   Útest_table_to_struct_arrayr®  ±  sÂ   € Ü�H‰H× Ñ ä�H‰H�a˜�Y¤R§X¡X£ZÔ0Ü�H‰H�d˜C�[¤r§z¡z£|Ô4ð	
ð �HÐó	€Eð ×"Ñ"Ó$€FØ�=‰=œ×)Ñ)Ø�1ˆ+˜ #�Ð	'Ð(Ü�Y‰Y˜¤§¡£Ð,¨x¼¿¹»Ð.FÐGÓHôô ð ñ rU   c                  óî  — t         j                  j                  t        j                  dd gt        j                  «       ¬«      t        j                  d dgt        j
                  «       ¬«      gddg«      } | j                  d¬«      }|j                  t        j                  ddigddiggt        j                  dt        j                  «       fdt        j
                  «       fg«      ¬«      «      sJ ‚y )Nr   r   rf   rz  r{  ©Úmax_chunksizer¬  r­  s     r!   Ú-test_table_to_struct_array_with_max_chunksizer²  ¿  sÉ   € Ü�H‰H× Ñ ä�H‰H�a˜�Y¤R§X¡X£ZÔ0Ü�H‰H�d˜C�[¤r§z¡z£|Ô4ð	
ð �HÐó	€Eð ×"Ñ"°Ð"Ó3€FØ�=‰=œ×)Ñ)Ø�1ˆ+ˆ˜( C˜Ð)Ð*Ü�Y‰Y˜¤§¡£Ð,¨x¼¿¹»Ð.FÐGÓHôô ð ñ rU   c            
      óÌ  — t         j                  j                  t        j                  g t        j                  «       ¬«      t        j                  g t        j
                  «       ¬«      gddg«      } | j                  «       }|j                  t        j                  g t        j                  t        j                  «       t        j
                  «       dœ«      ¬«      «      sJ ‚y )Nr   rz  r{  )rz  r{  r¬  r­  s     r!   Ú*test_table_to_struct_array_for_empty_tabler´  Í  s¡   € Ü�H‰H× Ñ ä�H‰H�RœbŸh™h›jÔ)Ü�H‰H�RœbŸj™j›lÔ+ð	
ð �HÐó	€Eð ×"Ñ"Ó$€FØ�=‰=Ü
×ÑØÜ—‘¤B§H¡H£J¼"¿*¹*»,ÑGÓHô	
ôð ñ rU   c                 óÚ   — | j                  |«      sJ ‚| j                  |k(  sJ ‚| j                  |k(  sJ ‚| j                  |j                  k(  sJ ‚| j                  |j                  k(  sJ ‚y r   )rP   Úsizer	   r_   Ústrides)ÚtensorÚexpected_tensorr	   r¶  s       r!   Úcheck_tensorsrº  Ý  sh   € Ø�=‰=˜Ô)Ð)Ð)Ø�;‰;˜$ÒÐÐØ�;‰;˜$ÒÐÐØ�<‰<˜?×0Ñ0Ò0Ð0Ð0Ø�>‰>˜_×4Ñ4Ò4Ð4Ñ4rU   Útyp_str)Úuint8Úuint16Úuint32Úuint64rG   ræ   ru   rF   Úfloat16rç   rj   c           
      ó®  — t        j                  | «      }g d¢}g d¢}g d¢}t        j                  j	                  t        j
                  |t        j                  |«      ¬«      t        j
                  |t        j                  |«      ¬«      t        j
                  |t        j                  |«      ¬«      gg d¢«      }|j                  d¬«      }t        j                  |||g«      j                  |d¬	«      }t        j                  j                  |«      }t        ||t        j                  |«      d
«       |j                  «       }t        j                  |||g«      j                  |d¬	«      }t        j                  j                  |«      }t        ||t        j                  |«      d
«       |j                  d«      }	g d¢}g d¢}g d¢}|	j                  d¬«      }t        j                  |||g«      j                  |d¬	«      }t        j                  j                  |«      }t        ||t        j                  |«      d«       |	j                  «       }t        j                  |||g«      j                  |d¬	«      }t        j                  j                  |«      }t        ||t        j                  |«      d«       |j                  dd«      }
g d¢}g d¢}g d¢}|
j                  d¬«      }t        j                  |||g«      j                  |d¬	«      }t        j                  j                  |«      }t        ||t        j                  |«      d«       |
j                  «       }t        j                  |||g«      j                  |d¬	«      }t        j                  j                  |«      }t        ||t        j                  |«      d«       y )N©	r   r   r   r   r   r   r   r   r   ©	ry   é   é   é(   é2   é<   éF   éP   éZ   ©	éd   rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  r   rØ   F©Ú	row_majorÚF©Úorderé   ÚCr   ©r   r   r   r   r   r   r   r   ©rÄ  rÅ  rÆ  rÇ  rÈ  rÉ  rÊ  rË  ©rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  é   r   ©r   r   r   r   r   ©rÄ  rÅ  rÆ  rÇ  rÈ  ©rÍ  rÍ  rÍ  rÍ  rÍ  é   )r[   rÓ   r   rÄ   r   rN   Úfrom_numpy_dtypeÚ	to_tensorÚcolumn_stackÚastypeÚTensorÚ
from_numpyrº  r}   )r»  r—   ra   rb   Úarr3rÆ   rŸ   r�   rS   Úbatch1r•  s              r!   Ú'test_recordbatch_to_tensor_uniform_typerå  å  s  € ô �(‰(�7Ó
€CÚ&€DÚ/€DÚ8€DÜ�N‰N×&Ñ&ä�H‰H�T¤× 3Ñ 3°CÓ 8Ô9Ü�H‰H�T¤× 3Ñ 3°CÓ 8Ô9Ü�H‰H�T¤× 3Ñ 3°CÓ 8Ô9ð	
ò ó€Eð �_‰_ uˆ_Ó-€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2°3¸cÐ2ÓB€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$<¸bÔAà�_‰_Ó€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2°3¸cÐ2ÓB€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$<¸bÔAð �[‰[˜‹^€FÚ#€DÚ+€DÚ3€Dà×Ñ¨ÐÓ.€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2°3¸cÐ2ÓB€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$<¸bÔAà×ÑÓ€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2°3¸cÐ2ÓB€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$<¸bÔAà�[‰[˜˜AÓ€FÚ€DÚ€DÚ$€Dà×Ñ¨ÐÓ.€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2°3¸cÐ2ÓB€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$<¸bÔAà×ÑÓ€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2°3¸cÐ2ÓB€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$<¸bÕArU   Úclsc           	      ó:  — g d¢}g d¢}dddt         j                  dddd	d
g	}| j                  t        j                  |t        j
                  «       ¬«      t        j                  |t        j                  «       ¬«      gddg«      }|j                  d¬«      }t        j                  ||g«      j                  t         j                  d¬«      }t        j                  j                  |«      }t        ||t        j                  «       d«       |j                  «       }t        j                  ||g«      j                  t         j                  d¬«      }t        j                  j                  |«      }t        ||t        j                  «       d«       | j                  t        j                  |t        j
                  «       ¬«      t        j                  |t        j                  «       ¬«      t        j                  |t        j                  «       ¬«      gg d¢«      }|j                  d¬«      }t        j                  |||g«      j                  t         j                  d¬«      }t        j                  j                  |«      }t         j                   j#                  |j%                  «       |«       |j&                  dk(  sJ ‚|j(                  t        j                  «       k(  sJ ‚|j*                  |j*                  k(  sJ ‚|j,                  |j,                  k(  sJ ‚|j                  «       }t        j                  |||g«      j                  t         j                  d¬«      }t        j                  j                  |«      }t         j                   j#                  |j%                  «       |«       |j&                  dk(  sJ ‚|j(                  t        j                  «       k(  sJ ‚|j*                  |j*                  k(  sJ ‚|j,                  |j,                  k(  sJ ‚y )NrÂ  rÃ  rÍ  éÈ   é,  éô  éX  é¼  é   é„  r   rz   r”   FrÎ  rÐ  rÑ  é   rÔ  rØ   rÓ  )r[   Únanr   r   rN   r½  ræ   rÞ  rß  rà  ru   rá  râ  rº  rç   rj   rµ   Úassert_equalr]   r¶  r	   r_   r·  )ræ  ra   rb   rã  ÚtabularrŸ   r�   rS   s           r!   Útest_to_tensor_mixed_typeró  "  s  € ò '€DÚ/€DØ��cœ2Ÿ6™6 3¨¨S°#°sÐ;€DØ�o‰oä�H‰H�T¤§	¡	£Ô,Ü�H‰H�T¤§¡£
Ô+ð	
ð �ˆ:ó	€Gð ×Ñ¨ÐÓ/€FÜ
�‰˜˜t˜Ó%×,Ñ,¬R¯X©X¸SÐ,ÓA€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B§H¡H£J°Ô3à×ÑÓ €FÜ
�‰˜˜t˜Ó%×,Ñ,¬R¯X©X¸SÐ,ÓA€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B§H¡H£J°Ô3ð �o‰oä�H‰H�T¤§	¡	£Ô,Ü�H‰H�T¤§¡£
Ô+Ü�H‰H�T¤§
¡
£Ô-ð	
ò ó€Gð ×Ñ¨ÐÓ/€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2´2·:±:ÀSÐ2ÓI€AÜ�y‰y×#Ñ# AÓ&€Hä‡J�J×Ñ˜FŸO™OÓ-¨qÔ1Ø�;‰;˜"ÒÐÐØ�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜X×-Ñ-Ò-Ð-Ð-à×ÑÓ €FÜ
�‰˜˜t TÐ*Ó+×2Ñ2´2·:±:ÀSÐ2ÓI€AÜ�y‰y×#Ñ# AÓ&€Hä‡J�J×Ñ˜FŸO™OÓ-¨qÔ1Ø�;‰;˜"ÒÐÐØ�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜X×-Ñ-Ò-Ð-Ñ-rU   c            	      ó  — g d¢} g d¢}g d¢}t         j                  j                  t        j                  | t        j                  «       ¬«      t        j                  t        j                  |t
        j                  ¬«      t        j                  «       ¬«      t        j                  |t        j                  «       ¬«      gg d¢«      }t        j                  t        d¬«      5  |j                  «        d d d «       y # 1 sw Y   y xY w)	NrÂ  rÃ  )	rÍ  rè  ré  i�  rê  rë  rì  rí  rî  r   rÒ   rØ   z.Casting from or to halffloat is not supported.rD   )r   rÄ   r   rN   r½  r[   rÀ  rç   r,   r-   r.  rÞ  )ra   rb   rã  rÆ   s       r!   Ú>test_recordbatch_to_tensor_unsupported_mixed_type_with_float16rõ  ]  sª   € â&€DÚ/€DÚ8€DÜ�N‰N×&Ñ&ä�H‰H�T¤§	¡	£Ô,Ü�H‰H”R—X‘X˜d¬"¯*©*Ô5¼B¿J¹J»LÔIÜ�H‰H�T¤§
¡
£Ô-ð	
ò ó€Eô 
�‰ÜØ>ö
ð 	�‰Ô÷	
÷ 
ñ 
ús   Ã%C?Ã?Dc            	      óJ  — ddddt         j                  ddddg	} d	d
dddddt         j                  dg	}t        j                  j	                  t        j
                  | t        j                  «       ¬«      t        j
                  |t        j                  «       ¬«      gddg«      }|j                  d¬«      }t        j                  | |g«      j                  t         j                  d¬«      }t        j                  j                  |«      }t         j                  j                  |j                  «       |«       |j                  dk(  sJ ‚|j                   t        j                  «       k(  sJ ‚|j"                  |j"                  k(  sJ ‚|j$                  |j$                  k(  sJ ‚y )Nr   r   r   r   r   r   r   r   ry   rÄ  rÅ  rÆ  rÇ  rÈ  rÉ  rË  r   rz   r”   FrÎ  rÐ  rÑ  rï  )r[   rð  r   rÄ   r   rN   rç   rÞ  rß  rà  rá  râ  rµ   rñ  r]   r¶  r	   r_   r·  ©ra   rb   rÆ   rŸ   r�   rS   s         r!   Útest_recordbatch_to_tensor_nanrø  q  sC  € àˆq�!�QœŸ™  1 a¨Ð+€DØ��B˜˜B  B¬¯©°Ð3€DÜ�N‰N×&Ñ&ä�H‰H�T¤§
¡
£Ô-Ü�H‰H�T¤§
¡
£Ô-ð	
ð �ˆ:ó	€Eð �_‰_ uˆ_Ó-€FÜ
�‰˜˜t˜Ó%×,Ñ,¬R¯Z©Z¸sÐ,ÓC€AÜ�y‰y×#Ñ# AÓ&€Hä‡J�J×Ñ˜FŸO™OÓ-¨qÔ1Ø�;‰;˜"ÒÐÐØ�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜X×-Ñ-Ò-Ð-Ñ-rU   c                  ó¬  — g d¢} g d¢}t         j                  j                  t        j                  | t        j                  «       ¬«      t        j                  |t        j
                  «       ¬«      gddg«      }t        j                  t         j                  d¬«      5  |j                  «        d d d «       |j                  dd	¬
«      }t        j                  | |g«      j                  t        j                  d¬«      }t         j                  j                  |«      }t        j                   j#                  |j%                  «       |«       |j&                  dk(  sJ ‚|j(                  t        j                  «       k(  sJ ‚|j*                  |j*                  k(  sJ ‚|j,                  |j,                  k(  sJ ‚t         j                  j                  t        j                  | t        j                  «       ¬«      t        j                  |t        j                  «       ¬«      gddg«      }|j                  dd	¬
«      }t        j                   j#                  |j%                  «       |«       |j&                  dk(  sJ ‚|j(                  t        j                  «       k(  sJ ‚|j*                  |j*                  k(  sJ ‚|j,                  |j,                  k(  sJ ‚t         j                  j                  t        j                  | t        j.                  «       ¬«      t        j                  |t        j.                  «       ¬«      gddg«      }|j                  dd	¬
«      }t        j                  | |g«      j                  t        j
                  d¬«      }t         j                  j                  |«      }t        j                   j#                  |j%                  «       |«       |j&                  dk(  sJ ‚|j(                  t        j
                  «       k(  sJ ‚|j*                  |j*                  k(  sJ ‚|j,                  |j,                  k(  sJ ‚y # 1 sw Y   �ŒšxY w)N)	r   r   r   r   Nr   r   r   r   )	ry   rÄ  rÅ  rÆ  rÇ  rÈ  rÉ  NrË  r   rz   r”   z6Can only convert a Table or RecordBatch with no nulls.rD   TF)Únull_to_nanrÏ  rÐ  rÑ  rï  )r   rÄ   r   rN   ru   rç   r,   r-   r>  rÞ  r[   rß  rà  rj   rá  râ  rµ   rñ  r]   r¶  r	   r_   r·  rG   r÷  s         r!   Útest_recordbatch_to_tensor_nullrû  †  s.  € â)€DÚ1€DÜ�N‰N×&Ñ&ä�H‰H�T¤§¡£
Ô+Ü�H‰H�T¤§
¡
£Ô-ð	
ð �ˆ:ó	€Eô 
�‰Ü
×ÑØFö
ð 	�‰Ô÷	
ð �_‰_¨¸ˆ_Ó?€FÜ
�‰˜˜t˜Ó%×,Ñ,¬R¯Z©Z¸sÐ,ÓC€AÜ�y‰y×#Ñ# AÓ&€Hä‡J�J×Ñ˜FŸO™OÓ-¨qÔ1Ø�;‰;˜"ÒÐÐØ�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜X×-Ñ-Ò-Ð-Ð-ô �N‰N×&Ñ&ä�H‰H�T¤§¡£
Ô+Ü�H‰H�T¤§¡£
Ô+ð	
ð �ˆ:ó	€Eð �_‰_¨¸ˆ_Ó?€Fä‡J�J×Ñ˜FŸO™OÓ-¨qÔ1Ø�;‰;˜"ÒÐÐØ�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜X×-Ñ-Ò-Ð-Ð-ô �N‰N×&Ñ&ä�H‰H�T¤§¡£	Ô*Ü�H‰H�T¤§¡£	Ô*ð	
ð �ˆ:ó	€Eð �_‰_¨¸ˆ_Ó?€FÜ
�‰˜˜t˜Ó%×,Ñ,¬R¯Z©Z¸sÐ,ÓC€AÜ�y‰y×#Ñ# AÓ&€Hä‡J�J×Ñ˜FŸO™OÓ-¨qÔ1Ø�;‰;˜"ÒÐÐØ�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜X×-Ñ-Ò-Ð-Ñ-÷a
ñ 
ús   Â Q	Ñ	Qc                  ó†  — t         j                  j                  t        j                  g t        j                  «       ¬«      t        j                  g t        j                  «       ¬«      gddg«      } | j                  «       }t        j                  g g g«      j                  t        j                  d¬«      }t         j                  j                  |«      }|j                  |j                  k(  sJ ‚|j                  t        j                  «       k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  dk(  sJ ‚y )Nr   rz   r”   rÐ  rÑ  )r   r   )r   rÄ   r   rN   rç   rÞ  r[   rß  rà  rá  râ  r¶  r	   r_   r·  )rÆ   rŸ   r�   rS   s       r!   Ú test_recordbatch_to_tensor_emptyrý  Ã  sê   € ä�N‰N×&Ñ&ä�H‰H�RœbŸj™j›lÔ+Ü�H‰H�RœbŸj™j›lÔ+ð	
ð �ˆ:ó	€Eð �_‰_Ó€Fä
�‰˜˜R˜Ó!×(Ñ(¬¯©¸3Ð(Ó?€AÜ�y‰y×#Ñ# AÓ&€Hà�;‰;˜(Ÿ-™-Ò'Ð'Ð'Ø�;‰;œ"Ÿ*™*›,Ò&Ð&Ð&Ø�<‰<˜8Ÿ>™>Ò)Ð)Ð)Ø�>‰>˜VÒ#Ð#Ñ#rU   c                  óŒ  — g d¢} g d¢}t         j                  j                  t        j                  | t        j                  «       ¬«      t        j                  |t        j
                  «       ¬«      gddg«      }t        j                  t         j                  d¬«      5  |j                  «        d d d «       y # 1 sw Y   y xY w)NrÂ  )	rz   r”   r    rz   r”   r    rz   r”   r    r   rz   r”   zDataType is not supportedrD   )
r   rÄ   r   rN   ru   rf  r,   r-   r>  rÞ  )ra   rb   rÆ   s      r!   Ú&test_recordbatch_to_tensor_unsupportedrÿ  Ö  sŒ   € Ú&€Dâ8€DÜ�N‰N×&Ñ&ä�H‰H�T¤§¡£
Ô+Ü�H‰H�T¤§¡£	Ô*ð	
ð �ˆ:ó	€Eô 
�‰Ü
×ÑØ)ö
ð 	�‰Ô÷	
÷ 
ñ 
ús   Â B:Â:Cc           
      ó´  — g d¢g d¢g}ddgg d¢g}g d¢g d¢g}t         j                  j                  t        j                  |t        j                  | «      ¬«      t        j                  |t        j                  | «      ¬«      t        j                  |t        j                  | «      ¬«      gg d	¢«      }g d
¢}g d¢}g d¢}|j                  d¬«      }t        j                  |||g«      j                  | d¬«      }	t         j                  j                  |	«      }
t        ||
t        j                  | «      d«       |j                  «       }t        j                  |||g«      j                  | d¬«      }	t         j                  j                  |	«      }
t        ||
t        j                  | «      d«       |j                  d«      }g d¢}g d¢}g d¢}|j                  d¬«      }t        j                  |||g«      j                  | d¬«      }	t         j                  j                  |	«      }
t        ||
t        j                  | «      d«       |j                  «       }t        j                  |||g«      j                  | d¬«      }	t         j                  j                  |	«      }
t        ||
t        j                  | «      d«       |j                  dd«      }g d¢}g d¢}g d¢}|j                  d¬«      }t        j                  |||g«      j                  | d¬«      }	t         j                  j                  |	«      }
t        ||
t        j                  | «      d«       |j                  «       }t        j                  |||g«      j                  | d¬«      }	t         j                  j                  |	«      }
t        ||
t        j                  | «      d«       y )Nr   )r   r   r   r   r   r   ry   rÄ  )rÅ  rÆ  rÇ  rÈ  rÉ  rÊ  rË  )rÍ  rÍ  rÍ  rÍ  rÍ  rÍ  )rÍ  rÍ  rÍ  r   rØ   rÂ  rÃ  rÌ  FrÎ  rÐ  rÑ  rÓ  rÔ  r   rÕ  rÖ  r×  rØ  r   rÙ  rÚ  rÛ  rÜ  )r   r~   r   r(   rÝ  rÞ  r[   rß  rà  rá  râ  rº  r}   )r»  ra   rb   rã  r€   Úarr1_fÚarr2_fÚarr3_frŸ   r�   rS   Útable1Útable2s                r!   Ú!test_table_to_tensor_uniform_typer  ç  s/  € ò Ò)Ð*€DØ�ˆHÒ2Ð3€DÚ*ªOÐ<€DÜ�H‰H× Ñ ä×Ñ˜T¬×(;Ñ(;¸GÓ(DÔEÜ×Ñ˜T¬×(;Ñ(;¸GÓ(DÔEÜ×Ñ˜T¬×(;Ñ(;¸GÓ(DÔEð	
ò ó€Eò )€FÚ1€FÚ:€Fà�_‰_ uˆ_Ó-€FÜ
�‰˜ ¨Ð0Ó1×8Ñ8¸ÈÐ8ÓL€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$@À"ÔEà�_‰_Ó€FÜ
�‰˜ ¨Ð0Ó1×8Ñ8¸ÈÐ8ÓL€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$@À"ÔEð �[‰[˜‹^€FÚ%€FÚ-€FÚ5€Fà×Ñ¨ÐÓ.€FÜ
�‰˜ ¨Ð0Ó1×8Ñ8¸ÈÐ8ÓL€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$@À"ÔEà×ÑÓ€FÜ
�‰˜ ¨Ð0Ó1×8Ñ8¸ÈÐ8ÓL€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$@À"ÔEà�[‰[˜˜AÓ€FÚ€FÚ!€FÚ&€Fà×Ñ¨ÐÓ.€FÜ
�‰˜ ¨Ð0Ó1×8Ñ8¸ÈÐ8ÓL€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$@À"ÔEà×ÑÓ€FÜ
�‰˜ ¨Ð0Ó1×8Ñ8¸ÈÐ8ÓL€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B×$7Ñ$7¸Ó$@À"ÕErU   c           	      ó  — t        j                  t        d«      «      t        j                  g d¢«      g}ddg} | ||¬«      }|j                  d«      }|j                  dk(  sJ ‚ | |D �cg c]  }|j                  d«      ‘Œ c}|¬«      }|j                  |«      sJ ‚|j                  dd«      } | |D �cg c]  }|j                  dd«      ‘Œ c}|¬«      }|j                  |«      sJ ‚|j                  d«      j                  |«      sJ ‚t        |j                  t        |«      «      «      dk(  sJ ‚t        j                  t        «      5  |j                  d	«       d d d «       |j                  dd«      j                  |d d «      sJ ‚|j                  dd«      j                  |d d «      sJ ‚|j                  dd«      j                  |dd
 «      sJ ‚|j                  dt        |«      dz
  «      j                  |dd  «      sJ ‚|j                  t        |«      dz
  d«      j                  |dd  «      sJ ‚|j                  t        |«      d
z
  d«      j                  |dd «      sJ ‚y c c}w c c}w # 1 sw Y   �ŒxY w)Nr   r¢   rD  rE  r{   r   r   r   rq   r   éþÿÿÿéüÿÿÿ)
r   rN   r…   r}   rÁ   rP   r3   r,   r-   rt   )	Úfactoryr<   r|   ÚobjÚslicedr�   rS   Úsliced2Ú	expected2s	            r!   Ú_table_like_slice_testsr  '  s;  € ä
�‰”�q“ÓÜ
�‰Ò$Ó%ð€Dð �4ˆL€Eá
�$˜eÔ
$€Cà�Y‰Y�q‹\€FØ�?‰?˜aÒÐÐá©DÓ1©D q˜Ÿ™ �
¨DÑ1¸Ô?€HØ�=‰=˜Ô"Ð"Ð"à�i‰i˜˜1‹o€GÙ±Ó5±¨1˜Ÿ™  A�°Ñ5¸UÔC€IØ�>‰>˜)Ô$Ð$Ð$ð �9‰9�Q‹<×Ñ˜sÔ#Ð#Ð#ô ˆs�y‰yœ˜S›Ó"Ó# qÒ(Ð(Ð(ä	�‰”zÕ	"Ø�	‰	�"Œ÷ 
#ð �9‰9�Q˜‹?×!Ñ! # b q 'Ô*Ð*Ð*Ø�9‰9�Q˜‹?×!Ñ! # b q 'Ô*Ð*Ð*Ø�9‰9�Q˜‹?×!Ñ! # a¨ (Ô+Ð+Ð+Ø�9‰9�Qœ˜C› 1™Ó%×,Ñ,¨S°°¨WÔ5Ð5Ð5Ø�9‰9”S˜“X ‘\ 1Ó%×,Ñ,¨S°°¨XÔ6Ð6Ð6Ø�9‰9”S˜“X ‘\ 1Ó%×,Ñ,¨S°°B¨ZÔ8Ð8Ñ8ùò- 2ùò 6÷ 
#Ñ	"ús   Á,I3Â8I8ÅI=É=Jc                  óH   — t        t        j                  j                  «      S r   )r  r   rÄ   r   rX   rU   r!   Útest_recordbatch_slice_getitemr  L  s   € Ü"¤2§>¡>×#=Ñ#=Ó>Ð>rU   c                  ó4   — t        t        j                  «      S r   )r  r   r€   rX   rU   r!   Útest_table_slice_getitemr  P  s   € Ü"¤2§8¡8Ó,Ð,rU   c            	      ób  — t        j                  dt        j                  g t        j                  d«      ¬«      i«      } | j	                  dd«      }|j                  «        t        j                  dt        j                  g t        j                  «       ¬«      i«      } | j                  «        y )Nrz   Úusr   r   )r   r€   rN   r¸   r}   r§   r(   r)   )r€   r�   s     r!   Útest_slice_zero_length_tabler  T  sw   € ô �H‰H�cœ2Ÿ8™8 B¬R¯\©\¸$Ó-?Ô@ÐAÓB€EØ—+‘+˜a Ó#€KØ×ÑÔä�H‰H�cœ2×+Ñ+¨B´R·Y±Y³[ÔAÐBÓC€EØ	‡O�OÕrU   c                  óÄ  — t        j                  dgd¬«      } t        j                  ddgd¬«      }t        j                  t        j                  | «      gdg«      }t        j                  t        j                  |«      gdg«      }t	        j
                  t        j                  «      5  t        j                  j                  ||g«       d d d «       y # 1 sw Y   y xY w)Nr   r¾  rÒ   rB   rC   rj   rE  )	r[   rN   r   r)  r,   r-   ÚArrowInvalidr~   r2  )r’  r“  rä  r•  s       r!   Ú"test_recordbatchlist_schema_equalsr  _  s“   € ä	�‰�1�#˜XÔ	&€BÜ	�‰�3˜�* IÔ	.€BÜ�_‰_œbŸh™h r›l˜^¨d¨VÓ4€FÜ�_‰_œbŸh™h r›l˜^¨d¨VÓ4€Fä	�‰”r—‘Õ	'Ü
�‰×Ñ˜v vÐ.Ô/÷ 
(×	'Ñ	'ús   Â+"CÃCc                  óˆ   — t        j                  t        j                  g d¢«      gdg¬«      } | d   j                  dk(  sJ ‚y r^  )r   r€   rN   ra  ©Úts    r!   Ú#test_table_column_sets_private_namer  j  s6   € ä
�‰”"—(‘(š<Ó(Ð)°$°Ô8€AØˆQ‰4�:‰:˜ÒÐÑrU   c                  ó*  — t         j                  j                  g g ¬«      } | j                  | «      sJ ‚| j                  d «      rJ ‚t         j                  j                  g g ddi¬«      }| j                  |d¬«      rJ ‚| j                  |«      sJ ‚y )Nr{   rM  rN  rO  TrQ  )r   r~   r   rP   )r€   r-  s     r!   Útest_table_equalsr  p  s‰   € Ü�H‰H× Ñ  ¨2Ð Ó.€EØ�<‰<˜ÔÐÐð �|‰|˜DÔ!Ð!Ð!ä�H‰H× Ñ  ¨2¸ÀÐ8HÐ ÓI€EØ�|‰|˜E°$ˆ|Ô7Ð7Ð7Ø�<‰<˜ÔÐÑrU   c                  ó¬  — t        j                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      } t        j
                  t        j                  dg«      t        j                  dg«      gddg¬«      }t         j                  j                  |g| «      }|j                  j                  | «      sJ ‚|j                  d«      t        j                  dgg«      k(  sJ ‚|j                  d«      t        j                  dgg«      k(  sJ ‚t        j                  t        j                  dt        j                  «       «      g«      }t        j                  t         j                  «      5  t         j                  j                  |g|«       d d d «       t        j
                  t        j                  dg«      gdg«      }t        j                  t         j                  «      5  t         j                  j                  |g| «       d d d «       y # 1 sw Y   ŒƒxY w# 1 sw Y   y xY w)Nrz   r”   r   g…ëQ¸	@r{   r   )r   rË   rå   rF   rj   r)  rN   r~   r2  rP   r¦   r(   r,   r-   r  )rË   rÆ   r€   Úincompatible_schemaÚincompatible_batchs        r!   Ú"test_table_from_batches_and_schemar#  |  sœ  € Ü�Y‰YÜ
�‰�”b—h‘h“jÓ!Ü
�‰�”b—j‘j“lÓ#ðó €Fô �O‰OœRŸX™X q c›]¬B¯H©H°d°VÓ,<Ð=Ø#&¨ *ô.€Eä�H‰H×!Ñ! 5 '¨6Ó2€EØ�<‰<×Ñ˜vÔ&Ð&Ð&Ø�<‰<˜‹?œb×.Ñ.°°¨uÓ5Ò5Ð5Ð5Ø�<‰<˜‹?œb×.Ñ.°°¨xÓ8Ò8Ð8Ð8äŸ)™)¤R§X¡X¨c´2·8±8³:Ó%>Ð$?Ó@ÐÜ	�‰”r—‘Õ	'Ü
�‰×Ñ˜u˜gÐ':Ô;÷ 
(ô Ÿ™¬"¯(©(°A°3«-¨¸3¸%Ó@ÐÜ	�‰”r—‘Õ	'Ü
�‰×ÑÐ1Ð2°FÔ;÷ 
(Ð	'÷	 
(Ð	'ú÷ 
(Ð	'ús   Æ"H>È"I
È>IÉ
Ic            	      ó@  — ddl m}  dd l}|j                  dt	        t        d«      «      i«      }|j                  dt	        t        dd«      «      i«      }t        j                  j                  |d¬«      }t        j                  j                  |d¬«      }t        j                  j                  |||g«      }|j                  |||gd¬	«      }|j                  «       }t        |«      d
k(  sJ ‚ | t        j                  j                  |«      j                  «       |«       |j                  d¬«      }t	        t        t        |«      «      g d¢k(  sJ ‚ | |j                  «       |«        | t        j                  j                  |«      j                  «       |«       t        j                  j                  t!        |||g«      «      }	|j#                  |	«      sJ ‚t%        j&                  t(        «      5  |j                  d¬«       d d d «       y # 1 sw Y   y xY w)Nr   )rÍ   rz   ry   rÅ  F)Úpreserve_indexT)Úignore_indexr   rÜ  r°  )ry   rÜ  r   ry   )r´   rÍ   r¥   r¿   r0   r…   r   rÄ   rÅ   r~   r2  ÚconcatÚ
to_batchesr3   r§   ÚmapÚiterrP   r,   r-   r.   )
rÍ   rª   Údf1Údf2rä  r•  r€   Úexpected_dfr8  Útable_from_iters
             r!   Útest_table_to_batchesr/  ‘  s­  € å1Ûà
�,‰,˜œT¤%¨£)›_Ð-Ó
.€CØ
�,‰,˜œT¤%¨¨B£-Ó0Ð1Ó
2€Cä�^‰^×'Ñ'¨¸EÐ'ÓB€FÜ�^‰^×'Ñ'¨¸EÐ'ÓB€Fä�H‰H×!Ñ! 6¨6°6Ð":Ó;€Eà—)‘)˜S # s˜O¸$�)Ó?€Kà×ÑÓ €GÜˆw‹<˜1ÒÐÐá”r—x‘x×,Ñ,¨WÓ5×?Ñ?ÓAØ"ô$ð ×Ñ¨RÐÓ0€GÜ””C˜Ó!Ó"¢oÒ5Ð5Ð5á�u—‘Ó(¨+Ô6Ù”r—x‘x×,Ñ,¨WÓ5×?Ñ?ÓAØ"ô$ô —h‘h×+Ñ+¬D°&¸&À&Ð1IÓ,JÓK€OØ�<‰<˜Ô(Ð(Ð(ä	�‰”zÕ	"Ø×Ñ qÐÔ)÷ 
#×	"Ñ	"ús   Ç8HÈHc                 óâ  — t        j                  t        d«      d¬«      t        j                  g d¢d¬«      g}| j                  |d¬«      }|j	                  «        |j
                  j                  rJ ‚t        |«      dk(  sJ ‚|j                  dk(  sJ ‚|j                  t        |«      k(  sJ ‚|j                  dk(  sJ ‚|j                  «       d	k(  sJ ‚|j                  d	k(  sJ ‚t        j                  |«      t        j!                  |«      |j                  «       z   k\  sJ ‚|j#                  «       }|t%        d
g d¢fdg d¢fg«      k(  sJ ‚t'        |t(        «      sJ ‚|| j+                  ||j
                  ¬«      k(  sJ ‚t-        j.                  t0        «      5  |d    d d d «       g }|j3                  «       D ]ñ  }| t         j4                  u r§t7        |«      t         j8                  u sJ ‚|j;                  «       D ]  }|�ŒJ ‚ t-        j.                  t0        «      5  |j=                  d«       d d d «       t-        j.                  t0        «      5  |j=                  |j>                  «       d d d «       n%tA        t7        |«      t         jB                  «      sJ ‚|jE                  |«       Œó |jF                  |k(  sJ ‚|| j                  ||jH                  ¬«      k(  sJ ‚|| j                  |dd  |jH                  dd  ¬«      k7  sJ ‚||k7  sJ ‚t        j
                  t        jJ                  dt        jL                  «       ddi¬«      t        jJ                  dt        jN                  «       «      gddi¬«      }| j                  ||¬«      }|j
                  |k(  sJ ‚tQ        jR                  |«      } |«       €J ‚~ |«       �J ‚y # 1 sw Y   �Œ*xY w# 1 sw Y   �Œ§xY w# 1 sw Y   �ŒQxY w)Nr   ræ   r   rC  ru   rÉ   r{   ©r   r   é   rz   )r   r   r   r   r   r”   r(  r   rq   r   rD  rM  rN  r~  rE  r|  r}  )*r   rN   r…   r   r+   rË   rP  r3   rÁ   rq  r_   r&   r9   r5   r6   r7   r8   Ú	to_pydictr   r   ÚdictÚfrom_pydictr,   r-   rt   rF  r~   r	   r‹   r2   ró   Ú
num_chunksÚ
issubclassÚArrayrš   rG  rH  rå   ræ   ru   r:   r;   )	ræ  r<   r€   ÚpydictrG  r«   ró   rË   r>   s	            r!   Útest_table_basicsr:  ´  s†  € ô 	�‰”�q“ Ô(Ü
�‰Ò'¨gÔ6ð€Dð �O‰O˜D¨
ˆOÓ3€EØ	‡N�NÔà�|‰|×$Ò$Ð$Ð$Üˆu‹:˜Š?Ðˆ?Ø�>‰>˜QÒÐÐØ×Ñ¤ D£	Ò)Ð)Ð)Ø�;‰;˜&Ò Ð Ð à×&Ñ&Ó(Ð,AÒAÐAÐAØ�<‰<Ð0Ò0Ð0Ð0Ü�=‰=˜Ó¤6×#4Ñ#4Øó$Ø×,Ñ,Ó.ñ$/ò /ð /ð /ð �_‰_Ó€FØ”[Ø	ŠoÐØ	Ò$Ð%ð"ó ò ð ð ô �fœdÔ#Ð#Ð#Ø�C—O‘O F°5·<±<�OÓ@Ò@Ð@Ð@ä	�‰”zÕ	"àˆaŠ÷ 
#ð €GØ× Ñ Ö"ˆà”"—(‘(‰?Ü˜“9¤§¡Ñ/Ð/Ð/àŸ™Ö)�ØÑ(Ð(Ð(ð *ô —‘œzÕ*Ø—	‘	˜"”÷ +ô —‘œzÕ*Ø—	‘	˜#Ÿ.™.Ô)÷ +Ð*ô œd 3›i¬¯©Ô2Ð2Ð2à�‰�sÕð# #ð& �=‰=˜GÒ#Ð#Ð#Ø�C—O‘O G°5×3EÑ3E�OÓFÒFÐFÐFØ�C—O‘O G¨A¨B K°u×7IÑ7IÈ!È"Ð7M�OÓNÒNÐNÐNØ�GÒÐÐô �Y‰YœŸ™ ¤r§x¡x£zØ+0°'Ð*:ô<äŸ™ ¤r§x¡x£zÓ2ð4ð "(¨Ð 0ô2€Fð �O‰O˜D¨ˆOÓ0€EØ�<‰<˜6Ò!Ð!Ð!ä	�‰�UÓ	€BÙ‹4ÐÐÐØÙ‹4ˆ<Ð‰<÷Q 
#Ñ	"ú÷ +Ñ*ú÷ +Ñ*ús$   ÆO
È OÉO$Ï
OÏO!	Ï$O.	c                  óŒ   — t        j                  t        d¬«      5  t        j                  «        d d d «       y # 1 sw Y   y xY w)Nr~   rD   )r,   r-   ri   r   r~   rX   rU   r!   Útest_table_dunder_initr<    s%   € Ü	�‰”y¨Ö	0Ü
�‰Œ
÷ 
1×	0Ñ	0úrú   c                  ó
  — t        j                  ddg«      } t        j                  ddg«      }t        j                  dt        j                  «       t	        dd¬«      ¬	«      }t        j                  d
t        j                  «       d¬«      }t         j
                  j                  | |gt        j                  ||g«      ¬«      }d|j                  d«      j                  v sJ ‚|j                  d«      j                  du sJ ‚y )Nr   r   r   r   Úfield1ÚAÚBrÉ   r~  Úfield2F©Únullabler(  rŽ  r   )
r   rN   rå   rF   r4  r~   r   rË   rP  rC  )Úarr0ra   Úfield0r>  r€   s        r!   Ú0test_table_from_arrays_preserves_column_metadatarF    sÆ   € ä�8‰8�Q˜�FÓ€DÜ�8‰8�Q˜�FÓ€DÜ�X‰X�h¤§¡£
´T¸CÀ3Ô5GÔH€FÜ�X‰X�h¤§¡£
°UÔ;€FÜ�H‰H× Ñ  $¨ Ü(*¯	©	°6¸6Ð2BÓ(Cð !ó E€Eà�5—;‘;˜q“>×*Ñ*Ñ*Ð*Ð*Ø�;‰;�q‹>×"Ñ" eÑ+Ð+Ñ+rU   c                  ó°  — t        j                  t        d«      «      t        j                  g d¢«      g} t        j                  t
        «      5  t         j                  j                  | g d¢¬«       d d d «       t        j                  t
        «      5  t         j                  j                  | dg¬«       d d d «       y # 1 sw Y   ŒNxY w# 1 sw Y   y xY wrt  )r   rN   r…   r,   r-   r.   r~   r   rn   s    r!   Ú$test_table_from_arrays_invalid_namesrH    s‘   € ä
�‰”�q“ÓÜ
�‰Ò$Ó%ð€Dô 
�‰”zÕ	"Ü
�‰×Ñ˜TªÐÔ9÷ 
#ô 
�‰”zÕ	"Ü
�‰×Ñ˜T¨#¨ÐÔ/÷ 
#Ð	"÷ 
#Ð	"ú÷ 
#Ð	"ús   Á$C Â#CÃ C	ÃCc                  ó.  — t        t        d«      «      g d¢g} t        j                  | ddg¬«      }t        j                  j                  | ddg¬«      }|j                  |«      sJ ‚t        j                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      }t        j                  | |¬«      }t        j                  j                  | |¬«      }|j                  |«      sJ ‚y )Nr   r¢   rz   r”   r{   r(  )r0   r…   r   r€   r~   r   rP   rË   rå   r½  rF   )r<   rŸ   rS   rË   s       r!   Útest_table_from_listsrJ    sÔ   € äŒU�1‹X‹Úð€Dô
 �X‰X�d 3¨ *Ô-€FÜ�x‰x×#Ñ# D°°c°
Ð#Ó;€HØ�=‰=˜Ô"Ð"Ð"ä�Y‰YÜ
�‰�”b—i‘i“kÓ"Ü
�‰�”b—h‘h“jÓ!ðó €Fô �X‰X�d 6Ô*€FÜ�x‰x×#Ñ# D°Ð#Ó8€HØ�=‰=˜Ô"Ð"Ñ"rU   c                 óP  — t        j                  ddgddggt        j                  «       ¬«      t        j                  g d¢gt        j                  «       ¬«      g}t        j                  t        j
                  dt        j                  «       «      t        j
                  dt        j                  «       «      gd	d
i¬«      }t         j                  j                  ||¬«      }| j                  | j                  |«      «      }|j                  «        |j                  |«      sJ ‚y )Nr   r   r   r   r   )ÚsomeÚstringsNÚ rz  Ústrsr|  r}  r~  r(  )r   r(   r¾  r)   rË   rå   r~   r   r›   rœ   r+   rP   )r�   r<   rË   r€   rŸ   s        r!   Útest_table_picklerP  1  sÜ   € ä
×Ñ˜1˜a˜& 1 a &Ð)´·	±	³Ô<Ü
×ÑÒ7Ð8¼r¿y¹y»{ÔKð€Dô �Y‰YœŸ™ ¬¯©«Ó5ÜŸ™ ¬¯©«Ó5ð7à!'¨Ð 0ô2€Fô �H‰H× Ñ  ¨fÐ Ó5€Eà× Ñ  ×!4Ñ!4°UÓ!;Ó<€FØ
‡O�OÔØ�=‰=˜ÔÐÑrU   c                  óR  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g} t         j                  j	                  | d¬«      }|j                  d«      j                  |j                  j                  d«      «      sJ ‚|j                  d«      j                  |j                  j                  d«      «      sJ ‚t        j                  t        «      5  |j                  d«       d d d «       t        j                  t        «      5  |j                  d «       d d d «       t        j                  t        «      5  |j                  d	«       d d d «       y # 1 sw Y   ŒpxY w# 1 sw Y   ŒIxY w# 1 sw Y   y xY wr‚  )r   rN   r…   r~   r   rå   rP   rË   r,   r-   rƒ  ri   rt   ©r<   r€   s     r!   Útest_table_get_fieldrS  @  s"  € ä
�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dô
 �H‰H× Ñ  ¨_Ð Ó=€Eà�;‰;�sÓ×"Ñ" 5§<¡<×#5Ñ#5°cÓ#:Ô;Ð;Ð;Ø�;‰;�q‹>× Ñ  §¡×!3Ñ!3°CÓ!8Ô9Ð9Ð9ä	�‰”xÕ	 Ø�‰�CÔ÷ 
!ô 
�‰”yÕ	!Ø�‰�DÔ÷ 
"ô 
�‰”zÕ	"Ø�‰�AŒ÷ 
#Ð	"÷ 
!Ð	 ú÷ 
"Ð	!ú÷ 
#Ð	"úr…  c                  óÌ  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g} t         j                  j	                  | d¬«      }|j                  d«      j                  |j                  d«      «      sJ ‚t        j                  t        d¬	«      5  |j                  d
«       d d d «       t        j                  t        «      5  |j                  d «       d d d «       t        j                  t        «      5  |j                  d«       d d d «       y # 1 sw Y   ŒpxY w# 1 sw Y   ŒIxY w# 1 sw Y   y xY wr‡  )r   rN   r…   r~   r   r¦   rP   r,   r-   rƒ  ri   rt   rR  s     r!   Útest_table_select_columnrU  U  sû   € ä
�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dô
 �H‰H× Ñ  ¨_Ð Ó=€Eà�<‰<˜Ó×#Ñ# E§L¡L°£OÔ4Ð4Ð4ä	�‰”xØAö
Cà�‰�SÔ÷
Cô 
�‰”yÕ	!Ø�‰�TÔ÷ 
"ô 
�‰”zÕ	"Ø�‰�QŒ÷ 
#Ð	"÷
Cð 
Cú÷ 
"Ð	!ú÷ 
#Ð	"úr‰  c                  ó<  — t        j                  t        j                  g d¢«      t        j                  g d¢«      t        j                  g d¢«      gg d¢¬«      } t        j                  t
        d¬«      5  | j                  d«       d d d «       y # 1 sw Y   y xY w)	Nr   r   r   r¯   r{   z"Field "a" exists 2 times in schemarD   rz   )r   r€   rN   r,   r-   rƒ  r¦   ©r€   s    r!   Ú!test_table_column_with_duplicatesrX  j  so   € ä�H‰H”b—h‘hšyÓ)Ü—h‘hšyÓ)Ü—h‘hšyÓ)ð+â2AôC€Eô 
�‰”xØAö
Cà�‰�SÔ÷
C÷ 
Cñ 
Cús   Á7BÂBc                 ór  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g}| j                  |d¬«      }t        j                  d|d   j
                  «      }|j                  d||d   «      }|j                  ||d   «      }| j                  ||d   gz   d	¬«      }|j                  |«      sJ ‚|j                  |«      sJ ‚|j                  d
||d   «      }| j                  |d   g|z   d¬«      }|j                  |«      sJ ‚y )Nr   r¢   ry   rØ   r{   r•   r   r   )rz   r”   r    r•   r   )r•   rz   r”   r    )	r   rN   r…   r   rå   r	   Ú
add_columnÚappend_columnrP   )ræ  r<   r€   Ú	new_fieldÚt2Út3rS   Út4s           r!   Útest_table_add_columnr`  u  s(  € ô 	�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dð
 �O‰O˜D¨ˆOÓ8€Eä—‘˜˜d 1™gŸl™lÓ+€IØ	×	Ñ	˜!˜Y¨¨Q©Ó	0€BØ	×	Ñ	˜Y¨¨Q©Ó	0€Bà�‰˜t t¨A¡w iÑ/Ø%9ð ó ;€Hà�9‰9�XÔÐÐØ�9‰9�XÔÐÐà	×	Ñ	˜!˜Y¨¨Q©Ó	0€BØ�‰  Q¡˜y¨4Ñ/Ø%9ð ó ;€Hà�9‰9�XÔÐÑrU   c                 ó´  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g}| j                  |d¬«      }t        j                  d|d   j
                  «      }|j                  d||d   «      }t        |«      }|d   |d<   | j                  |d	¬«      }|j                  |«      sJ ‚y )
Nr   r¢   ry   rØ   r{   r•   r   r   )r•   r”   r    )	r   rN   r…   r   rå   r	   Ú
set_columnr0   rP   )ræ  r<   r€   r\  r]  Úexpected_datarS   s          r!   Útest_table_set_columnrd  “  s¿   € ô 	�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dð
 �O‰O˜D¨ˆOÓ8€Eä—‘˜˜d 1™gŸl™lÓ+€IØ	×	Ñ	˜!˜Y¨¨Q©Ó	0€Bä˜“J€MØ˜A‘w€M�!ÑØ�‰˜}Ø%4ð ó 6€Hà�9‰9�XÔÐÑrU   c                 óB  — t        j                  t        d«      «      }t        j                  g d¢«      }t        j                  t        dd«      «      }| j                  |||gd¬«      }|j	                  ddg«      }|j	                  d«      }| j                  |gd¬«      }|j                  |«      sJ ‚| j                  ||gd	¬«      }|j                  |«      sJ ‚t        j                  t        d
¬«      5  |j	                  dg«       ddd«       y# 1 sw Y   yxY w)z& drop one or more columns given labelsr   r¢   ry   rØ   r{   rz   r”   ©r    ©r”   r    úColumn 'd' not foundrD   r•   N)	r   rN   r…   r   Údrop_columnsrP   r,   r-   rƒ  )	ræ  rz   r”   r    r€   r]  r^  Úexp_t2Úexp_t3s	            r!   Útest_table_drop_columnsrl  ¬  sð   € ô 	�‰”�q“Ó€AÜ
�‰Ò$Ó%€AÜ
�‰”�q˜"“Ó€Aà�O‰O˜Q  1˜I¨_ˆOÓ=€EØ	×	Ñ	˜S #˜JÓ	'€BØ	×	Ñ	˜CÓ	 €Bà�_‰_˜a˜S¨ˆ_Ó/€FØ�=‰=˜ÔÐÐØ�_‰_˜a ˜V¨;ˆ_Ó7€FØ�=‰=˜ÔÐÐô 
�‰”xÐ'=Ö	>Ø×Ñ˜C˜5Ô!÷ 
?×	>Ñ	>ús   Ã9DÄDc                  ó–  — t        j                  t        d«      «      } t        j                  g d¢«      }t        j                  t        dd«      «      }t         j                  j	                  | ||gd¬«      }|j                  ddg«      }|j                  d«      }t         j                  j	                  |gd¬«      }|j                  |«      sJ ‚t         j                  j	                  ||gd	¬«      }|j                  |«      sJ ‚t        j                  t        d
¬«      5  |j                  dg«       ddd«       y# 1 sw Y   yxY w)z, verify the alias of drop_columns is workingr   r¢   ry   rØ   r{   rz   r”   rf  rg  rh  rD   r•   N)
r   rN   r…   r~   r   ÚdroprP   r,   r-   rƒ  )rz   r”   r    r€   r]  r^  rj  rk  s           r!   Útest_table_dropro  Ç  sü   € ä
�‰”�q“Ó€AÜ
�‰Ò$Ó%€AÜ
�‰”�q˜"“Ó€Aä�H‰H× Ñ  ! Q¨ °/Ð ÓB€EØ	�‰�S˜#�JÓ	€BØ	�‰�C‹€Bä�X‰X×!Ñ! 1 #¨VÐ!Ó4€FØ�=‰=˜ÔÐÐÜ�X‰X×!Ñ! 1 a &°Ð!Ó<€FØ�=‰=˜ÔÐÐô 
�‰”xÐ'=Ö	>Ø�
‰
�C�5Ô÷ 
?×	>Ñ	>ús   Ä#D?Ä?Ec                 ód  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g}| j                  |d¬«      }|j	                  d«      }|j                  «        | j                  |dd  d¬«      }|j                  |«      sJ ‚y )	Nr   r¢   ry   rØ   r{   r   r   rg  )r   rN   r…   r   Úremove_columnr+   rP   )ræ  r<   r€   r]  rS   s        r!   Útest_table_remove_columnrr  Û  s‘   € ô 	�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dð
 �O‰O˜D¨ˆOÓ8€Eà	×	Ñ	˜QÓ	€BØ‡K�K„MØ�‰˜t A B˜x¨zˆÓ:€HØ�9‰9�XÔÐÑrU   c                 ón  — t        j                  t        d«      «      g}| j                  |dg¬«      }|j	                  d«      }|j                  «        t        |«      t        |«      k(  sJ ‚|j                  d|j                  d«      |d   «      }|j                  «        |j                  |«      sJ ‚y )Nr   rz   r{   r   )
r   rN   r…   r   rq  r+   r3   rZ  rå   rP   )ræ  r<   r€   r]  r^  s        r!   Útest_table_remove_column_emptyrt  ð  s™   € ô 	�‰”�q“Óð€Dð �O‰O˜D¨¨ˆOÓ.€Eà	×	Ñ	˜QÓ	€BØ‡K�K„MÜˆr‹7”c˜%“jÒ Ð Ð à	�‰�q˜%Ÿ+™+ a›.¨%°©(Ó	3€BØ‡K�K„MØ�9‰9�UÔÐÑrU   c                  ó¶   — g } ddg}d}t        j                  t        |¬«      5  t        j                  j                  | |¬«       d d d «       y # 1 sw Y   y xY w)Nrz   r”   z?Length of names [(]2[)] does not match length of arrays [(]0[)]rD   r{   )r,   r-   r.   r   r~   r   )r<   r|   Úmessages      r!   Útest_empty_table_with_namesrw    sI   € à€DØ�#ˆJ€EàIð ä	�‰”z¨Ö	1Ü
�‰×Ñ˜T¨ÐÔ/÷ 
2×	1Ñ	1ús   ¤"AÁAc                  ó²   — t        j                  g «      } | j                  g k(  sJ ‚| j                  t         j                  j                  g g «      «      sJ ‚y r   )r   r€   rH  rP   r~   r   rW  s    r!   Útest_empty_tablery    sF   € Ü�H‰H�R‹L€Eà×Ñ Ò#Ð#Ð#Ø�<‰<œŸ™×,Ñ,¨R°Ó4Ô5Ð5Ñ5rU   c                 óÊ  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g}| j                  |g d¢¬«      }|j                  g d¢k(  sJ ‚| j                  |g d¢¬«      }|j                  g d¢«      }|j                  «        |j                  g d¢k(  sJ ‚|j                  |«      sJ ‚|j                  d«      }|j                  «        |j                  g d¢k(  sJ ‚|j                  |«      sJ ‚d}t        j                  t        |¬«      5  |j                  d	«       d d d «       y # 1 sw Y   y xY w)
Nr   r¢   ry   rØ   r{   )ÚehÚbeeÚseaz.names must be a list or dict not <class 'str'>rD   z
not a list)r   rN   r…   r   rH  Úrename_columnsr+   rP   r,   r-   ri   )ræ  r<   r€   rS   r]  r^  rv  s          r!   Útest_table_rename_columnsr    s$  € ô 	�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dð
 �O‰O˜DªˆOÓ8€EØ×Ñ¢Ò0Ð0Ð0à�‰˜tÒ+?ˆÓ@€Hð 
×	Ñ	Ò2Ó	3€BØ‡K�K„MØ�?‰?Ò2Ò2Ð2Ð2Ø�9‰9�XÔÐÐð 
×	Ñ	Ð2Ó	3€BØ‡K�K„MØ�?‰?Ò2Ò2Ð2Ð2Ø�9‰9�XÔÐÐà>€GÜ	�‰”y¨Ö	0Ø×Ñ˜\Ô*÷ 
1×	0Ñ	0ús   Ä>EÅE"c                 ó¬  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  t        dd«      «      g}| j                  |g d¢¬«      }|j                  g d¢k(  sJ ‚| j                  |g d¢¬«      }|j                  ddd	œ«      }|j                  «        ||k(  sJ ‚| j                  |g d
¢¬«      }| j                  |g d¢¬«      }|j                  ddd	œ«      }|j                  «        ||k(  sJ ‚t        j                  t        d¬«      5  |j                  dddœ«       d d d «       y # 1 sw Y   y xY w)Nr   r¢   ry   rØ   r{   )r{  r”   r}  r{  r}  )rz   r    )rz   rz   r    )r{  r{  r}  rh  rD   )rz   r•   )
r   rN   r…   r   rH  r~  r+   r,   r-   rƒ  )ræ  r<   r€   rS   Út1r]  s         r!   Ú!test_table_rename_columns_mappingr‚  ;  s!  € ô 	�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dð
 �O‰O˜DªˆOÓ8€EØ×Ñ¢Ò0Ð0Ð0à�‰˜tÒ+=ˆÓ>€HØ	×	Ñ	 D¨uÑ5Ó	6€BØ‡K�K„MØ�Š>Ðˆ>ð �O‰O˜DªˆOÓ8€EØ�‰˜tÒ+>ˆÓ?€HØ	×	Ñ	 D¨uÑ5Ó	6€BØ‡K�K„MØ�Š>Ðˆ>ô 
�‰”xÐ'>Ö	?Ø×Ñ 4¨eÑ4Ô5÷ 
@×	?Ñ	?ús   Ä,E
Å
Ec                  óª  — t        j                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      } t        j                  t        j                  d| «      g«      }t        j
                  ddg| ¬«      }t        j
                  ddg|¬«      }t        j
                  d	d
gt        j                  «       ¬«      }t         j                  j                  |||gg d¢¬«      }|j                  «       }|j                  «        t         j                  j                  t        j
                  ddgt        j                  «       ¬«      t        j
                  ddgt        j                  «       ¬«      t        j
                  ddg| ¬«      |gg d¢¬«      }|j                  |«      sJ ‚y )Nr�   r�   Únestrà   rá   r   )©é   g      )@)©é   g      -@FTrØ   r{   r   r   r˜   râ   r…  r‡  )za.xza.yzb.nestr    )r   rä   rå   ræ   rç   rN   rW   r~   r   rè   r+   rP   )Úty1Úty2rz   r”   r    r€   r]  rS   s           r!   Útest_table_flattenr‹  \  sL  € Ü
�)‰)”R—X‘X˜c¤2§8¡8£:Ó.Ü—X‘X˜c¤2§:¡:£<Ó0ð2ó 3€Cä
�)‰)”R—X‘X˜f cÓ*Ð+Ó
,€CÜ
�‰�(˜HÐ%¨CÔ0€AÜ
�‰�- Ð/°cÔ:€AÜ
�‰�%˜�¤R§X¡X£ZÔ0€Aä�H‰H× Ñ  ! Q¨ ²/Ð ÓB€EØ	�‰‹€BØ‡K�K„MÜ�x‰x×#Ñ#Ü
�‰�!�Q�œbŸh™h›jÔ)Ü
�‰�#�s�¤"§*¡*£,Ô/Ü
�‰�*˜jÐ)°Ô4Ø	ð	%ò
 ,ð $ó -€Hð �9‰9�XÔÐÑrU   c                  óü  — t        j                  t        j                  dg«      t        j                  dg«      gddg¬«      } t        j                  t        j                  dg«      t        j                  dg«      gddg¬«      }t         j                  j	                  | |g«      }|j                  «       }|j                  «        |j                  |«      sJ ‚|j                  D ]  }|j                  dk(  rŒJ ‚ y )Nr   rz   rY  rZ  r{   r   r”   )
r   r)  rN   r~   r2  rO   r+   rP   rG  r6  )rä  r•  r€   Úcombinedr    s        r!   Útest_table_combine_chunksrŽ  p  sÉ   € Ü�_‰_œbŸh™h¨ s›m¬R¯X©X°s°e«_Ð=Ø$(¨$ <ô1€Fä�_‰_œbŸh™h¨ s›m¬R¯X©X°s°e«_Ð=Ø$(¨$ <ô1€Fä�H‰H×!Ñ! 6¨6Ð"2Ó3€EØ×#Ñ#Ó%€HØ×ÑÔØ�?‰?˜5Ô!Ð!Ð!Ø×ÔˆØ�|‰|˜qÓ Ð Ð ñ rU   c                  óº  — t        j                  t        j                  g d¢«      j                  «       t        j                  g d¢«      j                  «       t        j                  g d¢«      gg d¢¬«      } t        j                  t        j                  g d¢«      j                  «       t        j                  g d¢«      j                  «       t        j                  g d¢«      gg d¢¬«      }t         j                  j                  | |g«      }|j                  d	d
i«      }|j                  d«      j                  d«      j                  j                  t        j                  ddg«      «      sJ ‚|j                  d«      j                  d«      j                  j                  t        j                  ddg«      «      sJ ‚|j                  d«      j                  d«      j                  j                  t        j                  g d¢«      «      sJ ‚|j                  d«      j                  d«      j                  j                  t        j                  ddg«      «      sJ ‚|j                  t        j                  «       «      }t        j                  g d¢«      }t        j                  g d¢«      }|j                  d«      j                  d«      j                  j                  |«      sJ ‚|j                  d«      j                  d«      j                  j                  |«      sJ ‚|j                  d«      j                  d«      j                  j                  |«      sJ ‚|j                  d«      j                  d«      j                  j                  |«      sJ ‚|j                  «       g d¢g d¢g d¢dœk(  sJ ‚|j                  j                  d	d
ik(  sJ ‚y )Nrí   )é{   éÈ  r‘  é  )TFNNrØ   r{   )rð   rî   Nrð   )r‘  r’  r’  N)FNNTs   key1s   value1r   rî   rï   r   rð   )r�  r‘  r’  r‘  r’  rñ   )rî   rï   Nrî   rð   rî   Nrð   )r�  r‘  r‘  r’  r‘  r’  r’  N)TFNNFNNT)r   r)  rN   rò   r~   r2  r‘  r¦   ró   rô   rP   rõ   Údefault_memory_poolr3  rË   rP  )rä  r•  r€   Úexpected_dict_0Úexpected_dict_1s        r!   Útest_table_unify_dictionariesr–  }  s  € Ü�_‰_Ü
�‰Ò,Ó-×?Ñ?ÓAÜ
�‰Ò%Ó&×8Ñ8Ó:Ü
�‰Ò*Ó+ð-ò 5DôE€Fô �_‰_Ü
�‰Ò.Ó/×AÑAÓCÜ
�‰Ò&Ó'×9Ñ9Ó;Ü
�‰Ò*Ó+ð-ò 5DôE€Fô
 �H‰H×!Ñ! 6¨6Ð"2Ó3€EØ×)Ñ)¨7°IÐ*>Ó?€EØ�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5Ü
�‰�%˜�Ó ô"ð "ð "à�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5Ü
�‰�&˜%�Ó!ô#ð #ð #à�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5Ü
�‰’Ó!ô#ð #ð #à�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5Ü
�‰�#�s�Óôð ð ð ×$Ñ$¤R×%;Ñ%;Ó%=Ó>€EÜ—h‘hÒ5Ó6€OÜ—h‘hšÓ/€OØ�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5°oÔFÐFÐFØ�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5°oÔFÐFÐFØ�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5°oÔFÐFÐFØ�<‰<˜‹?× Ñ  Ó#×.Ñ.×5Ñ5°oÔFÐFÐFà�?‰?ÓÚEÚ6Ú?ñ!ò ð ð ð
 �<‰<× Ñ  W¨iÐ$8Ò8Ð8Ñ8rU   c                  óÔ  — t        j                  dddœddigt        j                  t        j                  «       t        j                  «       «      ¬«      g} t         j
                  j                  | dg¬«      }|j                  d	¬
«      }d|v sJ ‚|d   }t        |«      dk(  sJ ‚|dddœddigk(  sJ ‚|j                  d	¬
«      }t        |«      dk(  sJ ‚|ddddœidddiigk(  sJ ‚y )Nr   r   )r�   r�   Úzr   r   rz   r{   Ústrict)Úmaps_as_pydicts)
r   rN   Úmap_r)   ru   r~   r   r3  r3   r*   )rž   r€   Ú
table_dictÚcolumn_listÚ
table_lists        r!   Útest_table_maps_as_pydictsrŸ  ¢  sú   € ä
�‰Ø˜1Ñ  Q˜xÐ(Ü—‘œŸ™›¤b§h¡h£jÓ1ô	
ð€Fô �H‰H× Ñ  °¨uÐ Ó5€Eà—‘°�Ó:€JØ�*ÑÐÐØ˜S‘/€KÜˆ{Ó˜qÒ Ð Ð Ø ¨Ñ+¨c°1¨XÐ6Ò6Ð6Ð6à—‘°�Ó:€JÜˆz‹?˜aÒÐÐØ˜3 a¨aÑ 0Ð1°C¸#¸q¸°?ÐCÒCÐCÑCrU   c            
      óÊ  — t        t        d«      «      g d¢g} t        t        dd«      «      g d¢g}t        j                  j	                  | D �cg c]  }t        j
                  |«      ‘Œ c}d¬«      }t        j                  j	                  |D �cg c]  }t        j
                  |«      ‘Œ c}d¬«      }t        j                  ||g«      }|j                  «        t        |«      dk(  sJ ‚t        j                  j	                  t        | |«      D ��cg c]  \  }}t        j
                  ||z   «      ‘Œ c}}d¬«      }|j                  |«      sJ ‚y c c}w c c}w c c}}w ©Nr   )g      $Àg      Àg        rC   g      $@ry   ©rf   rg   rh   rB   rC   rÉ   r{   )r0   r…   r   r~   r   rN   Úconcat_tablesr+   r3   r„   rP   ©r<   r=   r�   r�  r]  rŸ   r�   rS   s           r!   Útest_concat_tablesr¥  ¶  sA  € äŒU�1‹X‹Ú ð€Dô
 	ŒU�1�b‹\ÓÚð€Eô
 
�‰×	Ñ	±DÓ9±D¨qœrŸx™x¨�{°DÑ9Ø$.ð 
ó 
0€Bä	�‰×	Ñ	±EÓ:±E¨qœrŸx™x¨�{°EÑ:Ø$.ð 
ó 
0€Bô ×Ñ˜r 2˜hÓ'€FØ
‡O�OÔÜˆv‹;˜"ÒÐÐä�x‰x×#Ñ#Ü14°T¸5Ô1Aô%CÙ1A©¨¨Aô &(§X¡X¨a°!©e¥_Ø1Aò%Cà*4ð $ó 6€Hð �=‰=˜Ô"Ð"Ñ"ùò :ùâ:ùó%Có   ÁEÂEÄ"E
c                  óh  — t         j                  j                  t        t	        d«      «      gd¬«      } t         j                  j                  t        d«      gd¬«      }t        j                  t         j                  d¬«      5  t        j                  | |gd¬«      }d d d «       y # 1 sw Y   y xY w)	Nry   ©rz   r{   rØ   z@Unable to merge: Field a has incompatible types: int64 vs stringrD   Ú
permissive©Úpromote_options)	r   r~   r   r0   r…   r,   r-   r>  r£  )r�  r]  r/  s      r!   Útest_concat_tables_permissiver¬  Ð  s‹   € Ü	�‰×	Ñ	œt¤E¨"£I›Ð/°vÐ	Ó	>€BÜ	�‰×	Ñ	œt OÓ4Ð5¸VÐ	Ó	D€Bä	�‰Ü×ÑØTö
Vô ×Ñ˜b "˜X°|ÔDˆ÷
V÷ 
Vñ 
Vús   ÂB(Â(B1c                  óþ   — t         j                  j                  t        t	        d«      «      gd¬«      } t        j                  t        d¬«      5  t        j                  | | gd¬«       d d d «       y # 1 sw Y   y xY w)Nry   r¨  r{   z Invalid promote_options: invalidrD   Úinvalidrª  )	r   r~   r   r0   r…   r,   r-   r.   r£  r  s    r!   Ú!test_concat_tables_invalid_optionr¯  Ú  sV   € Ü
�‰×Ñœd¤5¨£9›oÐ.°fÐÓ=€Aä	�‰”zÐ)KÖ	LÜ
×Ñ˜!˜Q˜°Õ;÷ 
M×	LÑ	Lús   ÁA3Á3A<c                  óŒ   — t        j                  t        «      5  t        j                  d g«       d d d «       y # 1 sw Y   y xY wr   )r,   r-   ÚAttributeErrorr   r£  rX   rU   r!   Útest_concat_tables_none_tabler²  á  s*   € ä	�‰”~Õ	&Ü
×Ñ˜$˜Ô ÷ 
'×	&Ñ	&úó	   š:ºAc                  óR  — dd l } t        j                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      }t        d«      }| j                  ||dœ«      }| j                  t        j                  gdz  |dœ«      }t        j                  j                  ||d¬«      }t        j                  j                  ||d¬«      }|j                  j                  |j                  «      sJ ‚|j                  j                  |j                  d	¬
«      rJ ‚t        j                  ||g«      }|j                  j                  |j                  d	¬
«      sJ ‚|j                  j                  |j                  «      sJ ‚y )Nr   rz   r”   ÚabcdefghrÉ   r   F)rË   r%  TrQ  )r¥   r   rË   rå   r)   r0   r¿   r[   rð  r~   rÅ   rP   r£  )rª   rË   Úvaluesr+  r,  r  r  Útable3s           r!   Ú1test_concat_tables_with_different_schema_metadatar¸  ç  sA  € ãä�Y‰YÜ
�‰�”b—i‘i“kÓ"Ü
�‰�”b—i‘i“kÓ"ðó €Fô
 �*Ó€FØ
�,‰,˜V¨&Ñ1Ó
2€CØ
�,‰,œbŸf™f˜X¨™\°Ñ7Ó
8€Cä�X‰X×!Ñ! #¨fÀUÐ!ÓK€FÜ�X‰X×!Ñ! #¨fÀUÐ!ÓK€FØ�=‰=×Ñ §¡Ô.Ð.Ð.Ø�}‰}×#Ñ# F§M¡MÀ$Ð#ÔGÐGÐGä×Ñ˜v vÐ.Ó/€FØ�=‰=×Ñ §¡¸dÐÔCÐCÐCØ�=‰=×Ñ §¡Ô.Ð.Ñ.rU   c            
      óü  — t         j                  j                  t        j                  ddgt        j                  «       ¬«      gdg«      } t         j                  j                  t        j                  ddgt        j
                  «       ¬«      gdg«      }t        j                  t        «      5  t        j                  | |gd¬	«      }d d d «       j                  t         j                  j                  t        j                  g d
¢t        j                  «       ¬«      t        j                  g d¢t        j
                  «       ¬«      gddg«      «      sJ ‚t         j                  j                  t        j                  ddgt        j                  «       ¬«      gdg«      } t         j                  j                  t        j                  ddgt        j
                  «       ¬«      gdg«      }t        j                  t         j                  d¬«      5  t        j                  t        «      5  t        j                  | |gd¬	«       d d d «       d d d «       y # 1 sw Y   �Œ‘xY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr   r   r   Úint64_fieldrf   rg   Úfloat_fieldT)Úpromote©r   r   NN©NNrf   rg   rL  z Schema at index 1 was different:rD   F)r   r~   r   rN   rF   rç   r,   ÚwarnsÚFutureWarningr£  rP   r-   r  ©r�  r]  rŸ   s      r!   Ú&test_concat_tables_with_promote_optionrÂ  þ  s»  € Ü	�‰×	Ñ	Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨m¨_ó
>€Bä	�‰×	Ñ	Ü	�‰�3˜�*¤2§:¡:£<Ô	0Ð1°M°?ó
D€Bô 
�‰”mÕ	$Ü×!Ñ! 2 r (°DÔ9ˆ÷ 
%ð �=‰=œŸ™×-Ñ-Ü
�‰Ò#¬"¯(©(«*Ô5Ü
�‰Ò'¬b¯j©j«lÔ;ð/ð 	�}Ð%ó'ô (ð (ð (ô
 
�‰×	Ñ	Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨c¨Uó
4€Bä	�‰×	Ñ	Ü	�‰�1�a�&œrŸz™z›|Ô	,Ð-°¨uó
6€Bô 
�‰”r—‘Ð.PÖ	QÜ�\‰\œ-Õ(Ü×Ñ˜b "˜X¨uÕ5÷ )÷ 
RÐ	Q÷ 
%Ñ	$ú÷ )Ð(ú÷ 
RÐ	Qús0   Â0IÈI2È.I&ÉI2ÉI#É&I/	É+I2É2I;c            
      óð  — t         j                  j                  t        j                  ddgt        j                  «       ¬«      gdg«      } t         j                  j                  t        j                  ddgt        j
                  «       ¬«      gdg«      }t        j                  | |gd¬	«      }|j                  t         j                  j                  t        j                  g d
¢t        j                  «       ¬«      t        j                  g d¢t        j
                  «       ¬«      gddg«      «      sJ ‚t         j                  j                  t        j                  ddgt        j                  «       ¬«      gdg«      }t        j                  | |gd¬	«      }|j                  t         j                  j                  t        j                  g d¢t        j                  «       ¬«      gdg«      «      sJ ‚y )Nr   r   r   rº  rf   rg   r»  Údefaultrª  r½  r¾  r©  rM   )	r   r~   r   rN   rF   rç   r£  rP   ru   )r�  r]  rŸ   r^  s       r!   Ú!test_concat_tables_with_promotionrÅ    st  € Ü	�‰×	Ñ	Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨m¨_ó
>€Bä	�‰×	Ñ	Ü	�‰�3˜�*¤2§:¡:£<Ô	0Ð1°M°?ó
D€Bô ×Ñ˜r 2˜h¸	ÔB€Fà�=‰=œŸ™×-Ñ-Ü
�‰Ò#¬"¯(©(«*Ô5Ü
�‰Ò'¬b¯j©j«lÔ;ð/ð 	�}Ð%ó'ô (ð (ð (ô
 
�‰×	Ñ	Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨m¨_ó
>€Bä×ÑØ	ˆRˆ ,ô0€Fà�=‰=œŸ™×-Ñ-Ü
�‰’¤B§H¡H£JÔ/ð/à€óô ð ñ rU   c                  óÖ  — t         j                  j                  t        j                  ddgt        j                  «       ¬«      gdg«      } t         j                  j                  t        j                  ddgt        j
                  «       ¬«      gdg«      }t        j                  t         j                  d¬«      5  t        j                  | |gd¬«       d d d «       y # 1 sw Y   y xY w)	Nr   r   r   rL  zUnable to merge:rD   rÄ  rª  )
r   r~   r   rN   rF   rç   r,   r-   r>  r£  ©r�  r]  s     r!   Ú'test_concat_tables_with_promotion_errorrÈ  ,  s    € Ü	�‰×	Ñ	Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨c¨Uó
4€Bä	�‰×	Ñ	Ü	�‰�1�a�&œrŸz™z›|Ô	,Ð-°¨uó
6€Bô 
�‰”r×(Ñ(Ð0BÖ	CÜ
×Ñ˜"˜b˜°9Õ=÷ 
D×	CÑ	Cús   Â<CÃC(c                  ó®  — t        j                  t        d«      «      t        j                  g d¢«      t        j                  g d¢«      t        j                  g d¢«      g} t         j                  j	                  | t        d«      ¬«      }|d   j                  |d   «      sJ ‚|d	   j                  |d
   «      sJ ‚|d   j                  |d   «      sJ ‚|d   j                  |d   «      sJ ‚t        j                  t        «      5  |d    d d d «       t        j                  t        «      5  |d    d d d «       y # 1 sw Y   Œ1xY w# 1 sw Y   y xY w)Nr   r¢   r¢  ©ÚabÚbcÚcdÚdeÚefÚabcdr{   rq   r   r  r   éýÿÿÿr   r	  r   r¤   r   )
r   rN   r…   r~   r   ÚtuplerP   r,   r-   rt   rR  s     r!   Útest_table_negative_indexingrÓ  6  s  € ä
�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰Ò*Ó+Ü
�‰Ò/Ó0ð	€Dô �H‰H× Ñ  ¬U°6«]Ð Ó;€Eà�‰9×Ñ˜E !™HÔ%Ð%Ð%Ø�‰9×Ñ˜E !™HÔ%Ð%Ð%Ø�‰9×Ñ˜E !™HÔ%Ð%Ð%Ø�‰9×Ñ˜E !™HÔ%Ð%Ð%ä	�‰”zÕ	"ØˆbŠ	÷ 
#ô 
�‰”zÕ	"ØˆaŠ÷ 
#Ð	"÷ 
#Ð	"ú÷ 
#Ð	"ús   Ä	D?Ä0EÄ?EÅEc            
      óÊ  — t        t        d«      «      g d¢g} t        t        dd«      «      g d¢g}t        j                  j	                  | D �cg c]  }t        j
                  |«      ‘Œ c}d¬«      }t        j                  j	                  |D �cg c]  }t        j
                  |«      ‘Œ c}d¬«      }t        j                  ||g«      }|j                  «        t        |«      dk(  sJ ‚t        j                  j	                  t        | |«      D ��cg c]  \  }}t        j
                  ||z   «      ‘Œ c}}d¬«      }|j                  |«      sJ ‚y c c}w c c}w c c}}w r¡  )r0   r…   r   rÄ   r   rN   Úconcat_batchesr+   r3   r„   rP   r¤  s           r!   Útest_concat_batchesrÖ  K  sB  € äŒU�1‹X‹Ú ð€Dô
 	ŒU�1�b‹\ÓÚð€Eô
 
�‰×	#Ñ	#¹$Ó$?¹$°Q¤R§X¡X¨a¥[¸$Ñ$?Ø*4ð 
$ó 
6€Bä	�‰×	#Ñ	#¹%Ó$@¹%°Q¤R§X¡X¨a¥[¸%Ñ$@Ø*4ð 
$ó 
6€Bô ×Ñ  B˜xÓ(€FØ
‡O�OÔÜˆv‹;˜"ÒÐÐä�~‰~×)Ñ)Ü7:¸4ÀÔ7Gô+IÙ7G©t¨q°!ô ,.¯8©8°A¸±E­?Ø7Gò+Ià0:ð *ó <€Hð �=‰=˜Ô"Ð"Ñ"ùò %@ùâ$@ùó+Ir¦  c                  óÒ  — t         j                  j                  t        j                  ddgt        j                  «       ¬«      gdg«      } t         j                  j                  t        j                  ddgt        j
                  «       ¬«      gdg«      }t        j                  t         j                  d¬«      5  t        j                  | |g«       d d d «       y # 1 sw Y   y xY w)Nr   r   r   rL  z$not match index 0 recordbatch schemarD   )
r   rÄ   r   rN   rF   rç   r,   r-   r  rÕ  rÇ  s     r!   Ú$test_concat_batches_different_schemarØ  e  s¥   € Ü	�‰×	#Ñ	#Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨c¨Uó
4€Bä	�‰×	#Ñ	#Ü	�‰�1�a�&œrŸz™z›|Ô	,Ð-°¨uó
6€Bô 
�‰”r—‘ØCö
Eä
×Ñ˜2˜r˜(Ô#÷
E÷ 
Eñ 
Eús   Â<CÃC&c                  óŒ   — t        j                  t        «      5  t        j                  d g«       d d d «       y # 1 sw Y   y xY wr   )r,   r-   r±  r   rÕ  rX   rU   r!   Ú test_concat_batches_none_batchesrÚ  p  s*   € ä	�‰”~Õ	&Ü
×Ñ˜4˜&Ô!÷ 
'×	&Ñ	&úr³  c                 ó"  — t        j                  t        d«      «      t        j                  g d¢«      g}| j                  |t	        d«      ¬«      }t        j
                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      }t        j
                  t        j                  dt        j                  «       «      g«      }| t         j                  u rd}nd	}d
|› d�}t        j                  t        |¬«      5  |j                  |«       d d d «       t        j                  t        |¬«      5  |j                  |«       d d d «       y # 1 sw Y   Œ?xY w# 1 sw Y   y xY w)Nr   r¢   rË  r{   r?  r”   rz   r€   zrecord batchz1Target schema's field names are not matching the z's field names:.*rD   )r   rN   r…   r   rÒ  rË   rå   ru   ræ   r~   r,   r-   r.   r
  )ræ  r<   r€   Útarget_schema1Útarget_schema2Úcls_namerv  s          r!   Ú&test_table_cast_to_incompatible_schemarß  v  s   € ô 	�‰”�q“ÓÜ
�‰Ò$Ó%ð€Dð �O‰O˜D¬¨d«ˆOÓ4€Eä—Y‘YÜ
�‰�”b—h‘h“jÓ!Ü
�‰�”b—h‘h“jÓ!ð ó €Nô —Y‘YÜ
�‰�”b—h‘h“jÓ!ð ó €Nð Œb�h‰h�Ø‰à!ˆØBØ�Ð,ð.€Gô 
�‰”z¨Ö	1Ø�
‰
�>Ô"÷ 
2ä	�‰”z¨Ö	1Ø�
‰
�>Ô"÷ 
2Ð	1÷ 
2Ð	1úç	1Ð	1ús   Ä)E9ÅFÅ9FÆFc           
      óâ  — t        j                  t        d«      t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j
                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      g}| j                  |t        d«      ¬«      }t        j                  t        d«      t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      g}| j                  |t        d«      ¬«      }t        j                  t        j                  d	t        j                  «       «      t        j                  d
t        j                  «       «      t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      }|j                  |«      }|j                  |«      sJ ‚y )Nr   r   r¢   r¢  rÊ  rÐ  r{   ©r   r   r   r   r   rz   r”   r    r•   )r   rN   r…   rF   ru   rj   r)   r   rÒ  ræ   rË   rå   r
  rP   ©ræ  r<   r€   rc  Úexpected_tableÚtarget_schemaÚcasted_tables          r!   Útest_table_safe_castingræ  ™  sx  € ô 	�‰”�q“¤§¡£
Ô+Ü
�‰Ò$¬2¯8©8«:Ô6Ü
�‰Ò*´·±³Ô>Ü
�‰Ò/´b·i±i³kÔBð	€Dð �O‰O˜D¬¨f«ˆOÓ6€Eô 	�‰”�q“¤§¡£
Ô+Ü
�‰Ò$¬2¯8©8«:Ô6Ü
�‰’¤r§x¡x£zÔ2Ü
�‰Ò/´b·i±i³kÔBð	€Mð —_‘_ ]¼%À»-�_ÓH€Nä—I‘IÜ
�‰�”b—h‘h“jÓ!Ü
�‰�”b—h‘h“jÓ!Ü
�‰�”b—h‘h“jÓ!Ü
�‰�”b—i‘i“kÓ"ð	ó €Mð —:‘:˜mÓ,€Là×Ñ˜~Ô.Ð.Ñ.rU   c           
      ó|  — t        j                  t        d«      t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j
                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      g}| j                  |t        d«      ¬«      }t        j                  t        d«      t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      g}| j                  |t        d«      ¬«      }t        j                  t        j                  d	t        j                  «       «      t        j                  d
t        j                  «       «      t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      }t        j                  t         j                  d¬«      5  |j                  |«       d d d «       |j                  |d¬«      }|j!                  |«      sJ ‚y # 1 sw Y   Œ0xY w)Nr   r   r¢   )gš™™™™™ñ?gš™™™™™@gffffff
@gš™™™™™@g      @rÊ  rÐ  r{   rá  rz   r”   r    r•   Ú	truncatedrD   F)Úsafe)r   rN   r…   rF   ru   rj   r)   r   rÒ  ræ   rË   rå   r,   r-   r  r
  rP   râ  s          r!   Útest_table_unsafe_castingrê  ¼  sª  € ô 	�‰”�q“¤§¡£
Ô+Ü
�‰Ò$¬2¯8©8«:Ô6Ü
�‰Ò*´·±³Ô>Ü
�‰Ò/´b·i±i³kÔBð	€Dð �O‰O˜D¬¨f«ˆOÓ6€Eô 	�‰”�q“¤§¡£
Ô+Ü
�‰Ò$¬2¯8©8«:Ô6Ü
�‰’¤r§x¡x£zÔ2Ü
�‰Ò/´b·i±i³kÔBð	€Mð —_‘_ ]¼%À»-�_ÓH€Nä—I‘IÜ
�‰�”b—h‘h“jÓ!Ü
�‰�”b—h‘h“jÓ!Ü
�‰�”b—h‘h“jÓ!Ü
�‰�”b—i‘i“kÓ"ð	ó €Mô 
�‰”r—‘¨kÖ	:Ø�
‰
�=Ô!÷ 
;ð —:‘:˜m°%�:Ó8€LØ×Ñ˜~Ô.Ð.Ñ.÷	 
;Ð	:ús   É1J2Ê2J;c                  ó¦  — t        j                  ddgt         j                  ¬«      } t        j                  «       }t        j                  | |¬«      t        j                  | dd  |¬«      g}t	        j
                  t        j                  j                  «      5  t        j                  j                  |ddg¬«       d d d «       y # 1 sw Y   y xY w)Nr   r   rÒ   r   r’  r“  r{   )
r[   rN   r¼  r   r,   r-   r   r  r~   r   )rN   Úu8rž   s      r!   Útest_invalid_table_constructrí  â  sˆ   € ä�H‰H�a˜�V¤2§8¡8Ô,€EÜ	�‰‹€BÜ�h‰h�u 2Ô&¬¯©°°q°r°ÀÔ(DÐE€Fä	�‰”r—v‘v×*Ñ*Õ	+Ü
�‰×Ñ˜V¨D°$¨<ÐÔ8÷ 
,×	+Ñ	+ús   Â$CÃCzdata, klass©rN  rî   rï   ©râ   r   NrN  rî   rï   râ   rC   c                 óV  —  || d   «       || d   «      g} t        j                  dt        j                  «       fdt        j                  «       fg«      }t         j                  j                  | |¬«      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚t        j                  dt        j                  «       fg«      }t        j                  t        «      5  t         j                  j                  | |¬«       d d d «       t        j                  dt        j                  «       fdt        j                  «       fg«      }t         j                  j                  | |¬«      }t         j                  j                  |j                  d«      j                  «      sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚t        j                  dt        j                  «       fdt        j                  d«      fg«      }t        j                  t         t"        f«      5  t         j                  j%                  | |¬«       d d d «       t        j                  t        «      5  t         j                  j                  | |ddg¬	«       d d d «       t        j                  t        «      5  t         j                  j                  | |d
di¬«       d d d «       y # 1 sw Y   �ŒíxY w# 1 sw Y   Œ£xY w# 1 sw Y   ŒixY w# 1 sw Y   y xY w)Nr   r   rO  r{  r(  r   r   Ús)rË   r|   r|  r}  ©rË   rP  )r   rË   rf  rç   r~   r   rq  rÁ   r,   r-   r.   ÚtypesÚ
is_float32r¦   r	   r¸   r.  ri   r5  ©r<   ÚklassrË   r€   s       r!   Útest_from_arrays_schemar÷  ì  sf  € ñ �$�q‘'‹N™E $ q¡'›NÐ+€DÜ�Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€Fä�H‰H× Ñ  ¨fÐ Ó5€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!ô �Y‰Y˜¤§¡£Ð+Ð,Ó-€FÜ	�‰”zÕ	"Ü
�‰×Ñ˜T¨&ÐÔ1÷ 
#ô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€FÜ�H‰H× Ñ  ¨fÐ Ó5€EÜ�8‰8×Ñ˜uŸ|™|¨HÓ5×:Ñ:Ô;Ð;Ð;Ø×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!ô �Y‰Y˜¤§¡£Ð+¨h¼¿¹ÀSÓ8IÐ-JÐKÓL€FÜ	�‰Ô+¬YÐ7Õ	8Ü
�‰×Ñ˜T¨&ÐÔ1÷ 
9ô 
�‰”zÕ	"Ü
�‰×Ñ˜T¨&¸ÀÐ8JÐÔK÷ 
#ô 
�‰”zÕ	"Ü
�‰×Ñ˜T¨&¸FÀFÐ;KÐÔL÷ 
#Ð	"÷) 
#Ñ	"ú÷ 
9Ð	8ú÷ 
#Ð	"ú÷ 
#Ð	"ús0   Ã-"K:É"LÊ%LË%LË:LÌLÌLÌL(c                 óÒ  — | j                  i «      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  t	        j                  g «      k(  sJ ‚|j                  «       i k(  sJ ‚t	        j                  dt	        j                  «       fdt	        j                  «       fg«      }t        dg d¢fdg d¢fg«      }| j                  |«      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚|j                  «       |k(  sJ ‚dd	i}|j                  |«      }| j                  ||¬
«      }|j                  |k(  sJ ‚|j                  j                  |k(  sJ ‚|j                  «       |k(  sJ ‚| j                  ||¬«      }|j                  |k(  sJ ‚|j                  j                  |k(  sJ ‚|j                  «       |k(  sJ ‚t        j                  t        «      5  | j                  |||¬«       d d d «       t        j                  t        «      5  | j                  dg d¢it	        j                  dt	        j                  «       fg«      ¬«       d d d «       t        j                  t         d¬«      5  | j                  g d¢g d¢dœt	        j                  dt	        j"                  «       fdt	        j$                  «       fdt	        j&                  «       fg«      ¬«       d d d «       t        j                  t        «      5  | j                  dg d¢ii ¬«       d d d «       y # 1 sw Y   �Œ5xY w# 1 sw Y   ŒàxY w# 1 sw Y   Œ\xY w# 1 sw Y   y xY w)Nr   rO  r{  rî  rï  r   r   r|  r}  r~  r(  rò  rD  )r   r   r   zdoesn't contain.* c, drD   r   )r   r   r   rÉ   rz   r    r•   )r5  rq  rÁ   rË   r   r3  rf  rj   r   Úwith_metadatarP  r,   r-   r.   ri   r)   rƒ  rF   ru   ræ   )ræ  r€   rË   r<   rP  s        r!   Útest_table_from_pydictrú  	  sò  € ð �O‰O˜BÓ€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<œ2Ÿ9™9 R›=Ò(Ð(Ð(Ø�?‰?Ó Ò"Ð"Ð"ä�Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€Fô ˜Ò!3Ð4Ø!¢>Ð2ð4ó 5€Dà�O‰O˜DÓ!€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!Ø�?‰?Ó Ò$Ð$Ð$ð ˜Ð€HØ×!Ñ! (Ó+€FØ�O‰O˜D¨8ˆOÓ4€EØ�<‰<˜6Ò!Ð!Ð!Ø�<‰<× Ñ  HÒ,Ð,Ð,Ø�?‰?Ó Ò$Ð$Ð$ð �O‰O˜D¨ˆOÓ0€EØ�<‰<˜6Ò!Ð!Ð!Ø�<‰<× Ñ  HÒ,Ð,Ð,Ø�?‰?Ó Ò$Ð$Ð$ô 
�‰”zÕ	"Ø�‰˜ V°hˆÔ?÷ 
#ô 
�‰”yÕ	!Ø�‰˜šyÐ)Ü!Ÿy™y¨4´·±³Ð*=Ð)>Ó?ð 	ô 	A÷ 
"ô
 
�‰”xÐ'@Ö	AØ�‰Ú¢)Ñ,Ü—9‘9Ø”b—h‘h“jÐ!Ø”b—h‘h“jÐ!Ø”b—h‘h“jÐ!ðó ð 	ô 	
÷ 
Bô 
�‰”yÕ	!Ø�‰˜šiÐ(°ˆÔ4÷ 
"Ð	!÷) 
#Ñ	"ú÷ 
"Ð	!ú÷
 
BÐ	Aú÷ 
"Ð	!ús2   Ç0L8È&A MÊ	A-MÌMÌ8MÍMÍMÍM&c                 óØ  — t        d || d   «      fd || d   «      fg«      } t        j                  dt        j                  «       fdt        j                  «       fg«      }t        j
                  j                  | «      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚t        j
                  j                  | |¬«      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚t        j                  dt        j                  «       fdt        j                  «       fg«      }t        j
                  j                  | |¬«      }t        j                  j                  |j                  d«      j                  «      sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚t        j                  dt        j                  «       fdt        j                  d«      fg«      }t        j                   t"        t$        f«      5  t        j
                  j                  | |¬«       d d d «       y # 1 sw Y   y xY w)	NrO  r   r{  r   r   r   r(  rñ  )r   r   rË   rf  rj   r~   r5  rq  rÁ   rç   ró  rô  r¦   r	   r¸   r,   r-   r.  ri   rõ  s       r!   Ú#test_table_from_pydict_arrow_arraysrü  T	  sý  € ô
 ˜¡ t¨A¡w£Ð0°8¹UÀ4ÈÁ7»^Ð2LÐMÓN€DÜ�Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€Fô �H‰H× Ñ  Ó&€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!ô �H‰H× Ñ  ¨fÐ Ó5€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!ô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€FÜ�H‰H× Ñ  ¨fÐ Ó5€EÜ�8‰8×Ñ˜uŸ|™|¨HÓ5×:Ñ:Ô;Ð;Ð;Ø×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!ô �Y‰Y˜¤§¡£Ð+¨h¼¿¹ÀSÓ8IÐ-JÐKÓL€FÜ	�‰Ô+¬YÐ7Õ	8Ü
�‰×Ñ˜T¨&ÐÔ1÷ 
9×	8Ñ	8ús   È5"I É I)c                 ó’  — t        d || d   «      fd || d   «      fg«      } t        j                  dt        j                  «       fdt        j                  «       fdt        j
                  «       fg«      }t        j                  t        d¬«      5  t        j                  j                  | |¬«       d d d «       t        j                  dt        j                  «       fg«      }t        j                  j                  | |¬«      }|j                  dk(  sJ ‚|j                  |k(  sJ ‚|j                  dgk(  sJ ‚y # 1 sw Y   Œ‰xY w)NrO  r   r{  r   rz  rD   r(  )r   r   rË   rf  rj   rF   r,   r-   rƒ  r~   r5  rq  rH  rõ  s       r!   Útest_table_from_pydict_schemarþ  v	  s  € ô ˜¡ t¨A¡w£Ð0°8¹UÀ4ÈÁ7»^Ð2LÐMÓN€Dô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EØ¤§¡£Ð,ð.ó /€Fä	�‰”x vÖ	.Ü
�‰×Ñ˜T¨&ÐÔ1÷ 
/ô �Y‰Y˜¤§¡£Ð+Ð,Ó-€FÜ�H‰H× Ñ  ¨fÐ Ó5€EØ×Ñ Ò!Ð!Ð!Ø�<‰<˜6Ò!Ð!Ð!Ø×Ñ & Ò)Ð)Ñ)÷ 
/Ð	.ús   Â"D=Ä=Ec           	      óx  — | j                  g «      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  t	        j                  g «      k(  sJ ‚|j                  «       g k(  sJ ‚t	        j                  dt	        j                  «       fdt	        j                  «       fg«      }dddœdddœd	d dœg}| j                  |«      }|j                  d
k(  sJ ‚|j                  dk(  sJ ‚|j                  |k(  sJ ‚|j                  «       |k(  sJ ‚ddi}|j                  |«      }| j                  ||¬«      }|j                  |k(  sJ ‚|j                  j                  |k(  sJ ‚|j                  «       |k(  sJ ‚| j                  ||¬«      }|j                  |k(  sJ ‚|j                  j                  |k(  sJ ‚|j                  «       |k(  sJ ‚t        j                  t        «      5  | j                  |||¬«       d d d «       t        j                  t        «      5  | j                  ddiddidd
igt	        j                  dt	        j                  «       fg«      ¬«       d d d «       t	        j                  dt	        j                  «       fdt	        j                   «       fdt	        j"                  «       fg«      }| j                  dddœd
ddœdddœg|¬«      }dd d dœd
d d dœdd d dœg}|j                  |k(  sJ ‚|j                  «       |k(  sJ ‚t        j                  t        «      5  | j                  ddidd
iddigi ¬«       d d d «       dddœddidd	ig}dddœd ddœd	d dœg}| j                  |«      }|j                  d
k(  sJ ‚|j                  dk(  sJ ‚|j                  «       |k(  sJ ‚ddidddœdd ig}ddiddidd ig}| j                  |«      }|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  «       |k(  sJ ‚y # 1 sw Y   �ŒxY w# 1 sw Y   �ŒÁxY w# 1 sw Y   ŒåxY w)Nr   rO  r{  rN  râ   )rO  r{  rî   r   rï   r   r   r|  r}  r~  r(  rò  rD  r   rz   r    r•   rÉ   r   )rz   r    r•   )Úfrom_pylistrq  rÁ   rË   r   r*   rf  rj   rù  rP  r,   r-   r.   ri   r)   rF   ru   ræ   )ræ  r€   rË   r<   rP  r=   s         r!   Útest_table_from_pylistr  Ž	  sj  € ð �O‰O˜BÓ€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<œ2Ÿ9™9 R›=Ò(Ð(Ð(Ø�?‰?Ó Ò"Ð"Ð"ä�Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€Fð  3Ñ'Ø aÑ(Ø dÑ+ð-€Dð �O‰O˜DÓ!€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!Ø�?‰?Ó Ò$Ð$Ð$ð ˜Ð€HØ×!Ñ! (Ó+€FØ�O‰O˜D¨8ˆOÓ4€EØ�<‰<˜6Ò!Ð!Ð!Ø�<‰<× Ñ  HÒ,Ð,Ð,Ø�?‰?Ó Ò$Ð$Ð$ð �O‰O˜D¨ˆOÓ0€EØ�<‰<˜6Ò!Ð!Ð!Ø�<‰<× Ñ  HÒ,Ð,Ð,Ø�?‰?Ó Ò$Ð$Ð$ô 
�‰”zÕ	"Ø�‰˜ V°hˆÔ?÷ 
#ô 
�‰”yÕ	!Ø�‰˜$ ˜ T¨1 I°°a¨yÐ9Ü!Ÿy™y¨4´·±³Ð*=Ð)>Ó?ð 	ô 	A÷ 
"ô
 �Y‰Y˜œbŸh™h›jÐ)ØœbŸh™h›jÐ)ØœbŸh™h›jÐ)ðó €Fð �O‰OØ�qÑ	 ¨Ñ+°1¸1Ñ-=Ð>Øð ó €Eð ˜$ TÑ*Ø˜$ TÑ*Ø˜$ TÑ*ð,€Dð �<‰<˜6Ò!Ð!Ð!Ø�?‰?Ó Ò$Ð$Ð$ô 
�‰”yÕ	!Ø�‰˜#˜q˜ C¨ 8¨c°1¨XÐ6¸rˆÔB÷ 
"ð  3Ñ'Ø�qˆMØ�UˆOð€Dð  CÑ(Ø aÑ(Ø tÑ,ð.€Eð �O‰O˜DÓ!€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�?‰?Ó Ò%Ð%Ð%à�RˆLØ aÑ(Ø�tÐð€Dð �bˆ\Ø�eˆ_Ø�dˆ^ð€Eð �O‰O˜DÓ!€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�?‰?Ó Ò%Ð%Ñ%÷a 
#Ñ	"ú÷ 
"Ñ	!ú÷( 
"Ð	!ús%   Ç)PÈAP#Ì/P0ÐP Ð#P-Ð0P9c                  óV  — dd l } | j                  t        dg d¢fdg d¢fg«      «      }t        j                  dt        j
                  «       fdt        j                  «       fg«      }t        j                  j                  ||¬«      }t        j                  j                  |j                  d«      j                  «      sJ ‚|j                  j                  «       |k(  sJ ‚t        j                  dt        j
                  «       fdt        j                  d«      fg«      }t        j                   t"        t$        f«      5  t        j                  j                  ||¬«       d d d «       t        j                  dt        j
                  «       fdt        j&                  «       fdt        j(                  «       fg«      }t        j                   t*        d¬	«      5  t        j                  j                  ||¬«       d d d «       t        j                  dt        j
                  «       fg«      }t        j                  j                  ||¬«      }|j,                  d
k(  sJ ‚|j                  j                  «       |k(  sJ ‚|j.                  dgk(  sJ ‚y # 1 sw Y   �Œ1xY w# 1 sw Y   Œ¤xY w)Nr   rO  rî  r{  rï  r(  rñ  rz  rD   r   )r¥   r¿   r   r   rË   rf  rç   r~   rÅ   ró  rô  r¦   r	   Úremove_metadatar¸   r,   r-   r.  ri   rj   rF   rƒ  rq  rH  )rª   rÏ   rË   r€   s       r!   Útest_table_from_pandas_schemar  ê	  s
  € ó à	�‰”k FÒ,>Ð#?Ø$,ªnÐ#=ð#?ó @ó 
A€Bô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€FÜ�H‰H× Ñ  ¨FÐ Ó3€EÜ�8‰8×Ñ˜uŸ|™|¨HÓ5×:Ñ:Ô;Ð;Ð;Ø�<‰<×'Ñ'Ó)¨VÒ3Ð3Ð3ô �Y‰Y˜¤§¡£Ð+¨h¼¿¹ÀSÓ8IÐ-JÐKÓL€FÜ	�‰Ô+¬YÐ7Õ	8Ü
�‰×Ñ˜R¨ÐÔ/÷ 
9ô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EØ¤§¡£Ð,ð.ó /€Fä	�‰”x vÖ	.Ü
�‰×Ñ˜R¨ÐÔ/÷ 
/ô �Y‰Y˜¤§¡£Ð+Ð,Ó-€FÜ�H‰H× Ñ  ¨FÐ Ó3€EØ×Ñ Ò!Ð!Ð!Ø�<‰<×'Ñ'Ó)¨VÒ3Ð3Ð3Ø×Ñ & Ò)Ð)Ñ)÷ 
9Ñ	8ú÷ 
/Ð	.ús   Å"JÇ"JÊJÊJ(c                  ó„  — dd l } t        dg d¢fdg d¢fg«      }t        j                  g d¢d¬«      t        j                  g d¢d¬«      d	œ}t        j                  dt        j
                  «       fdt        j                  «       fg«      }| j                  |«      }t        j                  |«      }t        j                  j                  |«      }|j                  |«      sJ ‚t        j                  ||¬
«      }t        j                  j                  ||¬
«      }|j                  |«      sJ ‚t        j                  |«      }t        j                  j                  |«      }|j                  |«      sJ ‚t        j                  ||¬
«      }t        j                  j                  ||¬
«      }|j                  |«      sJ ‚y )Nr   r”   rØ   rz   r   r)   r   ru   )r”   rz   r(  )r¥   r   r   rN   rË   ru   r)   r¿   r€   r~   rÅ   rP   r5  )rª   r•   Ú
d_explicitrË   rÏ   r  r  s          r!   Útest_table_factory_functionr  
  sZ  € ãô 	�cš?Ð+¨c²9Ð-=Ð>Ó?€Aä—x‘x¢°hÔ?Ü—x‘x¢	°Ô8ñ:€Jô �Y‰Y˜œbŸh™h›jÐ)¨C´·±³Ð+=Ð>Ó?€Fà	�‰�a‹€BÜ�X‰X�b‹\€FÜ�X‰X×!Ñ! "Ó%€FØ�=‰=˜Ô Ð Ð Ü�X‰X�b Ô(€FÜ�X‰X×!Ñ! "¨VÐ!Ó4€FØ�=‰=˜Ô Ð Ð ä�X‰X�jÓ!€FÜ�X‰X×!Ñ! *Ó-€FØ�=‰=˜Ô Ð Ð ô �X‰X�a Ô'€FÜ�X‰X×!Ñ! !¨FÐ!Ó3€FØ�=‰=˜Ô Ð Ñ rU   c                  óþ  — t        j                  t        «      5  t        j                  dg d¢idg¬«       d d d «       t        j
                  dt        j                  «       fg«      } t        j                  dt        j                  g d¢t        j                  «       ¬«      i| «      }|j                  d«      j                  t        j                  «       k(  sJ ‚t        j                  g d¢d¬«      g}dg}t        j                  ||«      }|j                  |k(  sJ ‚t        j
                  dt        j                  «       fg«      } t        j                  || «      }|j                  |k(  sJ ‚y # 1 sw Y   �Œ=xY w)Nrz   r   r{   r   rF   )r,   r-   r.   r   r€   rË   ru   rN   rF   r¦   r	   rH  )rË   r€   r<   r|   s       r!   Ú test_table_factory_function_argsr	  )
  s  € ä	�‰”zÕ	"Ü
�‰�#’yÐ!¨#¨Õ/÷ 
#ô �Y‰Y˜œbŸh™h›jÐ)Ð*Ó+€FÜ�H‰H�cœ2Ÿ8™8¢I´B·H±H³JÔ?Ð@À&ÓI€EØ�<‰<˜Ó×!Ñ!¤R§X¡X£ZÒ/Ð/Ð/ô �H‰H’Y WÔ-Ð.€DØˆE€EÜ�H‰H�T˜5Ó!€EØ×Ñ Ò&Ð&Ð&Ü�Y‰Y˜œbŸh™h›jÐ)Ð*Ó+€FÜ�H‰H�T˜6Ó"€EØ×Ñ Ò&Ð&Ñ&÷ 
#Ñ	"ús   šE2Å2E<c                  ó|  — dd l } t        j                  t        «      5  t	        j
                  | j                  dg d¢i«      dg¬«       d d d «       t        j                  t        «      5  t	        j
                  | j                  dg d¢i«      ddi¬«       d d d «       t	        j                  dt	        j                  «       fg«      }t	        j
                  | j                  dg d¢i«      |«      }|j                  d«      j                  t	        j                  «       k(  sJ ‚y # 1 sw Y   ŒÝxY w# 1 sw Y   Œ›xY w)Nr   rz   r   r{   r|  r}  r~  )r¥   r,   r-   r.   r   r€   r¿   rË   ru   r¦   r	   )rª   rË   r€   s      r!   Ú'test_table_factory_function_args_pandasr  =
  sÛ   € ãô 
�‰”zÕ	"Ü
�‰�—‘˜s¢IÐ.Ó/¸°uÕ=÷ 
#ô 
�‰”zÕ	"Ü
�‰�—‘˜s¢IÐ.Ó/¸6À6Ð:JÕK÷ 
#ô �Y‰Y˜œbŸh™h›jÐ)Ð*Ó+€FÜ�H‰H�R—\‘\ 3ª	Ð"2Ó3°VÓ<€EØ�<‰<˜Ó×!Ñ!¤R§X¡X£ZÒ/Ð/Ñ/÷ 
#Ð	"ú÷ 
#Ð	"ús   ž,D&Á+-D2Ä&D/Ä2D;c                  ó  — t        j                  t        d¬«      5  t        j                  d«       d d d «       t        j                  t        d¬«      5  t        j
                  d«       d d d «       y # 1 sw Y   ŒCxY w# 1 sw Y   y xY w)Nz!Expected pandas DataFrame, pythonrD   zinvalid inputzExpected pandas DataFrame)r,   r-   ri   r   r€   r)  rX   rU   r!   Ú$test_factory_functions_invalid_inputr  N
  s]   € Ü	�‰”yÐ(KÖ	LÜ
�‰�Ô!÷ 
Mô 
�‰”yÐ(CÖ	DÜ
�‰˜Ô(÷ 
EÐ	D÷ 
MÐ	Lú÷ 
EÐ	Dús   œA4ÁB Á4A=Â B	c                  ó  — t        j                  t        j                  dt        j                  «       ddi¬«      t        j                  dt        j                  «       «      gddi¬«      } t        j
                  t        j                  g d¢d	¬
«      t        j                  g d¢d¬
«      g| ¬«      }t        |«      dk(  sJ ‚|j                  d¬«      dk(  sJ ‚|j                  d¬«      dk(  sJ ‚|j                  d¬«      dk(  sJ ‚y )NrD  rM  rN  r~  rE  r|  r}  r_  ræ   r   ©ry   rÄ  rÅ  rÆ  ru   r(  zJpyarrow.Table
c0: int16
c1: int32
----
c0: [[1,2,3,4]]
c1: [[10,20,30,40]]T©Úshow_metadatazhpyarrow.Table
c0: int16
  -- field metadata --
  key: 'value'
c1: int32
-- schema metadata --
foo: 'bar'r   ©Úpreview_colsr   z:pyarrow.Table
c0: int16
c1: int32
----
c0: [[1,2,3,4]]
...)	r   rË   rå   ræ   ru   r€   rN   rm   Ú	to_string©rË   Útabs     r!   Útest_table_repr_to_stringr  V
  s  € ä�Y‰YœŸ™ ¤r§x¡x£zØ+0°'Ð*:ô<äŸ™ ¤r§x¡x£zÓ2ð4ð "(¨Ð 0ô2€Fô
 �(‰(”B—H‘Hš\°Ô8Ü—H‘HÒ-°GÔ<ð>ØFLôN€Cäˆs‹8ð ò ð ð ð �=‰= tˆ=Ó,ð 1ò ð ð ð �=‰= aˆ=Ó(ð -ò ð ð ð �=‰= aˆ=Ó(ð -ò ð ñ rU   c                  ó”  — t        j                  t        j                  dt        j                  «       ddi¬«      t        j                  dt        j                  «       «      gddi¬«      } t        j
                  t        j                  g d¢d	z  d
¬«      t        j                  g d¢d	z  d¬«      g| ¬«      }t        |«      dk(  sJ ‚y )NrD  rM  rN  r~  rE  r|  r}  r_  ry   ræ   r   r  ru   r(  zppyarrow.Table
c0: int16
c1: int32
----
c0: [[1,2,3,4,1,...,4,1,2,3,4]]
c1: [[10,20,30,40,10,...,40,10,20,30,40]])r   rË   rå   ræ   ru   r€   rN   rm   r  s     r!   Ú"test_table_repr_to_string_ellipsisr  €
  s«   € ä�Y‰YœŸ™ ¤r§x¡x£zØ+0°'Ð*:ô<äŸ™ ¤r§x¡x£zÓ2ð4ð "(¨Ð 0ô2€Fô
 �(‰(”B—H‘Hš\¨"™_°7Ô;Ü—H‘HÒ-¨bÑ0°wÔ?ðAà ô"€Cô ˆs‹8ð -ò -ð -ñ -rU   c                  ó  — t        j                  t        j                  dt        j                  «       ddi¬«      t        j                  dt        j                  «       «      gddi¬«      } t        j
                  t        j                  g d¢d	¬
«      t        j                  g d¢d¬
«      g| ¬«      }t        |«      dk(  sJ ‚|j                  d¬«      dk(  sJ ‚|j                  d¬«      dk(  sJ ‚|j                  d¬«      dk(  sJ ‚y )NrD  rM  rN  r~  rE  r|  r}  r_  ræ   r   r  ru   r(  zLpyarrow.RecordBatch
c0: int16
c1: int32
----
c0: [1,2,3,4]
c1: [10,20,30,40]Tr  znpyarrow.RecordBatch
c0: int16
  -- field metadata --
  key: 'value'
c1: int32
-- schema metadata --
foo: 'bar'r   r  r   z>pyarrow.RecordBatch
c0: int16
c1: int32
----
c0: [1,2,3,4]
...)	r   rË   rå   ræ   ru   r)  rN   rm   r  ©rË   rÆ   s     r!   Ú test_record_batch_repr_to_stringr  ’
  s  € ä�Y‰YœŸ™ ¤r§x¡x£zØ+0°'Ð*:ô<äŸ™ ¤r§x¡x£zÓ2ð4ð "(¨Ð 0ô2€Fô
 �O‰OœRŸX™X¢l¸ÔAÜŸX™XÒ&6¸WÔEðGà#)ô+€Eô ˆu‹:ð ò ð ð ð �?‰?¨ˆ?Ó.ð 3ò ð ð ð �?‰?¨ˆ?Ó*ð /ò ð ð ð �?‰?¨ˆ?Ó*ð /ò ð ñ rU   c                  ó”  — t        j                  t        j                  dt        j                  «       ddi¬«      t        j                  dt        j                  «       «      gddi¬«      } t        j
                  t        j                  g d¢d	z  d
¬«      t        j                  g d¢d	z  d¬«      g| ¬«      }t        |«      dk(  sJ ‚y )NrD  rM  rN  r~  rE  r|  r}  r_  ry   ræ   r   r  ru   r(  z¤pyarrow.RecordBatch
c0: int16
c1: int32
----
c0: [1,2,3,4,1,2,3,4,1,2,...,3,4,1,2,3,4,1,2,3,4]
c1: [10,20,30,40,10,20,30,40,10,20,...,30,40,10,20,30,40,10,20,30,40])r   rË   rå   ræ   ru   r)  rN   rm   r  s     r!   Ú)test_record_batch_repr_to_string_ellipsisr  ½
  s¯   € ä�Y‰YœŸ™ ¤r§x¡x£zØ+0°'Ð*:ô<äŸ™ ¤r§x¡x£zÓ2ð4ð "(¨Ð 0ô2€Fô
 �O‰OœRŸX™X¢l°2¡o¸GÔDÜŸX™XÒ&6°rÑ&9ÀÔHðJà#)ô+€Eô ˆu‹:ð Iò Ið Iñ IrU   c                  óÒ  — d} d}t        |g d¢f| g d¢fg«      }t        j                  | t        j                  «       f|t        j                  «       fg«      }t        j
                  ||¬«      }|d   j                  d«      j                  t        j                  g d¢d¬«      «      sJ ‚|d	   j                  d«      j                  t        j                  g d¢d
¬«      «      sJ ‚y )Nu   Ã¤Ã¤Ã¤hu   Ã¶Ã¶Ã¶frØ   r   r(  r   ru   r   r   r)   )	r   r   rË   ru   r)   r€   ró   rP   rN   )Úcol_aÚcol_br•   rË   rŸ   s        r!   Ú"test_table_function_unicode_schemar"  Ï
  s¸   € Ø€EØ€Eô 	�eš_Ð-°²yÐ/AÐBÓC€Aä�Y‰Y˜¤§¡£
Ð+¨e´R·Y±Y³[Ð-AÐBÓC€Fä�X‰X�a Ô'€FØ�!‰9�?‰?˜1Ó×$Ñ$¤R§X¡Xªi¸gÔ%FÔGÐGÐGØ�!‰9�?‰?˜1Ó×$Ñ$¤R§X¡XªoÀHÔ%MÔNÐNÑNrU   c                  ó  — t        j                  t        j                  g d¢«      t        j                  g d¢«      gddg«      } | j                  t        j                  ddg«      «      j	                  | j                  dd«      «      sJ ‚y )NrW  rX  rY  rZ  r   r   )r   r€   rN   r[  rP   r}   rW  s    r!   Ú%test_table_take_vanilla_functionalityr$  Ý
  sm   € Ü�H‰HÜ	�‰Ò$Ó	%Ü	�‰Ò+Ó	,ð	.à	ˆtˆó€Eð
 �:‰:”b—h‘h  1˜vÓ&Ó'×.Ñ.¨u¯{©{¸1¸aÓ/@ÔAÐAÑArU   c                  ó‚  — t        j                  t        j                  g d¢«      t        j                  g d¢«      gddg«      } t        j                  t        j                  dd g«      t        j                  dd g«      gddg«      }| j                  t        j                  dd g«      «      j	                  |«      sJ ‚y )NrW  rX  rY  rZ  r   rz   r   ©r   r€   rN   r[  rP   )r€   Úresult_with_null_indexs     r!   Útest_table_take_null_indexr(  æ
  s    € Ü�H‰HÜ	�‰Ò$Ó	%Ü	�‰Ò+Ó	,ð	.à	ˆtˆó€Eô
  ŸX™XÜ	�‰�1�d�)Ó	Ü	�‰�3˜�+Ó	ð	 à	ˆtˆóÐð
 �:‰:”b—h‘h  4˜yÓ)Ó*×1Ñ1Ð2HÔIÐIÑIrU   c                  ó‚  — t        j                  t        j                  g d¢«      t        j                  g d¢«      gddg«      } t        j                  t        j                  dd g«      t        j                  ddg«      gddg«      }| j                  t        j                  dd	g«      «      j	                  |«      sJ ‚y )
NrW  rX  rY  rZ  r   r”   r•   r   r   r&  )r€   Úresult_non_consecutives     r!   Útest_table_take_non_consecutiver+  ô
  s    € Ü�H‰HÜ	�‰Ò$Ó	%Ü	�‰Ò+Ó	,ð	.à	ˆtˆó€Eô
  ŸX™XÜ	�‰�1�d�)Ó	Ü	�‰�3˜�*Ó	ð	à	ˆtˆóÐð
 �:‰:”b—h‘h  1˜vÓ&Ó'×.Ñ.Ð/EÔFÐFÑFrU   c                  ó  — t        j                  g d¢«      } t        j                  g d¢«      }t        j                  ddgddgddgd d	d
gg«      }t        j                  | ||gg d¢«      }|j                  dg«      }t        j                  | gdg«      }|j	                  |«      sJ ‚|j                  ddg«      }t        j                  ||gddg«      }|j	                  |«      sJ ‚|j                  dg«      }t        j                  | gdg«      }|j	                  |«      sJ ‚|j                  ddg«      }t        j                  ||gddg«      }|j	                  |«      sJ ‚|j                  ddi«      }|j                  ddg«      }d|j                  j                  v sJ ‚t        j                  t        d¬«      5  |j                  dg«       d d d «       t        j                  t        d¬«      5  |j                  dg«       d d d «       |j                  ddg«      }t        j                  ||gddg«      }|j	                  |«      sJ ‚t        j                  | ||gg d¢«      }t        j                  t        d¬«      5  |j                  dg«       d d d «       |j                  dg«      }t        j                  |gdg«      }|j	                  |«      sJ ‚y # 1 sw Y   �ŒxY w# 1 sw Y   ŒåxY w# 1 sw Y   Œ`xY wr‹  )r   rN   r€   r�  rP   r‘  rË   rP  r,   r-   rƒ  rt   )r’  r“  r”  r€   rŸ   rS   r  s          r!   Útest_table_selectr-    s¢  € Ü	�‰Ò$Ó	%€BÜ	�‰Ò+Ó	,€BÜ	�‰�A�q�6˜A˜q˜6 A q 6¨4°!°R°Ð9Ó	:€BÜ�H‰H�b˜"˜b�\Ò#5Ó6€Eð �\‰\˜4˜&Ó!€FÜ�x‰x˜˜˜t˜fÓ%€HØ�=‰=˜Ô"Ð"Ð"à�\‰\˜4 ˜,Ó'€FÜ�x‰x˜˜R˜ 4¨ ,Ó/€HØ�=‰=˜Ô"Ð"Ð"ð �\‰\˜1˜#Ó€FÜ�x‰x˜˜˜t˜fÓ%€HØ�=‰=˜Ô"Ð"Ð"à�\‰\˜1˜a˜&Ó!€FÜ�x‰x˜˜R˜ 4¨ ,Ó/€HØ�=‰=˜Ô"Ð"Ð"ð ×*Ñ*¨C°¨=Ó9€FØ�]‰]˜D $˜<Ó(€FØ�6—=‘=×)Ñ)Ñ)Ð)Ð)ô 
�‰”xÐ'BÖ	CØ�‰�d�VÔ÷ 
Dô 
�‰”zÐ)>Ö	?Ø�‰�a�SÔ÷ 
@ð �\‰\˜4 ˜,Ó'€FÜ�x‰x˜˜R˜ 4¨ ,Ó/€HØ�=‰=˜Ô"Ð"Ð"ô �H‰H�b˜"˜b�\Ò#5Ó6€EÜ	�‰”xÐ'BÖ	CØ�‰�d�VÔ÷ 
Dð �\‰\˜4˜&Ó!€FÜ�x‰x˜˜˜t˜fÓ%€HØ�=‰=˜Ô"Ð"Ñ"÷% 
DÑ	Cú÷ 
@Ð	?ú÷ 
DÐ	Cúr—  c            	      ó®	  — d„ } t        j                  t        j                  g d¢«      t        j                  g d¢«      t        j                  g d¢«      t        j                  g d¢«      gg d¢¬«      }|j                  d«      j	                  d	g«      } | |j                  «       «      g d
¢g d¢dœk(  sJ ‚|j                  d«      j	                  d	dg«      } | |j                  «       «      g d
¢g d¢g d¢dœk(  sJ ‚|j                  d«      j	                  dg«      } | |j                  «       «      g d
¢g d¢dœk(  sJ ‚|j                  d«      j	                  ddg«      } | |j                  «       «      g d
¢g d¢g d¢dœk(  sJ ‚|j                  d«      j	                  ddg«      } | |j                  «       «      g d
¢g d¢g d¢dœk(  sJ ‚|j                  ddg«      j	                  dg«      } | |j                  «       «      g d¢g d¢g d¢dœk(  sJ ‚|j                  d«      j	                  dddg dfdg«      } | |j                  «       «      g d
¢g d¢g d¢g d¢g d¢g d¢dœk(  sJ ‚t        j                  t        j                  g d ¢«      t        j                  g d!¢«      gdd"g¬«      }|j                  dg«      j	                  d"d#t        j                  d$¬%«      fg«      }|j                  «       d&gd'gd(œk(  sJ ‚|j                  dg«      j	                  d"d#t        j                  d)¬%«      fg«      }|j                  «       d&gd*gd(œk(  sJ ‚|j                  dg«      j	                  d"d#t        j                  d+¬%«      fg«      }|j                  «       d&gd,gd(œk(  sJ ‚|j                  dg«      j	                  g dfd"d#t        j                  d+¬%«      fg«      }|j                  «       d&gd'gd,gd-œk(  sJ ‚|j                  dg«      j	                  g dfg«      }|j                  «       d&gd'gd.œk(  sJ ‚t        j                  g d/¢t        d0«      d1œ«      }t         j                  j                  |j                  d'¬2«      «      }|j                  d«      j	                  dg«      } | |j                  «       «      d&d3gd0d4gdœk(  sJ ‚y )5Nc                 ó&  — d| v rt        t        | d   | d   «      «      }n| d   }t        |«      }dt        | d   «      i}| D ]K  }|dk(  rŒ	t        t        || |   «      «      }|D ]&  }|j	                  |g «      j                  ||   «       Œ( ŒM |S )NÚkeys2Úkeys)rÒ  r„   Úsortedr4  Ú
setdefaultrš   )r•   r1  Úsorted_keysÚsorted_dÚentryr¶  Úks          r!   Úsorted_by_keysz+test_table_group_by.<locals>.sorted_by_keys7  s    € à�a‰<Üœ˜Q˜v™Y¨¨'©
Ó3Ó4‰Dà�V‘9ˆDÜ˜T“lˆØœF 1 V¡9Ó-Ð.ˆÛˆEØ˜ŠØÜœ#˜d A e¡HÓ-Ó.ˆFÛ �Ø×#Ñ# E¨2Ó.×5Ñ5°f¸Q±iÕ@ñ !ð	 ð ˆrU   ©rz   rz   r”   r”   r    )ÚXr:  ÚYÚZr<  rá  )ry   rÄ  rÅ  rÆ  rÇ  )r1  r0  r¶  Ú	bigvaluesr{   r1  )r¶  Úhash_sumrØ   )r   r   r   )r1  Ú
values_sum)r¶  Ú
hash_count)r   r   r   )r1  r?  Úvalues_count)r¶  r4   )r¶  Úmax)r=  r4   )r   r   r   )rÅ  rÉ  rÇ  )r1  Ú
values_maxÚbigvalues_sum)r=  rB  )rÄ  rÆ  rÇ  )r1  r?  Úbigvalues_maxr0  )rz   r”   r”   r    )r:  r;  r<  r<  )r   r   r   r   )r1  r0  r?  Ú	count_all)r1  rC  rD  rE  rF  r?  )rz   rz   rz   )r   NNr¶  Úcountr1   )Úmoderz   r   )r1  rA  Ú	only_nullr   Ú
only_validr   )r1  rF  rA  )r1  rF  )rz   r”   rz   r”   rz   r”   r   ©r1  r¶  r°  r”   r   )r   r€   rN   Úgroup_byÚ	aggregater3  ÚpcÚCountOptionsr…   r~   r2  r(  )r8  r€   ÚrÚtable_with_nullsÚtable_with_chunkss        r!   Útest_table_group_byrS  5  sV  € òô  �H‰HÜ
�‰Ò*Ó+Ü
�‰Ò*Ó+Ü
�‰’Ó!Ü
�‰Ò%Ó&ð	ò
 6ô7€Eð 	�‰�vÓ×(Ñ(Øð*ó 	€Añ ˜!Ÿ+™+›-Ó(ÚÚñ-ò ð ð ð
 	�‰�vÓ×(Ñ(ØØ ð*ó 	€Añ ˜!Ÿ+™+›-Ó(ÚÚÚ!ñ-ò ð ð ð 	�‰�vÓ×(Ñ(Øð*ó 	€Añ ˜!Ÿ+™+›-Ó(ÚÚñ-ò ð ð ð
 	�‰�vÓ×(Ñ(ØØð*ó 	€Añ ˜!Ÿ+™+›-Ó(ÚÚÚ%ñ-ò ð ð ð 	�‰�vÓ×(Ñ(ØØð*ó 	€Añ ˜!Ÿ+™+›-Ó(ÚÚÚ%ñ-ò ð ð ð 	�‰˜ Ð(Ó)×3Ñ3Øð5ó 	€Añ ˜!Ÿ+™+›-Ó(Ú$Ú%Ú"ñ-ò ð ð ð 	�‰�vÓ×(Ñ(ØØØØ	ˆ[ÐØð*ó 	€Añ ˜!Ÿ+™+›-Ó(ÚÚÚ%Ú%ÚÚñ-ò ð ð ô —x‘xÜ
�‰’Ó!Ü
�‰’Ó!ð!ð �hÐô!Ðð
 	×!Ñ! 6 (Ó+×5Ñ5Ø	�7œBŸO™O°Ô7Ð8ð7ó 	€Að �;‰;‹=Ø�Ø˜ñò ð ð ð
 	×!Ñ! 6 (Ó+×5Ñ5Ø	�7œBŸO™O°Ô=Ð>ð7ó 	€Að �;‰;‹=Ø�Ø˜ñò ð ð ð
 	×!Ñ! 6 (Ó+×5Ñ5Ø	�7œBŸO™O°Ô>Ð?ð7ó 	€Að �;‰;‹=Ø�Ø˜ñò ð ð ð
 	×!Ñ! 6 (Ó+×5Ñ5Ø	ˆ[ÐØ	�7œBŸO™O°Ô>Ð?ð7ó 	€Að �;‰;‹=Ø�Ø�SØ˜ñò ð ð ð 	×!Ñ! 6 (Ó+×5Ñ5Ø	ˆ[Ðð7ó 	€Að �;‰;‹=Ø�Ø�Sñò ð ð ô
 �H‰HÚ.Ü˜“(ñó €Eô Ÿ™×-Ñ-Ø×Ñ qÐÓ)ó+Ðà×"Ñ" 6Ó*×4Ñ4Ð6GÐ5HÓI€AÙ˜!Ÿ+™+›-Ó(Ø�c�
Ø˜!�fñ-ò ð ñ rU   c                  ó  — t        j                  g d¢g d¢g d¢dœ«      } | j                  d«      }t        j                  dgdgdgd	œ«      }d
D ]9  }|j                  d|¬«      j	                  ddg«      }|j                  |«      rŒ9J ‚ y )N)rr   ry   ry   )TFN)FTN)ÚgÚany_argÚall_argr   ry   FT)rU  Úany_arg_anyÚall_arg_all)FTrU  ©Úuse_threads)rV  Úany)rW  r1   )r   r€   r}   rL  rM  rP   )r€   r  rS   r[  rŸ   s        r!   Útest_group_by_sliced_any_allr]  Ò  s™   € ô �H‰HâÚ*Ú*ñ	
ó€Eð �[‰[˜‹^€Fä�x‰xà�Ø!˜7Ø ˜6ñ	
ó€Hó %ˆØ—‘ °+�Ó>×HÑHà"Ø"ðó
ˆð �}‰}˜XÕ&Ð&Ð&ñ %rU   c                  óð  — t        j                  g d¢ddgdz  dœ«      } t        j                  g d¢ddgdz  dœ«      }t        j                  | |g«      }t        j                  t
        «      5  |j                  d«      j                  dg«       d d d «       |j                  dd¬«      j                  dg«      }t        j                  ddgd	dgd
œ«      }|j                  |«      sJ ‚y # 1 sw Y   Œ\xY w)Nr_  rz   r”   r   rÉ   )rz   ÚfirstFrZ  r   )r”   Úa_first)	r   r€   r£  r,   r-   r.  rL  rM  rP   )r  r  r€   rŸ   rS   s        r!   Útest_table_group_by_firstra  ò  sÓ   € ô �X‰XšL°°S¨z¸A©~Ñ>Ó?€FÜ�X‰XšL°°S¨z¸A©~Ñ>Ó?€FÜ×Ñ˜f fÐ-Ó.€Eä	�‰Ô*Õ	+Ø�‰�sÓ×%Ñ% ~Ð&6Ô7÷ 
,ð �^‰^˜C¨Uˆ^Ó3×=Ñ=¸~Ð>NÓO€FÜ�x‰x˜s C˜j°a¸°VÑ<Ó=€HØ�=‰=˜Ô"Ð"Ñ"÷ 
,Ð	+ús   Á/"C,Ã,C5c                  ól  — t        j                  g d¢g d¢g d¢dœ«      } t        j                  t        d¬«      5  | j                  d«      j                  dg«       d d d «       | j                  d«      j                  d	g«      }t        j                  g d
¢i i i gdœ«      }|j                  |«      sJ ‚t        j                  d¬«      }| j                  d«      j                  dd|fg«      }t        j                  g d
¢dddœdddœdddœgdœ«      }|j                  |«      sJ ‚y # 1 sw Y   ŒÎxY w)N)r   r   r   r   r   r   )Úhrc  rc  Úwrd  rd  )ry   rÄ  rÅ  rÆ  rÇ  rÈ  )ÚgrouprM  rN  z accepts 3 arguments but 2 passedrD   re  )rM  Úpivot_wider)©rM  rN  rf  r   )re  Úkey_value_pivot_wider)rc  rd  )Ú	key_namesrg  rf  ry   rÆ  rÄ  rÇ  rÅ  rÈ  )
r   r€   r,   r-   r.   rL  rM  rP   rN  ÚPivotWiderOptions)r€   rŸ   rS   Úoptionss       r!   Útest_table_group_by_pivot_widerrl    s)  € ä�H‰HÒ1Ú;Ú7ñ9ó :€Eô 
�‰”zÐ)KÖ	LØ�‰�wÓ×)Ñ)Ð+AÐ*BÔC÷ 
Mð
 �^‰^˜GÓ$×.Ñ.Ð0QÐ/RÓS€FÜ�x‰x¢)Ø35°r¸2°,ñ@ó A€Hà�=‰=˜Ô"Ð"Ð"ä×"Ñ"¨ZÔ8€GØ�^‰^˜GÓ$×.Ñ.Ø
˜M¨7Ð	3Ð4ó6€Fä�x‰xÚà˜BÑ r°Ñ!3¸2ÀBÑ5Gð#Iñ	JóK€Hð �=‰=˜Ô"Ð"Ñ"÷# 
MÐ	Lús   »"D*Ä*D3c                  ój  — t         j                  j                  dg d¢i«      } | j                  «       }| j                  |j                  k(  sJ ‚| |j                  «       k(  sJ ‚| j                  d¬«      }|j                  «       j                  dk(  sJ ‚|j                  «       j                  dk(  sJ ‚y )Nr�   r   r   r°  r   )r   r~   r5  Ú	to_readerrË   Úread_allÚread_next_batchrÁ   )r€   r<  s     r!   Útest_table_to_recordbatchreaderrq    sœ   € Ü�H‰H× Ñ  #¢yÐ!1Ó2€EØ�_‰_Ó€FØ�<‰<˜6Ÿ=™=Ò(Ð(Ð(Ø�F—O‘OÓ%Ò%Ð%Ð%à�_‰_¨1ˆ_Ó-€FØ×!Ñ!Ó#×,Ñ,°Ò1Ð1Ð1Ø×!Ñ!Ó#×,Ñ,°Ò1Ð1Ñ1rU   c                  óª  — t        j                  g d¢g d¢dœ«      } t        j                  g d¢g d¢dœ«      }| j                  |dd«      }|j                  «       t        j                  g d¢g d¢g d	¢d
œ«      k(  sJ ‚| j                  |ddd¬«      }|j                  «       j	                  d«      t        j                  g d¢g d¢g d¢d
œ«      k(  sJ ‚y )N©r   r   r   ©rz   r”   rL  ©ÚcolAÚcol2©rr   r   r   ©r<  r@  r?  )ÚcolBÚcol3rv  rz  ©r?  r@  N©rv  rw  r{  ú
full outer©Ú	join_type©r   r   r   rr   ©rz   r”   rL  N©r?  r@  Nr<  ©r   r€   ÚjoinrO   Úsort_byrÁ  s      r!   Útest_table_joinr‡  &  sÖ   € ä	�‰ÚÚñó 
€Bô
 
�‰ÚÚñó 
€Bð
 �W‰W�R˜ Ó(€FØ× Ñ Ó"¤b§h¡hÚÚÚ ñ0ó 'ò ð ð ð �W‰W�R˜ °<ˆWÓ@€FØ× Ñ Ó"×*Ñ*¨6Ó2´b·h±hÚÚ%Ú%ñ@ó 7ò ð ñ rU   c                  ó¨  — t        j                  g d¢g d¢dœ«      } t        j                  g d¢g d¢dœ«      }| j                  |d«      }|j                  «       t        j                  g d¢g d¢g d¢d	œ«      k(  sJ ‚| j                  |dd
d¬«      }|j                  «       j	                  d«      t        j                  g d¢g d¢g d¢d	œ«      k(  sJ ‚y )Nrs  rt  ru  rx  ry  )rv  r{  rv  r|  r}  r~  Ú_r)r€  Úright_suffixr�  r‚  rƒ  r„  rÁ  s      r!   Útest_table_join_unique_keyr‹  A  sÔ   € ä	�‰ÚÚñó 
€Bô
 
�‰ÚÚñó 
€Bð
 �W‰W�R˜Ó €FØ× Ñ Ó"¤b§h¡hÚÚÚ ñ0ó 'ò ð ð ð �W‰W�R˜¨<ÀdˆWÓK€FØ× Ñ Ó"×*Ñ*¨6Ó2´b·h±hÚÚ%Ú%ñ@ó 7ò ð ñ rU   c            	      ó<  — t        j                  g d¢g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢dœ«      }| j                  |dd	¬
«      }|j                  «       j	                  d«      t        j                  g d¢g d¢g d¢g d¢g d¢gg d¢¬«      k(  sJ ‚y )Nrs  ©ry   rÄ  rÈ  rt  ©rv  rz  ÚcolValsrx  ©rr   rÄ  ry   ry  rv  r~  r  r�  )ry   rÄ  rÈ  Nr‚  )ry   rÄ  Nrr   rƒ  )rv  rz  r�  rz  r�  r{   r„  rÁ  s      r!   Útest_table_join_collisionsr‘  \  s�   € ä	�‰ÚÚÚ"ñó 
€Bô 
�‰ÚÚÚ"ñó 
€Bð �W‰W�R˜¨<ˆWÓ8€FØ× Ñ Ó"×*Ñ*¨6Ó2´b·h±hÚÚÚÚÚð@ò <ô7=ò =ð =ñ =rU   c                 óÈ   — | j                  g d¢g d¢g d¢dœ«      }|j                  t        j                  d«      dk  «      }|| j                  ddgd	d
gddgdœ«      k(  sJ ‚y )N)r   r   r   r   )ry   rÄ  NrÈ  )rz   r”   r    rL  rŽ  rz  rÇ  r   r   ry   rÄ  rz   r”   )r5  ÚfilterrN  rå   )ræ  r�  rŸ   s      r!   Útest_table_filter_expressionr”  t  su   € ð 
�‰ÚÚ"Ú'ñó 
€Bð �Y‰Y”r—x‘x Ó'¨"Ñ,Ó-€FØ�S—_‘_Ø�A�Ø�R�Ø˜�:ñ&ó ò ð ñ rU   c                  ó`  — t        j                  g d¢g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢dœ«      }t        j                  | |g«      }|j                  t	        j
                  d«      d	k  «      }|j                  «       t        j                  g d
¢g d¢g d¢dœ«      k(  sJ ‚y )Nrs  r�  rt  rŽ  rx  r�  ry  rv  ry   )r   r   r   r   r   )ry   rÄ  rÈ  rÄ  ry   )rz   r”   rL  r@  r?  )r   r€   r£  r“  rN  rå   rO   )r�  r]  r^  rŸ   s       r!   Ú#test_table_filter_expression_chunksr–  …  s¢   € ä	�‰ÚÚÚ"ñó 
€Bô
 
�‰ÚÚÚ"ñó 
€Bô 
×	Ñ	˜2˜r˜(Ó	#€Bà�Y‰Y”r—x‘x Ó'¨"Ñ,Ó-€FØ× Ñ Ó"¤b§h¡hÚÚ$Ú,ñ0ó 'ò ð ñ rU   c                  óò  — t        j                  g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢g d¢g d¢g d¢dœ«      }| j                  |dd«      }|j                  «       t        j                  g d¢g d¢g d	¢g d	¢g d	¢g d	¢g d	¢d
œ«      k(  sJ ‚| j                  |ddd¬«      }|j                  «       j	                  d«      t        j                  g d¢g d¢g d¢g d¢g d¢g d¢g d¢d
œ«      k(  sJ ‚y )Nrs  rt  ru  rx  ry  )rz  r{  Úcol4Úcol5Úcol6Úcol7rv  rz  r|  )rv  rw  r{  r˜  r™  rš  r›  r~  r  r�  r‚  rƒ  r„  rÁ  s      r!   Útest_table_join_many_columnsrœ  œ  sú   € ä	�‰ÚÚñó 
€Bô
 
�‰ÚÚÚÚÚÚñó 
€Bð �W‰W�R˜ Ó(€FØ× Ñ Ó"¤b§h¡hÚÚÚ Ú Ú Ú Ú ñ0ó 'ò ð ð ð �W‰W�R˜ °<ˆWÓ@€FØ× Ñ Ó"×*Ñ*¨6Ó2´b·h±hÚÚ%Ú%Ú%Ú%Ú%Ú%ñ@ó 7ò ð ñ rU   c                  ó4  — t         j                  j                  g d¢g d¢dœ«      } t         j                  j                  g d¢g d¢g d¢dœ«      }| j                  |dd	d
dd¬«      }|j	                  «       t        j
                  g d¢g d¢g d¢dœ«      k(  sJ ‚y )N)r   r   r   r   r   )rz   r”   rz   r”   rL  ru  )r   r   rÜ  )rz   r”   rU  )rf   rh   rC   )rz  r{  ÚcolCrv  rw  r   rz  r{  ©ÚonÚbyÚ	toleranceÚright_onÚright_by)rf   NNNN)rv  rw  rž  )r   r~   r5  Ú	join_asofrO   r€   )r�  r]  rP  s      r!   Útest_table_join_asofr¦  Ã  sž   € ä	�‰×	Ñ	ÚÚ)ñó 
€Bô
 
�‰×	Ñ	ÚÚÚñó 
€Bð 	�‰Ø
ˆv˜&¨AØ &ð 	ó 	€Að ×ÑÓ¤§¡ÚÚ)Ú,ñ+ó "ò ð ñ rU   c                  ó   — t        j                  g d¢g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢g d¢d	œ«      }| j                  |d
ddgd¬«      }|j                  d«      t        j                  g d¢g d¢g d¢g d¢dœ«      k(  sJ ‚y )Nrs  r�  r   ©rv  rz  r   r�  ry  rx  ©r   r   r   )rz  r�  rv  r   r   rv  rz  r   ©r   r¡  r¢  )Nr@  N©rv  rz  r   r�  )r   r€   r¥  r†  rÁ  s      r!   Ú test_table_join_asof_multiple_byr¬  Û  s›   € ä	�‰ÚÚÚñó 
€Bô 
�‰ÚÚ"ÚÚñ	ó 
€Bð �\‰\Ø
ˆt˜ Ð(°Að ó €Fð �>‰>˜&Ó!¤R§X¡XÚÚÚÚ$ñ	/ó &ò ð ñ rU   c                  óÚ   — t        j                  dg d¢i«      } t        j                  g d¢g d¢dœ«      }| j                  |dg d¬«      }|t        j                  g d¢g d¢d	œ«      k(  sJ ‚y )
Nr   r   ry  r©  )r�  r   r   rª  )r<  r<  r@  )r   r�  )r   r€   r¥  rÁ  s      r!   Útest_table_join_asof_empty_byr®  õ  s}   € ä	�‰ØŠiðó 
€Bô 
�‰Ú"Úñó 
€Bð
 �\‰\Ø
ˆt˜ að ó €Fð ”R—X‘XÚÚ"ñó ò ð ñ rU   c            
      ó,  — t        j                  g d¢g d¢g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢g d	¢g d
¢dœ«      }d}t        j                  t        |¬«      5  | j                  |dddgddddg¬«       d d d «       y # 1 sw Y   y xY w)Nrs  r�  r   rt  r«  r�  ry  ©rÍ  rè  ré  rx  r©  )rz  r�  ÚcolUniqrv  r   zXColumns {'colVals'} present in both tables. AsofJoin does not support column collisions.rD   r   rv  rz  r   rŸ  )r   r€   r,   r-   r.   r¥  ©r�  r]  rJ   s      r!   Útest_table_join_asof_collisionsr³  	  s”   € ä	�‰ÚÚÚÚ"ñ	ó 
€Bô 
�‰ÚÚ"Ú"ÚÚñó 
€Bð	7ð ô 
�‰”z¨Ö	-Ø
�‰Ø�4˜V VÐ,¸Ø V¨VÐ$4ð 	ô 	
÷ 
.×	-Ñ	-ús   Á%B
Â
Bc            	      óF  — t        j                  g d¢g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢g d¢d	œ«      }d
}t        j                  t         j                  j
                  |¬«      5  | j                  |dddgdddg¬«       d d d «       y # 1 sw Y   y xY w)Nrs  r�  r   r¨  ry  r°  rx  r©  ©r�  r±  rv  r   z)inconsistent size of by-key across inputsrD   r   rv  rz  r   rŸ  ©r   r€   r,   r-   r   r  r¥  r²  s      r!   Ú'test_table_join_asof_by_length_mismatchr·  %  s�   € ä	�‰ÚÚÚñó 
€Bô 
�‰Ú"Ú"ÚÚñ	ó 
€Bð 6€CÜ	�‰”r—v‘v×*Ñ*°#Ö	6Ø
�‰Ø�4˜V VÐ,¸Ø V Hð 	ô 	
÷ 
7×	6Ñ	6ús   Á3BÂB c            	      ó>  — t        j                  g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢g d¢dœ«      }d	}t        j                  t         j                  j
                  |¬
«      5  | j                  |ddgdddg¬«       d d d «       y # 1 sw Y   y xY w)Nrs  r   ©rv  r   ry  r°  )g     ÀX@rg   rf   r©  rµ  zCExpected by-key type int64 but got double for field colA in input 1rD   r   rv  r   rŸ  r¶  r²  s      r!   Ú%test_table_join_asof_by_type_mismatchrº  <  s‹   € ä	�‰ÚÚñó 
€Bô
 
�‰Ú"Ú"ÚÚñ	ó 
€Bð P€CÜ	�‰”r—v‘v×*Ñ*°#Ö	6Ø
�‰Ø�4˜V˜H°Ø V Hð 	ô 	
÷ 
7×	6Ñ	6úó   Á0BÂBc            	      ó>  — t        j                  g d¢g d¢dœ«      } t        j                  g d¢g d¢g d¢g d¢dœ«      }d	}t        j                  t         j                  j
                  |¬
«      5  | j                  |ddgdddg¬«       d d d «       y # 1 sw Y   y xY w)Nrs  r   r¹  ry  r°  rx  )rg   rh   rB   rµ  zAExpected on-key type int64 but got double for field on in input 1rD   r   rv  r   rŸ  r¶  r²  s      r!   Ú%test_table_join_asof_on_type_mismatchr½  R  s‹   € ä	�‰ÚÚñó 
€Bô
 
�‰Ú"Ú"ÚÚñ	ó 
€Bð N€CÜ	�‰”r—v‘v×*Ñ*°#Ö	6Ø
�‰Ø�4˜V˜H°Ø V Hð 	ô 	
÷ 
7×	6Ñ	6úr»  c                 ó¨  — | j                  d dgd dgdœ«      }t        j                  t        j                  ddd¬«      t        j                  ddd	¬«      g«      }t	        j
                  t        «      5  |j                  |«       d d d «       | j                  d dgd	dgdœ«      }|j                  |«      j                  |k(  sJ ‚y # 1 sw Y   ŒBxY w)
Nr   TrÉ   rz   rF   rB  r”   ÚboolF)r5  r   rË   rå   r,   r-   r.   r
  )ræ  r€   Ú
new_schemas      r!   Útest_table_cast_invalidrÁ  h  s³   € ð �O‰O 4¨ )°4¸°,Ñ?Ó@€EÜ—‘œBŸH™H S¨'¸DÔAÜŸH™H S¨&¸5ÔAðCó D€Jä	�‰”zÕ	"Ø�
‰
�:Ô÷ 
#ð �O‰O 4¨ )°5¸$°-Ñ@ÓA€EØ�:‰:�jÓ!×(Ñ(¨JÒ6Ð6Ñ6÷	 
#Ð	"ús   Á5CÃCc                 óÆ  — | j                  t        j                  g d¢«      t        j                  g d¢«      gddg¬«      }|j                  d«      j	                  «       g d¢g d¢dœk(  sJ ‚|j                  d	g«      j	                  «       g d
¢g d¢dœk(  sJ ‚| j                  t        j                  g d¢t        j
                  «       ¬«      t        j                  g d¢«      gddg¬«      }|j                  dg«      }|j	                  «       }|d   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚|j                  dg«      }|j	                  «       }|d   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚y )N)r   r   r   r   r   )r”   rz   r”   rz   r    r¶  r1  r{   r9  rá  rK  )r¶  Ú
descendingÚat_end)r    r”   r”   rz   rz   )r   r   r   r   r   )r   r   r   é#   r   )rî   Úcarrï   Úfoobarrz   r”   ©rz   rÃ  rÄ  )rÅ  r   r   r   )rÇ  rÆ  rï   rî   )rz   Ú	ascendingrÄ  )r   r   rN   r†  r3  rF   )ræ  r€   r  Ú
sorted_tabÚsorted_tab_dicts        r!   Útest_table_sort_byrÌ  {  sz  € ð �O‰OÜ
�‰’Ó!Ü
�‰Ò*Ó+ðð ˜Ðð ó !€Eð
 �=‰=˜Ó"×,Ñ,Ó.Ú)Ú!ñ3ò ð ð ð
 �=‰=Ð<Ð=Ó>×HÑHÓJÚ)Ú!ñOò ð ð ð
 �/‰/Ü
�‰’¤R§X¡X£ZÔ0Ü
�‰Ò0Ó1ðð �3ˆZð ó €Cð
 —‘Ð;Ð<Ó=€JØ ×*Ñ*Ó,€OØ˜3Ñ¢=Ò0Ð0Ð0Ø˜3ÑÒ#BÒBÐBÐBà—‘Ð:Ð;Ó<€JØ ×*Ñ*Ó,€OØ˜3Ñ¢=Ò0Ð0Ð0Ø˜3ÑÒ#BÒBÐBÑBrU   c                  óÈ  — t         j                  j                  t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢t        j                  «       ¬«      t        j                  g d¢«      gg d¢¬«      } | j                  ddg«      }|j                  «       }|d	   g d
¢k(  sJ ‚|d   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚| j                  ddg«      }|j                  «       }|d	   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚| j                  ddg«      }|j                  «       }|d	   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚|d   g d¢k(  sJ ‚y )N)r   rÅ  r   r   NNr   r   r   )r   r   r   r   Nr   Nr   )rî   rÆ  rï   rÇ  ÚdarÚearÚfarÚgarrØ   r{   rÈ  )r”   rÃ  Úat_startrz   )rÅ  r   r   r   r   r   NNr”   )r   r   r   Nr   r   Nr   r    )rÆ  rî   rï   rÐ  rÑ  rÇ  rÎ  rÏ  )rz   rÉ  rÒ  )r”   rÉ  rÄ  )NNr   r   r   r   r   rÅ  )r   Nr   r   Nr   r   r   )rÏ  rÎ  rÇ  rÑ  rÐ  rï   rî   rÆ  )r”   rÃ  rÄ  )r   Nr   r   Nr   r   r   )rÏ  rÎ  rÑ  rÇ  rÐ  rî   rï   rÆ  )r   rÄ   r   rN   rF   r†  r3  )rb  Ú	sorted_rbÚsorted_rb_dicts      r!   Útest_record_batch_sortrÕ  ¢  s¯  € Ü	�‰×	#Ñ	#Ü
�‰Ò0´r·x±x³zÔBÜ
�‰Ò/´b·h±h³jÔAÜ
�‰ÒLÓMð%ò ð	 
$ó 
€Bð —
‘
Ð9Ø:ð<ó =€Ià×(Ñ(Ó*€NØ˜#ÑÒ"AÒAÐAÐAØ˜#ÑÒ"@Ò@Ð@Ð@Ø˜#Ñò #Pò Pð Pð Pð —
‘
Ð:Ø7ð9ó :€Ià×(Ñ(Ó*€NØ˜#ÑÒ"AÒAÐAÐAØ˜#ÑÒ"@Ò@Ð@Ð@Ø˜#Ñò #Pò Pð Pð Pð —
‘
Ð:Ø8ð:ó ;€Ià×(Ñ(Ó*€NØ˜#ÑÒ"AÒAÐAÐAØ˜#ÑÒ"@Ò@Ð@Ð@Ø˜#Ñò #Pò Pð Pñ PrU   Úconstructorc                 ó4  —  | g d¢g d¢gddg¬«      }t        j                  |«      }t        j                  ddgdd	gd
dggd¬«      }t         j                  j	                  ||«       t        j                  |d¬«      }t         j                  j	                  ||«       |j
                  dk(  sJ ‚|j                  g «      }t        j                  |«      }t        j                  d«      }t         j                  j	                  ||«       |j
                  dk(  sJ ‚t        j                  |d¬«      }t         j                  j	                  ||«       |j
                  dk(  sJ ‚|j                  dd«      }t        j                  |«      }t        j                  d«      }t         j                  j	                  ||«       |j
                  dk(  sJ ‚t        j                  |d¬«      }t         j                  j	                  ||«       |j
                  dk(  sJ ‚y )Nr   rA   rz   r”   r{   r   r   r   r   r   r   rj   rÒ   ru   )r   r   r   rÊ   )	r[   r\   rN   rµ   Úassert_allcloserÓ   r�  Úemptyr}   )rÖ  r€   rŸ   rS   r  r·  s         r!   Útest_numpy_asarrayrÚ  Â  s¦  € ñ š¢OÐ4¸SÀ#¸JÔG€EÜ�Z‰Z˜Ó€FÜ�x‰x˜!˜Q˜ ! Q ¨!¨Q¨Ð0¸	ÔB€HÜ‡J�J×Ñ˜v xÔ0ä�Z‰Z˜ WÔ-€FÜ‡J�J×Ñ˜v xÔ0Ø�<‰<˜7Ò"Ð"Ð"ð �\‰\˜"Ó€FÜ�Z‰Z˜Ó€FÜ�x‰x˜Ó€HÜ‡J�J×Ñ˜v xÔ0Ø�<‰<˜9Ò$Ð$Ð$Ü�Z‰Z˜ gÔ.€FÜ‡J�J×Ñ˜v xÔ0Ø�<‰<˜7Ò"Ð"Ð"ð �[‰[˜˜AÓ€FÜ�Z‰Z˜Ó€FÜ�x‰x˜Ó€HÜ‡J�J×Ñ˜v xÔ0Ø�<‰<˜9Ò$Ð$Ð$Ü�Z‰Z˜ gÔ.€FÜ‡J�J×Ñ˜v xÔ0Ø�<‰<˜7Ò"Ð"Ñ"rU   c                 ó°  —  | g d¢g d¢gddg¬«      }t        j                  ddgdd	gd
dggd¬«      }t        t         j                  «      t        d«      k  r8t        j                  |d¬«      }t         j                  j                  ||«       y t        j                  t        d¬«      5  t        j                  |d¬«       d d d «       y # 1 sw Y   y xY w)Nr   rA   rz   r”   r{   r   r   r   r   r   r   rj   rÒ   z
2.0.0.dev0F)ÚcopyzUnable to avoid a copyrD   )	r[   rN   r   Ú__version__rµ   Úassert_array_equalr,   r-   r.   )rÖ  r€   rS   rŸ   s       r!   Útest_numpy_array_protocolrß  ã  s¢   € ñ š¢OÐ4¸SÀ#¸JÔG€EÜ�x‰x˜!˜Q˜ ! Q ¨!¨Q¨Ð0¸	ÔB€HäŒr�~‰~Ó¤¨Ó!6Ò6ä—‘˜% eÔ,ˆÜ
�
‰
×%Ñ% f¨hÕ7ô �]‰]œ:Ð-EÖFÜ�H‰H�U Õ'÷ G×FÑFús   Â+CÃCc                  ó"  — d} t         j                  j                  t        | «      t        | «      D ��cg c]  }t        d«      D �cg c]  }|‘Œ c}‘Œ c}}dœ«      }t         j                  j                  t        | «      t        | «      D �cg c]  }|‘Œ c}dœ«      }t	        j
                  t         j                  j                  «      5 }|j                  |dd¬«       d d d «       d}|t        j                  «      v sJ ‚t	        j
                  t         j                  j                  «      5 }|j                  |dd¬«       d d d «       |t        |j                  «      v sJ ‚y c c}w c c}}w c c}w # 1 sw Y   Œ˜xY w# 1 sw Y   Œ?xY w)	NrÅ  r   )rm  Úarray_column)rm  rN  rm  Úinnerr  zOData type list<item: int64> is not supported in join non-key field array_column)r   r~   r5  r…   r,   r-   r   r  r…  rm   rN  )Ú	NUM_ITEMSr�   r˜  r�  r]  ÚexcinfoÚexp_error_msgs          r!   Útest_invalid_non_join_columnræ  ó  sF  € à€IÜ	�‰×	Ñ	Ü�IÓÜ8=¸iÔ8HÔIÑ8H°1¤U¨1¤XÓ.¡X š! XÓ.Ð8HÒIñó 
€Bô 
�‰×	Ñ	Ü�IÓÜ" 9Ô-Ó.Ñ-˜’!Ð-Ñ.ñó 
€Bô 
�‰”r—v‘v×*Ñ*Ô	+¨wØ
�‰��D GˆÔ,÷ 
,ð/€MàœC §¡Ó.Ñ.Ð.Ð.ô 
�‰”r—v‘v×*Ñ*Ô	+¨wØ
�‰��D GˆÔ,÷ 
,àœC §¡Ó.Ñ.Ð.Ñ.ùò# /ùÓIùò /÷ 
,Ð	+ú÷ 
,Ð	+ús5   ´E.Á	E)ÁE.Â	E4
ÃE9Ä2FÅ)E.Å9FÆFc                  óZ   — t        j                  dt        ¬«      } | j                  d«      S )Nzpyarrow.cuda)Úexc_typer   )r,   ÚimportorskipÚImportErrorÚContext)Úcudas    r!   Úcuda_contextrí    s"   € ä×Ñ˜~¼ÔD€DØ�<‰<˜‹?ÐrU   c                  óÈ   — t        j                  t        j                  dt        j                  «       «      t        j                  dt        j                  «       «      g«      S )NrD  rE  )r   rË   rå   ru   rX   rU   r!   rË   rË     s8   € ä�9‰9”b—h‘h˜t¤R§X¡X£ZÓ0´"·(±(¸4ÄÇÁÃÓ2LÐMÓNÐNrU   c                 óÆ   — t        j                  g d¢| j                  d«      j                  «      t        j                  g d¢| j                  d«      j                  «      gS )Nrá  r   rC  r   )r   rN   rå   r	   r(  s    r!   Ú
cpu_arraysrð    sG   € ä�H‰H’_ f§l¡l°1£o×&:Ñ&:Ó;Ü�H‰HÒ+¨V¯\©\¸!«_×-AÑ-AÓBðDð DrU   c                 ó^   — |D �cg c]  }|j                  | j                  «      ‘Œ c}S c c}w r   ©Úcopy_toÚmemory_manager)rí  rð  rI   s      r!   Úcuda_arraysrõ    s)   € á@JÓKÁ
¸ˆC�K‰K˜×3Ñ3Õ4À
ÑKÐKùÒKs   …"*c                 óP   — t        j                  | «      }|j                  du sJ ‚|S )NT©r   r(   Úis_cpu)rð  r(   s     r!   Úcpu_chunked_arrayrù  "  s,   € ä×$Ñ$ ZÓ0€MØ×Ñ 4Ñ'Ð'Ð'ØÐrU   c                 óP   — t        j                  | «      }|j                  du sJ ‚|S ©NFr÷  )rõ  r(   s     r!   Úcuda_chunked_arrayrü  )  s,   € ä×$Ñ$ [Ó1€MØ×Ñ 5Ñ(Ð(Ð(ØÐrU   c                 óV   — t        j                  | |z   «      }|j                  du sJ ‚|S rû  r÷  )rð  rõ  r(   s      r!   Úcpu_and_cuda_chunked_arrayrþ  0  s1   € ä×$Ñ$ Z°+Ñ%=Ó>€MØ×Ñ 5Ñ(Ð(Ð(ØÐrU   c                 ó0   — t        j                  | |¬«      S ©Nr(  )r   r)  )rð  rË   s     r!   Úcpu_recordbatchr  7  s   € ä�?‰?˜:¨fÔ5Ð5rU   c                 ó8   — |j                  | j                  «      S r   rò  )rí  r  s     r!   Úcuda_recordbatchr  <  s   € à×"Ñ" <×#>Ñ#>Ó?Ð?rU   c                 ó4   — t        j                  ||g| ¬«      S r   ©r   r€   )rË   rù  s     r!   Ú	cpu_tabler  A  s   € ä�8‰8Ð&Ð(9Ð:À6ÔJÐJrU   c                 ó4   — t        j                  ||g| ¬«      S r   r  )rË   rü  s     r!   Ú
cuda_tabler  F  s   € ä�8‰8Ð'Ð);Ð<ÀVÔLÐLrU   c                 ó4   — t        j                  ||g| ¬«      S r   r  )rË   rù  rü  s      r!   Úcpu_and_cuda_tabler
  K  s   € ä�8‰8Ð&Ð(:Ð;ÀFÔKÐKrU   c                 óÆ  — |j                   |j                   k(  sJ ‚|j                  «       |j                  «       k(  sJ ‚t        |«      t        |«      k(  sJ ‚t        |«      t        |«      v sJ ‚|j	                  «        t        j                  t        «      5  |j	                  d¬«       d d d «       t        j                  t        «      5  |j                   d d d «       t        j                  t        «      5  |j                   d d d «       t        j                  t        «      5  |j                  «        d d d «       t        j                  t        «      5  |d    d d d «       t        j                  t        «      5  |j                  «        d d d «       t        j                  t        «      5  |j                  «        d d d «       t        j                  t        «      5  |j                  «        d d d «       t        j                  t        «      5  |j                  d«       d d d «       t        j                  t        «      5  ||k(   d d d «       t        j                  t        «      5  |j                  «        d d d «       t        j                  t        «      5  |j!                  «        d d d «       t        j                  t        «      5  |j#                  «        d d d «       t        j                  t        «      5  |j%                  «        d d d «       t        j                  t        «      5  |j'                  «        d d d «       t        j                  t        «      5  |j)                  «        d d d «       t        j                  t        «      5  |j+                  «        d d d «       t        j                  t        «      5  |j-                  «        d d d «       t        j                  t        «      5  |j/                  «        d d d «       t        j                  t        «      5  |j1                  g d¢«       d d d «       t        j                  t        «      5  |j3                  d«       d d d «       |j5                  dd«       t        j                  t        «      5  |j7                  dg«       d d d «       t        j                  t        «      5  |j9                  «        d d d «       t        j                  t        «      5  |j;                  «        d d d «       t        j                  t        «      5  |j=                  «        d d d «       |j>                  |j>                  k(  sJ ‚tA        |jB                  «      tA        |jB                  «      k(  sJ ‚|jE                  d«      }|jF                  tH        jJ                  jL                  k(  sJ ‚t        j                  t        «      5  |jO                  «        d d d «       t        j                  t        «      5  |jQ                  «        d d d «       t        j                  t        «      5  |jS                  «        d d d «       y # 1 sw Y   �ŒÎxY w# 1 sw Y   �Œ­xY w# 1 sw Y   �ŒŒxY w# 1 sw Y   �ŒgxY w# 1 sw Y   �ŒMxY w# 1 sw Y   �Œ(xY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒÞxY w# 1 sw Y   �Œ¸xY w# 1 sw Y   �ŒžxY w# 1 sw Y   �ŒyxY w# 1 sw Y   �ŒTxY w# 1 sw Y   �Œ/xY w# 1 sw Y   �Œ
xY w# 1 sw Y   �ŒåxY w# 1 sw Y   �ŒÀxY w# 1 sw Y   �Œ›xY w# 1 sw Y   �ŒvxY w# 1 sw Y   �ŒQxY w# 1 sw Y   �Œ)xY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒÊxY w# 1 sw Y   �Œ¥xY w# 1 sw Y   �Œ€xY w# 1 sw Y   �Œ[xY w# 1 sw Y   �Œ´xY w# 1 sw Y   �Œ�xY w# 1 sw Y   y xY w)NT©Úfullr   ©TFTFTr   r   r   )*r	   Úlengthrm   Úreprr+   r,   r-   r.  Ú
null_countr9   r&   Úis_nullÚis_nanÚis_validÚ	fill_nullr§   r]   Ú	__array__r
  rò   rè   rO   ÚuniqueÚvalue_countsr“  r¾   r}   r[  Ú	drop_nullÚsortrõ   r6  r3   r/   ró   Údevice_typer   ÚDeviceAllocationTypeÚCUDAr*   r  Ú
__reduce__)rí  rù  rü  rþ  ró   s        r!   Útest_chunked_array_non_cpur  P  s’  € ð ×"Ñ"Ð&7×&<Ñ&<Ò<Ð<Ð<ð ×$Ñ$Ó&Ð*;×*BÑ*BÓ*DÒDÐDÐDô Ð!Ó"¤cÐ*;Ó&<Ò<Ð<Ð<ô Ð!Ó"¤dÐ+=Ó&>Ñ>Ð>Ð>ð ×ÑÔ!Ü	�‰Ô*Õ	+Ø×#Ñ#¨Ð#Ô.÷ 
,ô 
�‰Ô*Õ	+Ø×%Ò%÷ 
,ô 
�‰Ô*Õ	+Ø×!Ò!÷ 
,ô 
�‰Ô*Õ	+Ø×0Ñ0Ô2÷ 
,ô 
�‰Ô*Õ	+Ø˜1Ò÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×!Ñ!Ô#÷ 
,ô 
�‰Ô*Õ	+Ø×#Ñ#Ô%÷ 
,ô 
�‰Ô*Õ	+Ø×$Ñ$ QÔ'÷ 
,ô 
�‰Ô*Õ	+ØÐ0Ò0÷ 
,ô 
�‰Ô*Õ	+Ø×$Ñ$Ô&÷ 
,ô 
�‰Ô*Õ	+Ø×#Ñ#Ô%÷ 
,ô 
�‰Ô*Õ	+Ø×$Ñ$Ô&÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ!÷ 
,ô 
�‰Ô*Õ	+Ø×,Ñ,Ô.÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×)Ñ)Ô+÷ 
,ô 
�‰Ô*Õ	+Ø×!Ñ!Ô#÷ 
,ô 
�‰Ô*Õ	+Ø×'Ñ'Ô)÷ 
,ô 
�‰Ô*Õ	+Ø×!Ñ!Ò"BÔC÷ 
,ô 
�‰Ô*Õ	+Ø× Ñ  Ô#÷ 
,ð ×Ñ˜Q Ô"ô 
�‰Ô*Õ	+Ø×Ñ  Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×$Ñ$Ô&÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ!÷ 
,ô 
�‰Ô*Õ	+Ø×-Ñ-Ô/÷ 
,ð ×(Ñ(Ð,=×,HÑ,HÒHÐHÐHô Ð!×(Ñ(Ó)¬SÐ1B×1IÑ1IÓ-JÒJÐJÐJð ×$Ñ$ QÓ'€EØ×Ñ¤× 7Ñ 7× <Ñ <Ò<Ð<Ð<ô 
�‰Ô*Õ	+Ø×$Ñ$Ô&÷ 
,ô 
�‰Ô*Õ	+Ø×-Ñ-Ô/÷ 
,ô 
�‰Ô*Õ	+Ø×%Ñ%Ô'÷ 
,Ð	+÷s 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ð	+úsP  ÂY8ÃZÃ;ZÄ)ZÅZ,ÆZ9Æ4[Ç&[È[ É[-É2[:Ê$\Ë\Ì\!Ì:\.Í,\;Î]Ï]Ð]"Ð4]/Ñ)]<Ò.^	Ó"^Ô^#Õ^0×:^=Ø,_
Ù_Ù8ZÚZÚZÚZ)Ú,Z6Ú9[Û[Û[Û [*Û-[7Û:\Ü\Ü\Ü!\+Ü.\8Ü;]Ý]Ý]Ý"],Ý/]9Ý<^Þ	^Þ^ Þ#^-Þ0^:Þ=_ß
_ß_ c                 óÚ  — | j                  «        | j                  t        j                  j                  k(  sJ ‚| j
                  du sJ ‚| j                  t        |j                  «      k(  sJ ‚| j                  |j                  k(  sJ ‚t        | «      t        | «      v sJ ‚| j                  D ]+  }|j                  t        j                  j                  k(  rŒ+J ‚ | j                  |k(  sJ ‚y rû  )r+   r  r   r  r  rø  rq  r3   r|   rH  rm   r  rG  rË   )rÆ   Úexpected_schemar    s      r!   Úverify_cuda_recordbatchr"  Ý  sË   € Ø	‡N�NÔØ×Ñ¤× 7Ñ 7× <Ñ <Ò<Ð<Ð<Ø�<‰<˜5Ñ Ð Ð Ø×Ñ¤ O×$9Ñ$9Ó :Ò:Ð:Ð:Ø×Ñ ×!6Ñ!6Ò6Ð6Ð6Üˆu‹:œ˜e›Ñ$Ð$Ð$Ø�]Œ]ˆØ�}‰}¤× 7Ñ 7× <Ñ <Ó<Ð<Ð<ð à�<‰<˜?Ò*Ð*Ñ*rU   c                 óZ  — t        ||¬«       |j                  }|j                  dk(  sJ ‚t        |j                  «      dk(  sJ ‚|j
                  |j                  fD ]Å  }t        j                  g d¢t        j                  «       «      j                  | j                  «      } |dd|«      }t        ||j                  t        j                  dt        j                  «       «      «      ¬«       d}	t        j                  t         |	¬«      5   |dddg|z  «       d d d «       ŒÇ |j#                  d«      }t        ||j%                  d«      ¬«       |j'                  d	g«      }t        ||j%                  d«      ¬«       |j'                  d
d	g«      }
t        |
j                  «      dk(  sJ ‚|
j(                  t        j*                  j,                  k(  sJ ‚|j/                  d
g«      }t        ||j%                  d«      ¬«       t        j0                  t        j                  d
t        j2                  «       «      t        j                  d	t        j2                  «       «      g«      }t        j                  t4        «      5  |j7                  |«       d d d «       t        j                  dg|z  g d¢¬«      j                  | j                  «      }|j                  dd|«      }t        j                  t4        «      5  |j9                  «        d d d «       t        j                  t4        «      5  |j;                  dg|z  «       d d d «       t        j                  t4        «      5  |j=                  dg«       d d d «       t        j                  t4        «      5  |j?                  d
«       d d d «       |j                  d«      |j                  d«      k(  sJ ‚|j                  d«      |j                  d«      k(  sJ ‚|j                  | j                  «      }t        j                  t4        «      5  |jA                  |«      du sJ ‚	 d d d «       t        jB                  jE                  |d
d	g«      }t        ||¬«       |j                  t        jF                  «       «      jA                  |«      sJ ‚t        jB                  jI                  |d   |d   dœ«      }t        ||¬«       |j                  t        jF                  «       «      jA                  |«      sJ ‚tK        t        |jL                  «      «      D �cg c]  }|j                  |«      ‘Œ }}t        jN                  jE                  ||¬«      }t        j                  t4        «      5  t        jB                  jQ                  |«       d d d «       t        j                  t4        «      5  |jR                  sJ ‚	 d d d «       t        j                  t4        «      5  |jU                  «       sJ ‚	 d d d «       t        j                  t4        «      5  |jW                  «        d d d «       t        j                  t4        «      5  |jY                  «        d d d «       t        j                  t4        «      5  |j[                  «        d d d «       t        j                  t4        «      5  |j]                  «        d d d «       t        j                  t4        «      5  |j_                  «        d d d «       t        j                  t4        «      5  |ja                  «        d d d «       |jc                  dd«      }t        ||¬«       |j                  dk(  sJ ‚|j                  t        jF                  «       «      }||jc                  dd«      k(  sJ ‚|je                  ddi«      }t        ||¬«       |j0                  jf                  ddik(  sJ ‚|ji                  ddg«      }t        j0                  t        j                  d|j                  d«      jj                  «      t        j                  d|j                  d«      jj                  «      g«      }t        ||¬«       |jm                  «        t        j                  t4        «      5  |jm                  d¬«       d d d «       t        j                  t4        «      5  |jo                  «        d d d «       t        j                  t4        «      5  |jq                  «        d d d «       t        j                  t4        «      5  |js                  «        d d d «       t        j                  t4        «      5  tu        |jw                  «       «       d d d «       y # 1 sw Y   �	ŒExY w# 1 sw Y   �ŒxY w# 1 sw Y   �Œ§xY w# 1 sw Y   �Œ}xY w# 1 sw Y   �ŒVxY w# 1 sw Y   �Œ0xY w# 1 sw Y   �Œ xY wc c}w # 1 sw Y   �ŒJxY w# 1 sw Y   �Œ&xY w# 1 sw Y   �ŒþxY w# 1 sw Y   �ŒÙxY w# 1 sw Y   �Œ´xY w# 1 sw Y   �Œ�xY w# 1 sw Y   �ŒjxY w# 1 sw Y   �ŒExY w# 1 sw Y   �Œ xY w# 1 sw Y   �Œ±xY w# 1 sw Y   �ŒŒxY w# 1 sw Y   �ŒgxY w# 1 sw Y   �ŒBxY w# 1 sw Y   y xY w)N©r!  r1  r   )r  rq   r   r   r   Úc2z`Got column on device <DeviceAllocationType.CPU: 1>, but expected <DeviceAllocationType.CUDA: 2>.rD   r   rE  rD  r   r  ©ÚmaskT©rD  rE  ©r  r   ó   keyó   valueÚcol0Úcol1r  )<r"  rÁ   r_   r3   rG  rZ  rb  r   rN   rG   ró  rô  rš   rå   r,   r-   ri   rq  Úremoveri  r  r  r  r�  rË   rF   r.  r
  r  r“  r[  r†  rP   rÄ   r   Údefault_cpu_memory_managerr5  r…   r|   ÚStructArrayr™  r9   r&   r3  r*   r§   rÞ  r¢  Ú	serializer}   r‘  rP  r~  r	   r+   r  r  r  r   Ú__dataframe__)rí  r  r  rõ  rË   ÚNÚfnr«   Ú	new_batchÚerr_msgÚempty_batchrÀ  Únull_colÚcuda_recordbatch_with_nullsr†   r  rž  Ú	cpu_batchr!  s                      r!   Útest_recordbatch_non_cpur;  é  s  € äÐ,¸fÕEØ×!Ñ!€Að ×!Ñ! VÒ+Ð+Ð+ô Ð×'Ñ'Ó(¨AÒ-Ð-Ð-ð  ×*Ñ*Ð,<×,GÑ,GÓHˆÜ�h‰hÒ(¬"¯'©'«)ó ß ™ ×!<Ñ!<Ó=ð 	á�q˜$ Ó$ˆ	ÜØ v§}¡}´R·X±X¸dÄBÇGÁGÃIÓ5NÓ'Oõ	QðBˆä�]‰]œ9¨GÖ4Ùˆq�$˜˜˜a™Ô ÷ 5Ð4ð Ið !×.Ñ.¨qÓ1€IÜ˜I°v·}±}ÀQÓ7GÕHð !×-Ñ-¨t¨fÓ5€IÜ˜I°v·}±}ÀQÓ7GÕHØ"×/Ñ/°°t°Ó=€KÜˆ{×"Ñ"Ó# qÒ(Ð(Ð(Ø×"Ñ"¤b×&=Ñ&=×&BÑ&BÒBÐBÐBð !×'Ñ'¨¨Ó/€IÜ˜I°v·}±}ÀQÓ7GÕHô —‘œBŸH™H T¬2¯8©8«:Ó6¼¿¹ÀÄrÇxÁxÃzÓ8RÐSÓT€JÜ	�‰Ô*Õ	+Ø×Ñ˜jÔ)÷ 
,ô �x‰x˜˜˜a™Ò&FÔG×OÑOØ×#Ñ#ó%€Hà"2×"=Ñ"=¸aÀÀxÓ"PÐÜ	�‰Ô*Õ	+Ø#×-Ñ-Ô/÷ 
,ô 
�‰Ô*Õ	+Ø×Ñ  ¨¡
Ô+÷ 
,ô 
�‰Ô*Õ	+Ø×Ñ˜q˜cÔ"÷ 
,ô 
�‰Ô*Õ	+Ø× Ñ  Ô&÷ 
,ð ×!Ñ! !Ó$¨¯©°Q«Ò7Ð7Ð7Ø×!Ñ! !Ó$¨¯©°Q«Ò7Ð7Ð7ð  ×'Ñ'¨×(CÑ(CÓD€IÜ	�‰Ô*Õ	+Ø×&Ñ& yÓ1°TÑ9Ð9Ñ9÷ 
,ô —‘×*Ñ*¨;¸¸t¸ÓE€IÜ˜I°vÕ>Ø×ÑœR×:Ñ:Ó<Ó=×DÑDÀ_ÔUÐUÐUô —‘×*Ñ*°+¸a±.ÈÐTUÉÑ+WÓX€IÜ˜I°vÕ>Ø×ÑœR×:Ñ:Ó<Ó=×DÑDÀ_ÔUÐUÐUô (-¬S°·±Ó->Ô'?Ó@Ñ'? !ˆf�l‰l˜1�oÐ'?€FÐ@Ü—>‘>×-Ñ-¨kÀ&Ð-ÓI€LÜ	�‰Ô*Õ	+Ü
�‰×(Ñ(¨Ô6÷ 
,ô 
�‰Ô*Õ	+Ø×&Ò&Ð&Ñ&÷ 
,ô 
�‰Ô*Õ	+Ø×5Ñ5Ô7Ð7Ñ7÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×(Ñ(Ô*÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ð !×&Ñ& q¨!Ó,€IÜ˜I°vÕ>Ø×Ñ Ò"Ð"Ð"Ø×!Ñ!¤"×"?Ñ"?Ó"AÓB€IØ˜×-Ñ-¨a°Ó3Ò3Ð3Ð3ð !×8Ñ8¸&À(Ð9KÓL€IÜ˜I°vÕ>Ø×Ñ×$Ñ$¨°Ð(:Ò:Ð:Ð:ð !×/Ñ/°¸Ð0@ÓA€IÜ—i‘iÜ	�‰�&˜&Ÿ,™, q›/×.Ñ.Ó	/Ü	�‰�&˜&Ÿ,™, q›/×.Ñ.Ó	/ð	1ó2€Oô ˜I°ÕGð ×ÑÔÜ	�‰Ô*Õ	+Ø×!Ñ! tÐ!Ô,÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ô 
�‰Ô*Õ	+Ø×*Ñ*Ô,÷ 
,ô 
�‰Ô*Õ	+Ø×+Ñ+Ô-÷ 
,ô 
�‰Ô*Õ	+ÜÐ'×5Ñ5Ó7Ô8÷ 
,Ð	+÷Q 5Ñ4ú÷( 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+üò Aç	+Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷0 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ð	+ús  ÄfÊ f%Ë<f2Ì.f?Í%gÎgÐ1g&Ô<g3Ö g8×hØhØ7hÙ)h,Úh9ÛiÛ?iÜ1i â+i-ãi:äjåjå5j!æf"	æ%f/æ2f<æ?g	çgçg#ç&g0ç8hèhèhèh)è,h6è9iéiéié i*é-i7é:jêjêjê!j*c                 óò  — | j                  «        | j                  du sJ ‚| j                  t        |j                  «      k(  sJ ‚| j
                  |j                  k(  sJ ‚t        | «      t        | «      v sJ ‚| j                  D ]`  }|j                  du sJ ‚|j                  «       D ];  }|j                  du sJ ‚|j                  t        j                  j                  k(  rŒ;J ‚ Œb | j                  |k(  sJ ‚y rû  )r+   rø  rq  r3   r|   rH  rm   r  rG  r2   r  r   r  r  rË   )r€   r!  r    ró   s       r!   Úverify_cuda_tabler=  ‰  sã   € Ø	‡N�NÔØ�<‰<˜5Ñ Ð Ð Ø×Ñ¤ O×$9Ñ$9Ó :Ò:Ð:Ð:Ø×Ñ ×!6Ñ!6Ò6Ð6Ð6Üˆu‹:œ˜e›Ñ$Ð$Ð$Ø�]Œ]ˆØ�x‰x˜5Ñ Ð Ð Ø—\‘\–^ˆEØ—<‘< 5Ñ(Ð(Ð(Ø×$Ñ$¬×(?Ñ(?×(DÑ(DÓDÐDÐDñ $ð ð
 �<‰<˜?Ò*Ð*Ñ*rU   c                 óÚ  — t        ||¬«       |j                  }|j                  dk(  sJ ‚t        |j                  «      dk(  sJ ‚|j
                  |j                  fD �]  }t        j                  dg|z  t        j                  «       «      }|j                  | j                  «      }	 |dd|	«      }
t        |
|j                  t        j                  dt        j                  «       «      «      ¬«        |dd|«      }
|
j                  du sJ ‚|
j                  d«      j                  du sJ ‚|
j                  d«      j                  du sJ ‚|
j                  d«      j                  du r�ŒJ ‚ |j!                  d«      }
t        |
|j#                  d«      ¬«       |j%                  d	g«      }
t        |
|j#                  d«      ¬«       |j%                  d
d	g«      }
t        |
j                  «      dk(  sJ ‚|
j                  sJ ‚|j'                  d
g«      }
t        |
|j#                  d«      ¬«       t        j(                  t        j                  d
t        j*                  «       «      t        j                  d	t        j*                  «       «      g«      }t-        j.                  t0        «      5  |j3                  |«       d d d «       t        j                  dg|z  dg|z  ¬«      j                  | j                  «      }|j                  dd|«      }t-        j.                  t0        «      5  |j5                  «        d d d «       t-        j.                  t0        «      5  |j7                  dg|z  «       d d d «       t-        j.                  t0        «      5  |j9                  dg«       d d d «       t-        j.                  t0        «      5  |j;                  d
«       d d d «       |j                  d«      |j                  d«      k(  sJ ‚|j                  d«      |j                  d«      k(  sJ ‚t-        j.                  t0        «      5  |j=                  |«      sJ ‚	 d d d «       t        j>                  jA                  |d
d	g«      }
t        |
|¬«       t        j>                  jC                  |d   |d   dœ«      }
t        |
|¬«       tE        t        |jF                  «      «      D �cg c]  }|j                  |«      ‘Œ }}t        jH                  jA                  ||¬«      }t-        j.                  t0        «      5  t        j>                  jK                  |«       d d d «       t        j>                  jM                  ||g|«      }
t        |
|¬«       t-        j.                  t0        «      5  |jN                  sJ ‚	 d d d «       t-        j.                  t0        «      5  |jQ                  «       sJ ‚	 d d d «       t-        j.                  t0        «      5  |jS                  «        d d d «       t-        j.                  t0        «      5  |jU                  «        d d d «       t-        j.                  t0        «      5  |jW                  «        d d d «       t-        j.                  t0        «      5  |jY                  «        d d d «       |j[                  d¬«      }|D ]1  }t-        j.                  t\        «      5  t_        ||¬«       d d d «       Œ3 |ja                  d¬«      }|D ]1  }t-        j.                  t\        «      5  t_        ||¬«       d d d «       Œ3 |jc                  dd«      }
t        |
|¬«       |
j                  dk(  sJ ‚|je                  ddi«      }
t        |
|¬«       |
j(                  jf                  ddik(  sJ ‚|ji                  ddg«      }
t        j(                  t        j                  d|j                  d«      jj                  «      t        j                  d|j                  d«      jj                  «      g«      }t        |
|¬«       |jm                  «        t-        j.                  t0        «      5  |jm                  d¬«       d d d «       t-        j.                  t0        «      5  |jo                  «        d d d «       t-        j.                  t0        «      5  |jo                  «        d d d «       t-        j.                  t0        «      5  |jq                  «        d d d «       t-        j.                  t0        «      5  |js                  d
«       d d d «       t-        j.                  t0        «      5  |ju                  |d
«       d d d «       t-        j.                  t0        «      5  |jw                  |d
d
d«       d d d «       t-        j.                  t0        «      5  |jy                  «        d d d «       t-        j.                  t0        «      5  |j{                  «        d d d «       t-        j.                  t0        «      5  t}        |j                  «       «       d d d «       t-        j.                  t0        «      5  |j�                  «        d d d «       y # 1 sw Y   �ŒÙxY w# 1 sw Y   �ŒixY w# 1 sw Y   �Œ?xY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒòxY w# 1 sw Y   �ŒxY wc c}w # 1 sw Y   �Œ‘xY w# 1 sw Y   �Œ>xY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒñxY w# 1 sw Y   �ŒÌxY w# 1 sw Y   �Œ§xY w# 1 sw Y   �Œ‚xY w# 1 sw Y   �Œ{xY w# 1 sw Y   �Œ@xY w# 1 sw Y   �Œ×xY w# 1 sw Y   �Œ²xY w# 1 sw Y   �Œ�xY w# 1 sw Y   �ŒhxY w# 1 sw Y   �ŒBxY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒòxY w# 1 sw Y   �ŒÍxY w# 1 sw Y   �Œ¨xY w# 1 sw Y   �ŒzxY w# 1 sw Y   y xY w)Nr$  )ry   r   r   r   r%  Fr   TrE  rD  r&  r(  r)  r   r°  r   r*  r+  r,  r-  r  )Ar=  rÁ   r_   r3   rG  rZ  rb  r   rN   rG   ró  rô  rš   rå   rø  r¦   rq  r.  ri  r�  rË   rF   r,   r-   r.  r
  r  r“  r[  r†  rP   r~   r   r5  r…   r|   r0  r™  r2  r9   r&   r3  r*   r§   r¢  r(  ÚAssertionErrorr"  rn  r}   r‘  rP  r~  r	   r+   rè   rõ   rL  r…  r¥  r  r  r   r2  r  )rí  r  r  rõ  r  rË   r3  r4  Úcpu_colÚcuda_colÚ	new_tablerÀ  r8  Úcuda_table_with_nullsr†   r  rž  r8  rÆ   r<  r!  s                        r!   Útest_table_non_cpurD  —  s	  € ä�j°&Õ9Ø×Ñ€Að ×Ñ˜wÒ&Ð&Ð&ô ˆz×!Ñ!Ó" aÒ'Ð'Ð'ð ×$Ñ$ j×&;Ñ&;Ô<ˆÜ—(‘(˜A˜3 ™7¤B§G¡G£IÓ.ˆØ—?‘? <×#>Ñ#>Ó?ˆÙ�q˜$ Ó)ˆ	Ü˜)°V·]±]Ü�H‰H�Tœ2Ÿ7™7›9Ó%ó6'õ 	(á�q˜$ Ó(ˆ	Ø×Ñ 5Ñ(Ð(Ð(Ø×Ñ Ó"×)Ñ)¨UÑ2Ð2Ð2Ø×Ñ Ó"×)Ñ)¨UÑ2Ð2Ð2Ø×Ñ Ó"×)Ñ)¨TÓ1Ð1Ð1ð =ð ×(Ñ(¨Ó+€IÜ�i°·±¸qÓ1AÕBð ×'Ñ'¨¨Ó/€IÜ�i°·±¸qÓ1AÕBØ×'Ñ'¨¨t¨Ó5€IÜˆy× Ñ Ó! QÒ&Ð&Ð&Ø×ÒÐÐð ×!Ñ! 4 &Ó)€IÜ�i°·±¸qÓ1AÕBô —‘œBŸH™H T¬2¯8©8«:Ó6¼¿¹ÀÄrÇxÁxÃzÓ8RÐSÓT€JÜ	�‰Ô*Õ	+Ø�‰˜
Ô#÷ 
,ô �x‰x˜˜˜a™ t f¨q¡jÔ1×9Ñ9¸,×:UÑ:UÓV€HØ&×1Ñ1°!°T¸8ÓDÐÜ	�‰Ô*Õ	+Ø×'Ñ'Ô)÷ 
,ô 
�‰Ô*Õ	+Ø×Ñ˜4˜& 1™*Ô%÷ 
,ô 
�‰Ô*Õ	+Ø�‰˜˜Ô÷ 
,ô 
�‰Ô*Õ	+Ø×Ñ˜4Ô ÷ 
,ð ×Ñ˜AÓ &§,¡,¨q£/Ò1Ð1Ð1Ø×Ñ˜AÓ &§,¡,¨q£/Ò1Ð1Ð1ô 
�‰Ô*Õ	+Ø× Ñ  Ô+Ð+Ñ+÷ 
,ô —‘×$Ñ$ [°4¸°,Ó?€IÜ�i°Õ8ô —‘×$Ñ$¨K¸©NÀ+ÈaÁ.Ñ%QÓR€IÜ�i°Õ8ô (-¬S°·±Ó->Ô'?Ó@Ñ'? !ˆf�l‰l˜1�oÐ'?€FÐ@Ü—>‘>×-Ñ-¨kÀ&Ð-ÓI€LÜ	�‰Ô*Õ	+Ü
�‰×"Ñ" <Ô0÷ 
,ô —‘×%Ñ%Ð'7Ð9IÐ&JÈFÓS€IÜ�i°Õ8ô 
�‰Ô*Õ	+Ø× Ò Ð Ñ ÷ 
,ô 
�‰Ô*Õ	+Ø×/Ñ/Ô1Ð1Ñ1÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,ô 
�‰Ô*Õ	+Ø×"Ñ"Ô$÷ 
,ð ×#Ñ#°!Ð#Ó4€GÛˆä�]‰]œ>Õ*Ü# E¸6ÕB÷ +Ð*ð ð ×!Ñ!°Ð!Ó2€FÛˆä�]‰]œ>Õ*Ü# E¸6ÕB÷ +Ð*ð ð × Ñ   AÓ&€IÜ�i°Õ8Ø×Ñ Ò"Ð"Ð"ð ×2Ñ2°F¸HÐ3EÓF€IÜ�i°Õ8Ø×Ñ×$Ñ$¨°Ð(:Ò:Ð:Ð:ð ×)Ñ)¨6°6Ð*:Ó;€IÜ—i‘iÜ	�‰�&˜&Ÿ,™, q›/×.Ñ.Ó	/Ü	�‰�&˜&Ÿ,™, q›/×.Ñ.Ó	/ð	1ó2€Oô �i°ÕAð ×ÑÔÜ	�‰Ô*Õ	+Ø×Ñ ÐÔ&÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,ô 
�‰Ô*Õ	+Ø×%Ñ%Ô'÷ 
,ô 
�‰Ô*Õ	+Ø×Ñ˜DÔ!÷ 
,ô 
�‰Ô*Õ	+Ø�‰˜
 DÔ)÷ 
,ô 
�‰Ô*Õ	+Ø×Ñ˜Z¨¨t°QÔ7÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,ô 
�‰Ô*Õ	+Ø×%Ñ%Ô'÷ 
,ô 
�‰Ô*Õ	+Ü�z×/Ñ/Ó1Ô2÷ 
,ô 
�‰Ô*Õ	+Ø×ÑÔ÷ 
,Ð	+÷a 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+üò Aç	+Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ +Ñ*ú÷ +Ñ*ú÷, 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ñ	+ú÷ 
,Ð	+ús>  Ê.jÌ,j$Íj1Îj>Ï	kÑkÓ'k%Ô; k*Ö+k7×lØlÙlÙ5l+Ú'l8Û0mÜ8má7mâ+m,ãm9änånå4n æ(n-çn:èoéoé=o!êj!ê$j.ê1j;ê>këkëk"ë*k4ë7lìlìlìl(ì+l5ì8mím	ím	ím)í,m6í9nînînî n*î-n7î:oïoïoï!o*)ÑÚcollectionsr   Úcollections.abcr   r5   r:   Únumpyr[   rê  r,   Úpyarrowr   Úpyarrow.computeÚcomputerN  Úpyarrow.interchanger   Úpyarrow.vendored.versionr   r?   rK   rT   rY   Úmarkrc   rk   ro   rw   r‚   rˆ   r–   ÚparametrizerW   rF   rj   r)   r?  r¼  rä   rå   r    r¥   r­   r»   rÂ   rÇ   rÐ   ÚnopandasrÞ   rë   r÷   rù   r  r  r  r   r+  r0  r3  rA  rI  rU  r\  rc  rg  ro  rr  ru  rx  r€  r„  rˆ  r–  rš  rŸ  r£  r¥  r§  rª  r®  r²  r´  rº  rå  r~   rÄ   ró  rõ  rø  rû  rý  rÿ  r  r  r  r  r  r  r  r  r#  r/  r:  r<  rF  rH  rJ  rP  rS  rU  rX  r`  rd  rl  ro  rr  rt  rw  ry  r  r‚  r‹  rŽ  r–  rŸ  r¥  r¬  r¯  r²  r¸  rÂ  rÅ  rÈ  rÓ  rÖ  rØ  rÚ  rß  ræ  rê  rí  r0   rN   r(   r÷  rú  rü  rþ  r  r  r  r	  r  r  r  r  r  r  r"  r$  r(  r+  r-  ÚacerorS  r]  ra  rl  rq  r‡  r‹  r‘  r”  r–  rœ  Údatasetr¦  r¬  r®  r³  r·  rº  r½  rÁ  rÌ  rÕ  r€   r)  rÚ  rß  ræ  Úfixturerí  rË   rð  rõ  rù  rü  rþ  r  r  r  r  r
  r  r"  r;  r=  rD  rX   rU   r!   Ú<module>rS     s‹  ðõ$ $Ý $Û 
Û ðÛó Û Ý Ý .Ý ,òòD*HòZ ò8ð ‡�×Ññ&ó ð&òCòð( ‡�×Ññ(ó ð(ò6!ò0%ò-Bð` ‡�×ÑØâ	" H B§H¡H£JÐ/Ú	�x�r—x‘x“zÐ"Ú	˜:˜2Ÿ:™:›<Ð(Ú	˜9˜2Ÿ9™9›;Ð'Ø	ˆXˆR�X‰X�h�b—h‘h“jÓ!Ð"Øˆaˆ&�1�#ˆ˜˜Ÿ™  §¡£Ó,Ð-Øˆ%�˜˜S�zÐ	" H B§H¡H¨Y¨R¯Y©Y«[Ó$9Ð:Ú	#ØˆB�I‰I�x�r—x‘x  X R§X¡X£ZÓ0°(°"·(±(¸3À	ÀÇ	Á	ÃÓ2LÐMÓNð	Pð
óñ	 óð	 ð ‡�×Ññó ðð  ‡�×Ññ1ó ð1ð& ‡�×Ññ+ó ð+ð2 ‡�×Ññ+ó ð+ð2 ‡�×Ññ	/ó ð	/ð ‡�×ÑØ‡�×Ññ%<ó ó ð%<òPGò$Oòò
.ò*+÷(>ñ >÷Oñ Oð ‡�×Ñ˜¨<Ð9KÐ*LÓMñó Nðò*2ð  ‡�×Ñ˜¨<Ð9KÐ*LÓMñó Nðò,$
òNò"ò8'òò.ò6ò"ò	+ò)ò#ò"ò*ò*0#òf=ò
òò7ò
òòòòò 5ð ‡�×ÑØ‡�×Ñ˜ò %ó ñ
4Bóó ð4Bðn ‡�×ÑØ‡�×ÑØ
à	�‰Ø	�‰ðóñ0.óó ð0.ðf ‡�×Ññó ðð& ‡�×Ññ.ó ð.ð( ‡�×Ññ9.ó ð9.ðx ‡�×Ññ$ó ð$ò$ð" ‡�×ÑØ‡�×Ñ˜ò %ó ñ
7Fóó ð7Fòt"9òJ?ò-ð ‡�×Ññó ðð ‡�×Ññ0ó ð0òò	ò<ð* ‡�×Ññ*ó ð*ðD ‡�×ÑØ
à	�‰Ø	�‰ðóñCóðCòLò
	,ò	0ò#ò& òò*ò*ð ‡�×ÑØ
à	�‰Ø	�‰ðóñóðð. ‡�×ÑØ
à	�‰Ø	�‰ðóñóðð$ ‡�×ÑØ
à	�‰Ø	�‰ðóñ"óð"ò(ð( ‡�×ÑØ
à	�‰Ø	�‰ðóñóðð ‡�×ÑØ
à	�‰Ø	�‰ðóñóðò 0ò6ð ‡�×ÑØ
à	�‰Ø	�‰ðóñ+óð+ð8 ‡�×ÑØ
à	�‰Ø	�‰ðóñ6óð6ò4ò(
!ò"9òJDò(#ò4Eò<ò!ð ‡�×Ññ/ó ð/ò,6ò0ò,>òò*#ò4$ò"ð ‡�×ÑØ
à	�‰Ø	�‰ðóñ#óð#ð8 ‡�×ÑØ
à	�‰Ø	�‰ðóñ/óð/ð8 ‡�×ÑØ
à	�‰Ø	�‰ðóñ/óð/ð> ‡�×Ññ9ó ð9ð ‡�×Ñ˜Úš.Ð)¨4Ð0Úš.Ð)¨2¯8ª8Ð4Ø
€tˆe�Uˆ^Ð ˜u r¨4 jÐ1Ð2°B×4DÒ4DÐEð)ó ñ
 Móð
 MðF ‡�×ÑØ
à	�‰Ø	�‰ðóñ65óð65ðr ‡�×Ñ˜Úš.Ð)¨2¯8ª8Ð4Ø
€tˆe�Uˆ^Ð ˜u r¨4 jÐ1Ð2°B×4DÒ4DÐEð)ó ñ2ó	ð2ð< ‡�×Ñ˜Úš.Ð)¨4Ð0Úš.Ð)¨2¯8ª8Ð4Ø
€tˆe�Uˆ^Ð ˜u r¨4 jÐ1Ð2°B×4DÒ4DÐEð)ó ñ
*óð
*ð& ‡�×ÑØ
à	�‰Ø	�‰ðóñR&óðR&ðj ‡�×Ññ*ó ð*ð@ ‡�×Ññ!ó ð!ò:'ð( ‡�×Ññ0ó ð0ò )ò'òT-ò$(òVIò$OòBòJòGò0#ðf ‡�×ÒñYó ðYðx ‡�×Òñ'ó ð'ð> ‡�×Òñ#ó ð#ð ‡�×Òñ#ó ð#ò22ð ‡�×Òñó ðð4 ‡�×Òñó ðð4 ‡�×Òñ=ó ð=ð. ‡�×ÒØ‡�×Ñ˜ "§(¡(¨b¯n©nÐ >Ó?ñó @ó ðð ‡�×Òñó ðð, ‡�×Òñ#ó ð#ðL ‡�×Òñó ðð. ‡�×Òñó ðð2 ‡�×Òñó ðð& ‡�×Òñ
ó ð
ð6 ‡�×Òñ
ó ð
ð, ‡�×Òñ
ó ð
ð* ‡�×Òñ
ó ð
ð* ‡�×ÑØ
à	�‰Ø	�‰ðóñ	7óð	7ð ‡�×ÑØ
à	�‰Ø	�‰ðóñCóðCò@Pð@ ‡�×ÑØ‡�×Ñ˜¨¯ª°2·?²?Ð(CÓDñ#ó Eó ð#ð> ‡�×ÑØ‡�×Ñ˜¨¯ª°2·?²?Ð(CÓDñ(ó Eó ð(ð ‡�×Òñ/ó ð/ð0 ‡‚ñó ðð
 ‡‚ñOó ðOð ‡‚ñDó ðDð
 ‡‚ñLó ðLð ‡‚ñó ðð ‡‚ñó ðð ‡‚ñó ðð ‡‚ñ6ó ð6ð ‡‚ñ@ó ð@ð ‡‚ñKó ðKð ‡‚ñMó ðMð ‡‚ñLó ðLòJ(òZ	+ò]9ò@+óz øð}{ ò Ø	ƒBðús   –x  ø xø
x