Ë
    ìmxiÛã ã                   ó0  — 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                  dL„ «       ZTe	j.                  j                  dM„ «       ZUe	j.                  j                  dN„ «       ZVe	j.                  j                  dO„ «       ZWe	j.                  j                  dP„ «       ZXe	j.                  j                  dQ„ «       ZYdR„ ZZdS„ Z[dT„ Z\dU„ Z]e	j.                  jR                  dV„ «       Z^e	j.                  j                  dW„ «       Z_dX„ Z`dY„ ZadZ„ Zbe	j.                  jR                  d[„ «       Zce	j.                  j?                  d\ejÈ                  ejÊ                  g«      d]„ «       Zfd^„ Zgd_„ Zhd`„ Zida„ Zjdb„ Zkdc„ Zldd„ Zmde„ Zne	j.                  j?                  d\ejÈ                  ejÊ                  g«      df„ «       Zoe	j.                  j?                  d\ejÈ                  ejÊ                  g«      dg„ «       Zpe	j.                  j?                  d\ejÈ                  ejÊ                  g«      dh„ «       Zqdi„ Zre	j.                  j?                  d\ejÈ                  ejÊ                  g«      dj„ «       Zse	j.                  j?                  d\ejÈ                  ejÊ                  g«      dk„ «       Ztdl„ Zudm„ Zve	j.                  j?                  d\ejÈ                  ejÊ                  g«      dn„ «       Zwe	j.                  j?                  d\e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?                  d\ejÈ                  ejÊ                  g«      d€„ «       Z‰e	j.                  j?                  d\ejÈ                  ejÊ                  g«      d�„ «       ZŠe	j.                  j?                  d\e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?                  d\e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?                  d\e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¦d¢„ Z§e	j.                  �jF                  d£„ «       Z¨e	j.                  �jF                  d¤„ «       Z©e	j.                  �jF                  d¥„ «       Zªe	j.                  �jF                  e	j.                  j?                  d\e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?                  d\ejÈ                  ejÊ                  g«      d°„ «       Z¶e	j.                  j?                  d\ejÈ                  ejÊ                  g«      d±„ «       Z·e	j.                  j                  e	j.                  j?                  d²e�jp                  e�jr                  g«      d³„ «       «       Zºe	j.                  j                  e	j.                  j?                  d²e�jp                  e�jr                  g«      d´„ «       «       Z»e	j.                  �jF                  dµ„ «       Z¼e	�jz                  d¶„ «       Z¾e	�jz                  d·„ «       Z¿e	�jz                  d¸„ «       ZÀe	�jz                  d¹„ «       ZÁe	�jz                  dº„ «       ZÂe	�jz                  d»„ «       ZÃe	�jz                  d¼„ «       ZÄe	�jz                  d½„ «       ZÅe	�jz                  d¾„ «       ZÆe	�jz                  d¿„ «       ZÇe	�jz                  dÀ„ «       ZÈe	�jz                  dÁ„ «       ZÉdÂ„ ZÊdÃ„ ZËdÄ„ ZÌdÅ„ ZÍdÆ„ ZÎy# e$ r dZY �Œzw 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     úO/home/htdocs/ttos/venv/lib/python3.12/site-packages/pyarrow/tests/test_table.pyú	<genexpr>z,test_chunked_array_basics.<locals>.<genexpr>4   s!   è ø€ ÒE°AŒz˜!œRŸV™V×.Ñ.×/ÑEùó   ‚.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°AŒz˜!œRŸV™V×.Ñ.×/ÑKù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Ø34ð 01×/FÑ/F×/Hñ /Kù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   sC  € Ü
×
Ñ
ÚÚÚðó €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¨Ô	,ñ Cä
×Ñœ"Ÿ(™(¢9Ó-Ð.´R·Z±Z³\ÕB÷Cð C÷ð ú÷Cð Cú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   µ   sw  € ô 	�‰’ÓÜ
�‰’Óð€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ò 1ˆô —‘˜& $˜Ó(ˆØ—‘˜fÓ%×/Ñ/Ó1ˆØ�{‰{˜fÒ$Ð$Ð$Ø—9‘9˜TŸ^™^Ó-°F�9Ó;ˆØ
×Ñ˜v xÕ0ñ1rU   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ñ Ü
�‰Ô÷÷ ñ úó	   œ:º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  s|   € ä�?‰?Ü	�‰’)¤"§(¡(£*Ô	-Ð.°s°eô€Dô 
�‰ÜØHô
ñ 8ð 	×%Ñ%¨JÐ%Ô7÷	8ð 	×%Ñ%¨DÐ%Ó1�A÷8ð 8ú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  sz  € ÷?ñ ?ô 	�‰œŸ™¢)´"·(±(³*Ô=Ð>À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  Ò  sq   € ä
�(‰(�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  Ú  sb   € ä�H‰H�a�S‹Mœ2Ÿ8™8Ò$>Ó?Ü�H‰H�g�YÓð!€Dô 
�‰”zÓ	"ñ 6Ü
�‰˜Ò4Ô5÷6÷ 6ñ 6ú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Ó	"ñ 5Ü
�‰˜¢OÕ4÷5ô 
�‰”zÓ	"ñ +Ü
�‰˜ S EÕ*÷+ð +÷5ð 5ú÷+ð +ú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„    s9  € ä
�‰”�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Ô÷ô 
�‰”yÓ	!ñ Ø�‰�TÔ÷ô 
�‰”zÓ	"ñ Ø�‰�QŒ÷ð ÷ð ú÷ð ú÷ð úó$   Ã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Ô÷ô 
�‰”zÐ)>Ô	?ñ Ø�‰�a�SÔ÷ð �\‰\˜4 ˜,Ó'€FÜ�‰  B˜x¨$°¨Ó6€HØ�=‰=˜Ô"Ð"Ð"ô �O‰O˜R  R˜LÒ*<Ó=€EÜ	�‰”xÐ'BÔ	Cñ Ø�‰�d�VÔ÷ð �\‰\˜4˜&Ó!€FÜ�‰ ˜t d VÓ,€HØ�=‰=˜Ô"Ð"Ñ"÷%ñ ú÷ð ú÷ð úó$   Ç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  sB   € Ü	�‰”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¥  �  sE   € Ü	�‰”yÐ(TÔ	Uñ 7Ü
�‰×"Ñ"¤2§8¡8¬E°!«HÓ#5Ô6÷7÷ 7ñ 7ú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   rç   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   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
                  «       ¬«      t        j                  t	        j                  |t        j
                  ¬«      t        j
                  «       ¬«      gg d¢«      }|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«       y )NrÁ  rÂ  rË  rÒ   r   rØ   FrÍ  rÏ  rÐ  rÒ  rÓ  )r   rÄ   r   rN   r[   Úfloat16r×  rØ  rÙ  rÚ  rÛ  rº  ©ra   rb   rÜ  rÆ   rŸ   r�   rS   s          r!   Ú+test_recordbatch_to_tensor_uniform_float_16râ  "  sX  € â&€DÚ/€DÚ8€DÜ�N‰N×&Ñ&ä�H‰H”R—X‘X˜d¬"¯*©*Ô5¼B¿J¹J»LÔIÜ�H‰H”R—X‘X˜d¬"¯*©*Ô5¼B¿J¹J»LÔIÜ�H‰H”R—X‘X˜d¬"¯*©*Ô5¼B¿J¹J»LÔIð	
ò ó€Eð �_‰_ uˆ_Ó-€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2´2·:±:ÀSÐ2ÓI€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B§J¡J£L°"Ô5à�_‰_Ó€FÜ
�‰˜˜t TÐ*Ó+×2Ñ2´2·:±:ÀSÐ2ÓI€AÜ�y‰y×#Ñ# AÓ&€HÜ�&˜(¤B§J¡J£L°"Õ5rU   c            	      ór  — g d¢} g d¢}dddt         j                  dddd	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        ||t        j                  «       d«       |j                  «       }t        j                  | |g«      j                  t         j                  d¬«      }t        j                  j                  |«      }t        ||t        j                  «       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                  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Ä   r   rN   r½  ræ   r×  rØ  rÙ  ru   rÚ  rÛ  rº  rç   rj   rµ   Úassert_equalr]   r¶  r	   r_   r·  rá  s          r!   Ú%test_recordbatch_to_tensor_mixed_typerî  :  s  € ò '€DÚ/€DØ��cœ2Ÿ6™6 3¨¨S°#°sÐ;€DÜ�N‰N×&Ñ&ä�H‰H�T¤§	¡	£Ô,Ü�H‰H�T¤§¡£
Ô+ð	
ð �ˆ:ó	€Eð �_‰_ uˆ_Ó-€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ô �N‰N×&Ñ&ä�H‰H�T¤§	¡	£Ô,Ü�H‰H�T¤§¡£
Ô+Ü�H‰H�T¤§
¡
£Ô-ð	
ò ó€Eð �_‰_ uˆ_Ó-€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ð  n  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ó  ‚  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”   z-Can only convert a 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ö  —  s3  € â)€DÚ1€DÜ�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×-Ñ-Ò-Ð-Ð-ô �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           	      ó  — 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 q˜Ÿ™ �
Ò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    s   € Ü"¤2§>¡>×#=Ñ#=Ó>Ð>rU   c                  ó4   — t        t        j                  «      S r   )r  r   r€   rX   rU   r!   Útest_table_slice_getitemr  !  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
  %  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  0  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—‘Ó	'ñ 0Ü
�‰×Ñ˜v vÐ.Ô/÷0÷ 0ñ 0ú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  ;  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  A  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  M  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#  b  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Úclsc                 óâ  — 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_initr1  Ò  s.   € Ü	�‰”y¨Ô	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   r)  r~   r   rË   rP  r8  )Úarr0ra   Úfield0r3  r€   s        r!   Ú0test_table_from_arrays_preserves_column_metadatar;  ×  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_namesr=  ã  s¡   € ä
�‰”�q“ÓÜ
�‰Ò$Ó%ð€Dô 
�‰”zÓ	"ñ :Ü
�‰×Ñ˜TªÐÔ9÷:ô 
�‰”zÓ	"ñ 0Ü
�‰×Ñ˜T¨#¨ÐÔ/÷0ð 0÷:ð :ú÷0ð 0ú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_listsr?  ï  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_picklerE    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_fieldrH    s9  € ä
�‰”�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   rG  s     r!   Útest_table_select_columnrJ  &  s  € ä
�‰”�q“ÓÜ
�‰Ò$Ó%Ü
�‰”�q˜"“Óð€Dô
 �H‰H× Ñ  ¨_Ð Ó=€Eà�<‰<˜Ó×#Ñ# E§L¡L°£OÔ4Ð4Ð4ä	�‰”xØAô
Cñ à�‰�SÔ÷ô 
�‰”yÓ	!ñ Ø�‰�TÔ÷ô 
�‰”zÓ	"ñ Ø�‰�QŒ÷ð ÷ð ú÷ð ú÷ð ú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_duplicatesrM  ;  sq   € ä�H‰H”b—h‘hšyÓ)Ü—h‘hšyÓ)Ü—h‘hšyÓ)ð+â2AôC€Eô 
�‰”xØAô
Cñ à�‰�SÔ÷÷ ñ ú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_columnrU  F  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€   rQ  rR  Úexpected_datarS   s          r!   Útest_table_set_columnrY  d  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€   rR  rS  Úexp_t2Úexp_t3s	            r!   Útest_table_drop_columnsra  }  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”   r[  r\  r]  rD   r•   N)
r   rN   r…   r~   r   ÚdroprP   r,   r-   rƒ  )rz   r”   r    r€   rR  rS  r_  r`  s           r!   Útest_table_droprd  ˜  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   r\  )r   rN   r…   r   Úremove_columnr+   rP   )r$  r<   r€   rR  rS   s        r!   Útest_table_remove_columnrg  ¬  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   rf  r+   r3   rO  rå   rP   )r$  r<   r€   rR  rS  s        r!   Útest_table_remove_column_emptyri  Á  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_namesrl  Ø  sR   € à€DØ�#ˆJ€EàIð ä	�‰”z¨Ô	1ñ 0Ü
�‰×Ñ˜T¨ÐÔ/÷0÷ 0ñ 0ú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   rL  s    r!   Útest_empty_tablern  â  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   rR  rS  rk  s          r!   Útest_table_rename_columnsrt  é  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ñ +Ø×Ñ˜\Ô*÷+÷ +ñ +ú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{   )rp  r”   rr  rp  rr  )rz   r    )rz   rz   r    )rp  rp  rr  r]  rD   )rz   r•   )
r   rN   r…   r   rH  rs  r+   r,   r-   rƒ  )r$  r<   r€   rS   Út1rR  s         r!   Ú!test_table_rename_columns_mappingrw    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Ð'>Ô	?ñ 6Ø×Ñ 4¨eÑ4Ô5÷6÷ 6ñ 6ú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â   rz  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€   rR  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  r+  )rÝ  r•  r€   Úcombinedr    s        r!   Útest_table_combine_chunksrƒ  A  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_poolr(  rË   rP  )rÝ  r•  r€   Úexpected_dict_0Úexpected_dict_1s        r!   Útest_table_unify_dictionariesr‹  N  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   r(  r3   r*   )rž   r€   Ú
table_dictÚcolumn_listÚ
table_lists        r!   Útest_table_maps_as_pydictsr”  s  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�   rv  rR  rŸ   r�   rS   s           r!   Útest_concat_tablesrš  ‡  s4  € äŒU�1‹X‹Ú ð€Dô
 	ŒU�1�b‹\ÓÚð€Eô
 
�‰×	Ñ	°DÖ9¨qœrŸx™x¨�{Ò9Ø$.ð 
ó 
0€Bä	�‰×	Ñ	°EÖ:¨qœrŸx™x¨�{Ò:Ø$.ð 
ó 
0€Bô ×Ñ˜r 2˜hÓ'€FØ
‡O�OÔÜˆv‹;˜"ÒÐÐä�x‰x×#Ñ#Ü14°T¸5Ó1A÷%CÙ)-¨¨Aô &(§X¡X¨a°!©e¥_ó %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˜  )rv  rR  r/  s      r!   Útest_concat_tables_permissiver¡  ¡  s‘   € Ü	�‰×	Ñ	œt¤E¨"£I›Ð/°vÐ	Ó	>€BÜ	�‰×	Ñ	œt OÓ4Ð5¸VÐ	Ó	D€Bä	�‰Ü×ÑØTô
Vñ Eô ×Ñ˜b "˜X°|ÔDˆ÷E÷ Eñ Eú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¤  «  s^   € Ü
�‰×Ñœd¤5¨£9›oÐ.°fÐÓ=€Aä	�‰”zÐ)KÔ	Lñ <Ü
×Ñ˜!˜Q˜°Õ;÷<÷ <ñ <ú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§  ²  s3   € ä	�‰”~Ó	&ñ !Ü
×Ñ˜$˜Ô ÷!÷ !ñ !úó	   š:º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   Útable1Útable2Ú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  ©rv  rR  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ñ 6Ü�\‰\œ-Ó(ñ 	6Ü×Ñ˜b "˜X¨uÕ5÷	6÷6ð 6÷:ñ :ú÷	6ð 	6ú÷6ð 6ú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   )rv  rR  rŸ   rS  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˜  ©rv  rR  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Õ=÷>÷ >ñ >ú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   rG  s     r!   Útest_table_negative_indexingrÊ    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Í    s5  € äŒ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Ù/3¨q°!ô ,.¯8©8°A¸±E­?ó +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Ï  6  s§   € Ü	�‰×	#Ñ	#Ü	�‰�1�a�&œrŸx™x›zÔ	*Ð+¨c¨Uó
4€Bä	�‰×	#Ñ	#Ü	�‰�1�a�&œrŸz™z›|Ô	,Ð-°¨uó
6€Bô 
�‰”r—‘ØCô
Eñ $ä
×Ñ˜2˜r˜(Ô#÷$÷ $ñ $ú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Ñ  A  s3   € ä	�‰”~Ó	&ñ "Ü
×Ñ˜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{   r4  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_namerk  s          r!   Ú&test_table_cast_to_incompatible_schemarÖ  G  s2  € ô 	�‰”�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ñ #Ø�
‰
�>Ô"÷#ä	�‰”z¨Ô	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€   rX  Úexpected_tableÚtarget_schemaÚcasted_tables          r!   Útest_table_safe_castingrÝ  j  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×*Ñ*Ó	+ñ 9Ü
�‰×Ñ˜V¨D°$¨<ÐÔ8÷9÷ 9ñ 9ús   Â$CÃCzdata, klass©rC  rî   rï   ©râ   r   NrC  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   rD  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   r*  ©r<   ÚklassrË   r€   s       r!   Útest_from_arrays_schemarî  ½  s�  € ñ �$�q‘'‹N™E $ q¡'›NÐ+€DÜ�Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EÐFÓG€Fä�H‰H× Ñ  ¨fÐ Ó5€EØ×Ñ Ò!Ð!Ð!Ø�>‰>˜QÒÐÐØ�<‰<˜6Ò!Ð!Ð!ô �Y‰Y˜¤§¡£Ð+Ð,Ó-€FÜ	�‰”zÓ	"ñ 2Ü
�‰×Ñ˜T¨&ÐÔ1÷2ô �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ñ 2Ü
�‰×Ñ˜T¨&ÐÔ1÷2ô 
�‰”zÓ	"ñ LÜ
�‰×Ñ˜T¨&¸ÀÐ8JÐÔK÷Lô 
�‰”zÓ	"ñ MÜ
�‰×Ñ˜T¨&¸FÀFÐ;KÐÔL÷Mð M÷)2ñ 2ú÷2ð 2ú÷Lð Lú÷Mð Mú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   rD  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•   )r*  rq  rÁ   rË   r   r(  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Ó	!ñ AØ�‰˜šyÐ)Ü!Ÿy™y¨4´·±³Ð*=Ð)>Ó?ð 	ô 	A÷Aô
 
�‰”xÐ'@Ô	Añ 
Ø�‰Ú¢)Ñ,Ü—9‘9Ø”b—h‘h“jÐ!Ø”b—h‘h“jÐ!Ø”b—h‘h“jÐ!ðó ð 	ô 	
÷
ô 
�‰”yÓ	!ñ 5Ø�‰˜šiÐ(°ˆÔ4÷5ð 5÷)@ñ @ú÷Að Aú÷

ð 
ú÷5ð 5ú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)	NrD  r   r{  r   r   r   r(  rè  )r   r   rË   rf  rj   r~   r*  rq  rÁ   rç   rê  rë  r¦   r	   r¸   r,   r-   r.  ri   rì  s       r!   Ú#test_table_from_pydict_arrow_arraysró  %	  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ñ 2Ü
�‰×Ñ˜T¨&ÐÔ1÷2÷ 2ñ 2ú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)NrD  r   r{  r   rz  rD   r(  )r   r   rË   rf  rj   rF   r,   r-   rƒ  r~   r*  rq  rH  rì  s       r!   Útest_table_from_pydict_schemarõ  G	  s  € ô ˜¡ t¨A¡w£Ð0°8¹UÀ4ÈÁ7»^Ð2LÐMÓN€Dô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EØ¤§¡£Ð,ð.ó /€Fä	�‰”x vÔ	.ñ 2Ü
�‰×Ñ˜T¨&ÐÔ1÷2ô �Y‰Y˜¤§¡£Ð+Ð,Ó-€FÜ�H‰H× Ñ  ¨fÐ Ó5€EØ×Ñ Ò!Ð!Ð!Ø�<‰<˜6Ò!Ð!Ð!Ø×Ñ & Ò)Ð)Ñ)÷2ð 2ú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   rD  r{  rC  râ   )rD  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ø  _	  s‹  € ð �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Ó	!ñ AØ�‰˜$ ˜ T¨1 I°°a¨yÐ9Ü!Ÿy™y¨4´·±³Ð*=Ð)>Ó?ð 	ô 	A÷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Ó	!ñ CØ�‰˜#˜q˜ C¨ 8¨c°1¨XÐ6¸rˆÔB÷Cð  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@ñ @ú÷Añ Aú÷(Cð Cú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   rD  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ñ 0Ü
�‰×Ñ˜R¨ÐÔ/÷0ô �Y‰Y˜¤§¡£Ð+¨h¼¿
¹
»Ð-EØ¤§¡£Ð,ð.ó /€Fä	�‰”x vÔ	.ñ 0Ü
�‰×Ñ˜R¨ÐÔ/÷0ô �Y‰Y˜¤§¡£Ð+Ð,Ó-€FÜ�H‰H× Ñ  ¨FÐ Ó3€EØ×Ñ Ò!Ð!Ð!Ø�<‰<×'Ñ'Ó)¨VÒ3Ð3Ð3Ø×Ñ & Ò)Ð)Ñ)÷0ñ 0ú÷0ð 0ú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   r*  )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Ó	"ñ 0Ü
�‰�#’yÐ!¨#¨Õ/÷0ô �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Ø×Ñ Ò&Ð&Ñ&÷0ñ 0ú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Ó	"ñ LÜ
�‰�—‘˜s¢IÐ.Ó/¸6À6Ð:JÕK÷Lô �Y‰Y˜œbŸh™h›jÐ)Ð*Ó+€FÜ�H‰H�R—\‘\ 3ª	Ð"2Ó3°VÓ<€EØ�<‰<˜Ó×!Ñ!¤R§X¡X£ZÒ/Ð/Ñ/÷>ð >ú÷Lð Lú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  
  si   € Ü	�‰”yÐ(KÔ	Lñ "Ü
�‰�Ô!÷"ô 
�‰”yÐ(CÔ	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  '
  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  Q
  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  c
  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}   rL  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Ô÷ô 
�‰”zÐ)>Ô	?ñ Ø�‰�a�SÔ÷ð �\‰\˜4 ˜,Ó'€FÜ�x‰x˜˜R˜ 4¨ ,Ó/€HØ�=‰=˜Ô"Ð"Ð"ô �H‰H�b˜"˜b�\Ò#5Ó6€EÜ	�‰”xÐ'BÔ	Cñ Ø�‰�d�VÔ÷ð �\‰\˜4˜&Ó!€FÜ�x‰x˜˜˜t˜fÓ%€HØ�=‰=˜Ô"Ð"Ñ"÷%ñ ú÷ð ú÷ð ú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„   Úsortedr)  Ú
setdefaultrš   )r•   r(  Úsorted_keysÚsorted_dÚentryr«  Úks          r!   Úsorted_by_keysz+test_table_group_by.<locals>.sorted_by_keys  s®   € à�a‰<Üœ˜Q˜v™Y¨¨'©
Ó3Ó4‰Dà�V‘9ˆDÜ˜T“lˆØœF 1 V¡9Ó-Ð.ˆØò 	AˆEØ˜ŠØÜœ#˜d A e¡HÓ-Ó.ˆFØ ò A�Ø×#Ñ# E¨2Ó.×5Ñ5°f¸Q±iÕ@ñAð		Að ˆrU   ©rz   rz   r”   r”   r    )ÚXr1  ÚYÚZr3  rØ  )ry   rÃ  rÄ  rÅ  rÆ  )r(  r'  r«  Ú	bigvaluesr{   r(  )r«  Úhash_sumrØ   )r   r   r   )r(  Ú
values_sum)r«  Ú
hash_count)r   r   r   )r(  r6  Úvalues_count)r«  r4   )r«  Úmax)r4  r4   )r   r   r   )rÄ  rÈ  rÆ  )r(  Ú
values_maxÚbigvalues_sum)r4  r9  )rÃ  rÅ  rÆ  )r(  r6  Úbigvalues_maxr'  )rz   r”   r”   r    )r1  r2  r3  r3  )r   r   r   r   )r(  r'  r6  Ú	count_all)r(  r:  r;  r<  r=  r6  )rz   rz   rz   )r   NNr«  Úcountr1   )Úmoderz   r   )r(  r8  Ú	only_nullr   Ú
only_validr   )r(  r=  r8  )r(  r=  )rz   r”   rz   r”   rz   r”   r   ©r(  r«  r°  r”   r   )r   r€   rN   Úgroup_byÚ	aggregater(  ÚpcÚCountOptionsr…   r~   r2  r  )r/  r€   ÚrÚtable_with_nullsÚtable_with_chunkss        r!   Útest_table_group_byrJ    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¢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   ÚfirstF)Úuse_threadsr   )r”   Úa_first)	r   r€   r˜  r,   r-   r.  rC  rD  rP   )r¬  r­  r€   rŸ   rS   s        r!   Útest_table_group_by_firstrO  £  sÚ   € ô �X‰XšL°°S¨z¸A©~Ñ>Ó?€FÜ�X‰XšL°°S¨z¸A©~Ñ>Ó?€FÜ×Ñ˜f fÐ-Ó.€Eä	�‰Ô*Ó	+ñ 8Ø�‰�sÓ×%Ñ% ~Ð&6Ô7÷8ð �^‰^˜C¨Uˆ^Ó3×=Ñ=¸~Ð>NÓO€FÜ�x‰x˜s C˜j°a¸°VÑ<Ó=€HØ�=‰=˜Ô"Ð"Ñ"÷8ð 8ú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   )ÚhrQ  rQ  ÚwrR  rR  )ry   rÃ  rÄ  rÅ  rÆ  rÇ  )ÚgrouprM  rN  z accepts 3 arguments but 2 passedrD   rS  )rM  Úpivot_wider)©rM  rN  rT  r   )rS  Úkey_value_pivot_wider)rQ  rR  )Ú	key_namesrU  rT  ry   rÅ  rÃ  rÆ  rÄ  rÇ  )
r   r€   r,   r-   r.   rC  rD  rP   rE  ÚPivotWiderOptions)r€   rŸ   rS   Úoptionss       r!   Útest_table_group_by_pivot_widerrZ  ²  s2  € ä�H‰HÒ1Ú;Ú7ñ9ó :€Eô 
�‰”zÐ)KÔ	Lñ DØ�‰�wÓ×)Ñ)Ð+AÐ*BÔC÷Dð
 �^‰^˜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ð �=‰=˜Ô"Ð"Ñ"÷#Dð Dú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~   r*  Ú	to_readerrË   Úread_allÚread_next_batchrÁ   )r€   r<  s     r!   Útest_table_to_recordbatchreaderr_  Ì  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   ©r3  r5  r4  )ÚcolBÚcol3rd  rh  ©r4  r5  N©rd  re  ri  ú
full outer©Ú	join_type©r   r   r   rr   ©rz   r”   rL  N©r4  r5  Nr3  ©r   r€   ÚjoinrO   Úsort_byr¸  s      r!   Útest_table_joinru  ×  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 )Nra  rb  rc  rf  rg  )rd  ri  rd  rj  rk  rl  Ú_r)rn  Úright_suffixro  rp  rq  rr  r¸  s      r!   Útest_table_join_unique_keyry  ò  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 )Nra  ©ry   rÃ  rÇ  rb  ©rd  rh  ÚcolValsrf  ©rr   rÃ  ry   rg  rd  rl  rm  ro  )ry   rÃ  rÇ  Nrp  )ry   rÃ  Nrr   rq  )rd  rh  r}  rh  r}  r{   rr  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|  rh  rÆ  r   r   ry   rÃ  rz   r”   )r*  ÚfilterrE  rå   )r$  rv  rŸ   s      r!   Útest_table_filter_expressionr‚  %  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 )Nra  r{  rb  r|  rf  r~  rg  rd  ry   )r   r   r   r   r   )ry   rÃ  rÇ  rÃ  ry   )rz   r”   rL  r5  r4  )r   r€   r˜  r�  rE  rå   rO   )rv  rR  rS  rŸ   s       r!   Ú#test_table_filter_expression_chunksr„  6  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 )Nra  rb  rc  rf  rg  )rh  ri  Úcol4Úcol5Úcol6Úcol7rd  rh  rj  )rd  re  ri  r†  r‡  rˆ  r‰  rl  rm  ro  rp  rq  rr  r¸  s      r!   Útest_table_join_many_columnsrŠ  M  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  rc  )r   r   rÕ  )rz   r”   Úg)rf   rh   rC   )rh  ri  ÚcolCrd  re  r   rh  ri  ©ÚonÚbyÚ	toleranceÚright_onÚright_by)rf   NNNN)rd  re  r�  )r   r~   r*  Ú	join_asofrO   r€   )rv  rR  rG  s      r!   Útest_table_join_asofr•  t  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 )Nra  r{  r   ©rd  rh  r�  r~  rg  rf  ©r   r   r   )rh  r}  rd  r�  r�  rd  rh  r   ©r�  r�  r‘  )Nr5  N©rd  rh  r�  r}  )r   r€   r”  rt  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   rg  r˜  )r}  r�  r   r™  )r3  r3  r5  )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)Nra  r{  r   rb  rš  r~  rg  ©rÌ  rä  rå  rf  r˜  )rh  r}  ÚcolUniqrd  r�  zXColumns {'colVals'} present in both tables. AsofJoin does not support column collisions.rD   r�  rd  rh  r   rŽ  )r   r€   r,   r-   r.   r”  ©rv  rR  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)Nra  r{  r   r—  rg  rŸ  rf  r˜  ©r}  r   rd  r�  z)inconsistent size of by-key across inputsrD   r�  rd  rh  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ð 	ô 	
÷
÷ 
ñ 
ú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)Nra  r   ©rd  r�  rg  rŸ  )g     ÀX@rg   rf   r˜  r¤  zCExpected by-key type int64 but got double for field colA in input 1rD   r�  rd  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ð 	ô 	
÷
÷ 
ñ 
úó   Á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)Nra  r   r¨  rg  rŸ  rf  )rg   rh   rB   r¤  zAExpected on-key type int64 but got double for field on in input 1rD   r�  rd  r   rŽ  r¥  r¡  s      r!   Ú%test_table_join_asof_on_type_mismatchr¬    s”   € ä	�‰ÚÚñó 
€Bô
 
�‰Ú"Ú"ÚÚñ	ó 
€Bð N€CÜ	�‰”r—v‘v×*Ñ*°#Ô	6ñ 
Ø
�‰Ø�4˜V˜H°Ø V Hð 	ô 	
÷
÷ 
ñ 
ú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   r7  r”   ÚboolF)r*  r   rË   rå   r,   r-   r.   r
  )r$  r€   Ú
new_schemas      r!   Útest_table_cast_invalidr°    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«  r(  r{   r0  rØ  rB  )r«  Ú
descending)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î   )rz   Ú	ascending)r   r   rN   rt  r(  rF   )r$  r€   r  Ú
sorted_tabÚsorted_tab_dicts        r!   Útest_table_sort_byr¹  ,  sz  € ð �O‰OÜ
�‰’Ó!Ü
�‰Ò*Ó+ðð ˜Ðð ó !€Eð
 �=‰=˜Ó"×,Ñ,Ó.Ú)Ú!ñ3ò ð ð ð
 �=‰=Ð2Ð3Ó4×>Ñ>Ó@Ú)Ú!ñEò ð ð ð
 �/‰/Ü
�‰’¤R§X¡X£ZÔ0Ü
�‰Ò0Ó1ðð �3ˆZð ó €Cð
 —‘Ð1Ð2Ó3€JØ ×*Ñ*Ó,€OØ˜3Ñ¢=Ò0Ð0Ð0Ø˜3ÑÒ#BÒBÐBÐBà—‘Ð0Ð1Ó2€JØ ×*Ñ*Ó,€OØ˜3Ñ¢=Ò0Ð0Ð0Ø˜3ÑÒ#BÒBÐBÑBrU   Ú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  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Ã  t  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 Õ'÷	(÷ 	(ñ 	(ú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  Úinnerrm  zOData type list<item: int64> is not supported in join non-key field array_column)r   r~   r*  r…   r,   r-   r   r  rs  rm   rN  )Ú	NUM_ITEMSr�   r�  rv  rR  ÚexcinfoÚexp_error_msgs          r!   Útest_invalid_non_join_columnrÊ  „  sD  € à€IÜ	�‰×	Ñ	Ü�IÓÜ8=¸iÓ8H×I°1¤U¨1£XÖ. š!Ô.Ó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                  óN   — t        j                  d«      } | j                  d«      S )Nzpyarrow.cudar   )r,   ÚimportorskipÚContext)Úcudas    r!   Úcuda_contextrÏ  �  s    € ä×Ñ˜~Ó.€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à  Á  s1   € ä×$Ñ$ Z°+Ñ%=Ó>€MØ×Ñ 5Ñ(Ð(Ð(ØÐrU   c                 ó0   — t        j                  | |¬«      S ©Nr(  )r   r)  )rÒ  rË   s     r!   Úcpu_recordbatchrã  È  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è  Ò  s   € ä�8‰8Ð&Ð(9Ð:À6ÔJÐJrU   c                 ó4   — t        j                  ||g| ¬«      S râ  rç  )rË   rÞ  s     r!   Ú
cuda_tablerê  ×  s   € ä�8‰8Ð'Ð);Ð<ÀVÔLÐLrU   c                 ó4   — t        j                  ||g| ¬«      S râ  rç  )rË   rÛ  rÞ  s      r!   Úcpu_and_cuda_tablerì  Ü  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õ   r+  r3   r/   ró   Údevice_typer   ÚDeviceAllocationTypeÚCUDAr*   r  Ú
__reduce__)rÏ  rÛ  rÞ  rà  ró   s        r!   Útest_chunked_array_non_cpur  á  s\  € ð ×"Ñ"Ð&7×&<Ñ&<Ò<Ð<Ð<ð ×$Ñ$Ó&Ð*;×*BÑ*BÓ*DÒDÐDÐDô Ð!Ó"¤cÐ*;Ó&<Ò<Ð<Ð<ô Ð!Ó"¤dÐ+=Ó&>Ñ>Ð>Ð>ð ×ÑÔ!Ü	�‰Ô*Ó	+ñ /Ø×#Ñ#¨Ð#Ô.÷/ô 
�‰Ô*Ó	+ñ &Ø×%Ò%÷&ô 
�‰Ô*Ó	+ñ "Ø×!Ò!÷"ô 
�‰Ô*Ó	+ñ 3Ø×0Ñ0Ô2÷3ô 
�‰Ô*Ó	+ñ Ø˜1Ò÷ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ $Ø×!Ñ!Ô#÷$ô 
�‰Ô*Ó	+ñ &Ø×#Ñ#Ô%÷&ô 
�‰Ô*Ó	+ñ (Ø×$Ñ$ QÔ'÷(ô 
�‰Ô*Ó	+ñ 1ØÐ0Ò0÷1ô 
�‰Ô*Ó	+ñ 'Ø×$Ñ$Ô&÷'ô 
�‰Ô*Ó	+ñ &Ø×#Ñ#Ô%÷&ô 
�‰Ô*Ó	+ñ 'Ø×$Ñ$Ô&÷'ô 
�‰Ô*Ó	+ñ "Ø×ÑÔ!÷"ô 
�‰Ô*Ó	+ñ /Ø×,Ñ,Ô.÷/ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ ,Ø×)Ñ)Ô+÷,ô 
�‰Ô*Ó	+ñ $Ø×!Ñ!Ô#÷$ô 
�‰Ô*Ó	+ñ *Ø×'Ñ'Ô)÷*ô 
�‰Ô*Ó	+ñ DØ×!Ñ!Ò"BÔC÷Dô 
�‰Ô*Ó	+ñ $Ø× Ñ  Ô#÷$ð ×Ñ˜Q Ô"ô 
�‰Ô*Ó	+ñ %Ø×Ñ  Ô$÷%ô 
�‰Ô*Ó	+ñ 'Ø×$Ñ$Ô&÷'ô 
�‰Ô*Ó	+ñ "Ø×ÑÔ!÷"ô 
�‰Ô*Ó	+ñ 0Ø×-Ñ-Ô/÷0ð ×(Ñ(Ð,=×,HÑ,HÒHÐHÐHô Ð!×(Ñ(Ó)¬SÐ1B×1IÑ1IÓ-JÒJÐJÐJð ×$Ñ$ QÓ'€EØ×Ñ¤× 7Ñ 7× <Ñ <Ò<Ð<Ð<ô 
�‰Ô*Ó	+ñ 'Ø×$Ñ$Ô&÷'ô 
�‰Ô*Ó	+ñ 0Ø×-Ñ-Ô/÷0ô 
�‰Ô*Ó	+ñ (Ø×%Ñ%Ô'÷(ð (÷s/ñ /ú÷&ñ &ú÷"ñ "ú÷3ñ 3ú÷ñ ú÷%ñ %ú÷$ñ $ú÷&ñ &ú÷(ñ (ú÷1ñ 1ú÷'ñ 'ú÷&ñ &ú÷'ñ 'ú÷"ñ "ú÷/ñ /ú÷%ñ %ú÷,ñ ,ú÷$ñ $ú÷*ñ *ú÷Dñ Dú÷$ñ $ú÷%ñ %ú÷'ñ 'ú÷"ñ "ú÷0ñ 0ú÷'ñ 'ú÷0ñ 0ú÷(ð (ú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  n  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  r&  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  rO  rW  r   rN   rG   rÕ  rÖ  rš   rå   r,   r-   ri   rf  Úremover^  rý  rþ  rÿ  r�  rË   rF   r.  r
  rû  r�  r[  rt  rP   rÄ   r   Údefault_cpu_memory_managerr*  r…   r|   ÚStructArrayr™  r9   r&   r(  r*   r§   r×  r¢  Ú	serializer}   r‘  rP  rs  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  z  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™Ô ÷	!ð 	!ð	!ð !×.Ñ.¨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ÐÜ	�‰Ô*Ó	+ñ 0Ø#×-Ñ-Ô/÷0ô 
�‰Ô*Ó	+ñ ,Ø×Ñ  ¨¡
Ô+÷,ô 
�‰Ô*Ó	+ñ #Ø×Ñ˜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Ü	�‰Ô*Ó	+ñ 7Ü
�‰×(Ñ(¨Ô6÷7ô 
�‰Ô*Ó	+ñ 'Ø×&Ò&Ð&Ñ&÷'ô 
�‰Ô*Ó	+ñ 8Ø×5Ñ5Ô7Ð7Ñ7÷8ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ +Ø×(Ñ(Ô*÷+ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ð !×&Ñ& 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Ð!Ô,÷-ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ô 
�‰Ô*Ó	+ñ -Ø×*Ñ*Ô,÷-ô 
�‰Ô*Ó	+ñ .Ø×+Ñ+Ô-÷.ô 
�‰Ô*Ó	+ñ 9ÜÐ'×5Ñ5Ó7Ô8÷9ð 9÷Q	!ñ 	!ú÷(*ñ *ú÷0ñ 0ú÷,ñ ,ú÷#ñ #ú÷'ñ 'ú÷:ñ :üò A÷7ñ 7ú÷'ñ 'ú÷8ñ 8ú÷%ñ %ú÷%ñ %ú÷%ñ %ú÷%ñ %ú÷+ñ +ú÷%ñ %ú÷0-ñ -ú÷%ñ %ú÷-ñ -ú÷.ñ .ú÷9ð 9ú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›Ñ$Ð$Ð$Ø�]‰]ò EˆØ�x‰x˜5Ñ Ð Ð Ø—\‘\“^ò 	EˆEØ—<‘< 5Ñ(Ð(Ð(Ø×$Ñ$¬×(?Ñ(?×(DÑ(DÓDÐDÐDñ	EðEð
 �<‰<˜?Ò*Ð*Ñ*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  rO  rW  r   rN   rG   rÕ  rÖ  rš   rå   rÚ  r¦   rf  r  r^  r�  rË   rF   r,   r-   r.  r
  rû  r�  r[  rt  rP   r~   r   r*  r…   r|   r  r™  r2  r9   r&   r(  r*   r§   r¢  r  ÚAssertionErrorr  r\  r}   r‘  rP  rs  r	   r+   rè   rõ   rC  rs  r”  rø  r  r   r  r   )rÏ  rè  rê  r×  rå  rË   r  r  Úcpu_colÚcuda_colÚ	new_tabler¯  r  Úcuda_table_with_nullsr†   r  rž  r8  rÆ   r<  r  s                        r!   Útest_table_non_cpur&  (  sÞ	  € ä�j°&Õ9Ø×Ñ€Að ×Ñ˜wÒ&Ð&Ð&ô ˆz×!Ñ!Ó" aÒ'Ð'Ð'ð ×$Ñ$ j×&;Ñ&;Ð<ó 
2ˆÜ—(‘(˜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ð
2ð ×(Ñ(¨Ó+€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Ü	�‰Ô*Ó	+ñ 1Ü
�‰×"Ñ" <Ô0÷1ô —‘×%Ñ%Ð'7Ð9IÐ&JÈFÓS€IÜ�i°Õ8ô 
�‰Ô*Ó	+ñ !Ø× Ò Ð Ñ ÷!ô 
�‰Ô*Ó	+ñ 2Ø×/Ñ/Ô1Ð1Ñ1÷2ô 
�‰Ô*Ó	+ñ Ø×ÑÔ÷ô 
�‰Ô*Ó	+ñ Ø×ÑÔ÷ô 
�‰Ô*Ó	+ñ Ø×ÑÔ÷ô 
�‰Ô*Ó	+ñ %Ø×"Ñ"Ô$÷%ð ×#Ñ#°!Ð#Ó4€GØò Cˆä�]‰]œ>Ó*ñ 	CÜ# E¸6ÕB÷	Cð 	CðCð ×!Ñ!°Ð!Ó2€FØò Cˆä�]‰]œ>Ó*ñ 	CÜ# E¸6ÕB÷	Cð 	CðCð × Ñ   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Ô)÷*ô 
�‰Ô*Ó	+ñ 8Ø×Ñ˜Z¨¨t°QÔ7÷8ô 
�‰Ô*Ó	+ñ Ø×ÑÔ÷ô 
�‰Ô*Ó	+ñ (Ø×%Ñ%Ô'÷(ô 
�‰Ô*Ó	+ñ 3Ü�z×/Ñ/Ó1Ô2÷3ô 
�‰Ô*Ó	+ñ  Ø×ÑÔ÷ ð  ÷a$ñ $ú÷*ñ *ú÷&ñ &ú÷ñ ú÷!ñ !ú÷,ñ ,üò A÷1ñ 1ú÷!ñ !ú÷2ñ 2ú÷ñ ú÷ñ ú÷ñ ú÷%ñ %ú÷	Cñ 	Cú÷	Cñ 	Cú÷,'ñ 'ú÷ñ ú÷ñ ú÷(ñ (ú÷"ñ "ú÷*ñ *ú÷8ñ 8ú÷ñ ú÷(ñ (ú÷3ñ 3ú÷ ð  ú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[   ÚImportErrorr,   Úpyarrowr   Úpyarrow.computeÚcomputerE  Ú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/  r1  r;  r=  r?  rE  rH  rJ  rM  rU  rY  ra  rd  rg  ri  rl  rn  rt  rw  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$  ÚacerorJ  rO  rZ  r_  ru  ry  r  r‚  r„  rŠ  Údatasetr•  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  r&  rX   rU   r!   ú<module>r6     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 ‡�×Ññ6ó ð6ð. ‡�×Ññ0.ó ð0.ðf ‡�×Ññó ðð& ‡�×Ññ.ó ð.ð( ‡�×Ññ9.ó ð9.ðx ‡�×Ññ$ó ð$ò$ò""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ð@ ‡�×ÑØ‡�×Ñ˜¨¯ª°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 øð_x ò Ø	ƒBðús   –v
 ö
vöv