Ë
    Èš§j‡ ã                   ó0  — d dl Z d dlmZ d dlZd dlmZmZmZmZ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Zd dl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Zdœd„Zed„ «       Zd„ Zd	„ Z ejB                  jE                  d
d«      ejB                  jE                  dd«      d„ «       «       Z#d„ Z$d„ Z%d„ Z&d„ Z'd„ Z(d„ Z)d„ Z*d„ Z+d„ Z,d„ Z-d„ Z.d„ Z/d„ Z0d„ Z1d„ Z2d„ Z3d„ Z4d „ Z5d!„ Z6d"„ Z7ejB                  jE                  d#g d$¢«      d%„ «       Z8ejB                  j*                  d&„ «       Z9ejB                  j*                  d'„ «       Z:ejB                  j*                  d(„ «       Z;ejB                  j*                  d)„ «       Z<d*„ Z=d+„ Z>d,„ Z?d-„ Z@ejB                  j*                  d.„ «       ZAejB                  j*                  d/„ «       ZBd0„ ZCd1„ ZDejB                  j*                  d2„ «       ZEd3„ ZFd4„ ZGejB                  j*                  ejB                  jE                  d5 ej�                  d6ejB                  j“                  ej”                  j–                  ¬7«      ¬8«      d9d:d;d<d=g«      d>„ «       «       ZLejB                  j*                  ejB                  jE                  d5 ej�                  d6ejB                  j“                  ej”                  j–                  ¬7«      ¬8«      d9d:d;d<d=g«      d?„ «       «       ZMd@„ ZNdA„ ZOdB„ ZPdC„ ZQdD„ ZRejB                  j*                  dE„ «       ZSdF„ ZTejª                  dG„ «       ZV	 d�dH„ZWdI„ ZXdJ„ ZYdK„ ZZdL„ Z[dM„ Z\dN„ Z]dO„ Z^dP„ Z_dQ„ Z`dR„ ZadS„ ZbdT„ ZcdU„ ZddV„ ZedW„ ZfejB                  j“                  ejÎ                  dXk(  dY¬Z«      d[„ «       Zhd\„ Zid]„ Zjd^„ Zkd_„ ZlejB                  jÚ                  d`„ «       Znda„ Zodb„ Zpdc„ Zqdd„ ZrejB                  j*                  de„ «       ZsejB                  j*                  df„ «       Ztdg„ ZuejB                  j                  dh„ «       Zvdi„ ZwejB                  j                  dj„ «       Zxdk„ ZyejB                  j                  dl„ «       ZzejB                  j                  dm„ «       Z{dn„ Z|ejB                  j                  do„ «       Z}dp„ Z~dq„ ZejB                  jE                  drdsdt e�j                   du«      d:f e�j                   dv«      d<fg«      dw„ «       Z�dx„ Z‚ejB                  jE                  d5d6d9d:d;d< ej�                  d=ejB                  j“                  ej”                  j–                  ¬7«      ¬8«      g«      dy„ «       ZƒejB                  jE                  d5g dz¢«      d{„ «       Z„d|Z…d}„ Z†ejB                  jE                  d~g d¢«      d€„ «       Z‡ejB                  jE                  d~d�d‚g«      dƒ„ «       ZˆejB                  jE                  d~d„d…g«      d†„ «       Z‰ejB                  jE                  d~d‡dˆg«      d‰„ «       ZŠejB                  j                  dŠ„ «       Z‹d‹„ ZŒdŒ„ Z�ejB                  j                  d�„ «       ZŽdŽ„ Z�ejB                  j                  d�„ «       Z�ejB                  j                  d�„ «       Z‘ejB                  j                  d‘„ «       Z’d’„ Z“d“„ Z”d”„ Z•d•„ Z–ejB                  j                  d–„ «       Z—d—„ Z˜ejB                  j                  d˜„ «       Z™d™„ ZšejB                  j                  dš„ «       Z›d›„ Zœy# e$ r dZY �ŒÆw xY w)žé    N)Úcontextmanager)ÚBytesIOÚStringIOÚTextIOWrapperÚBufferedIOBaseÚIOBase)Úguid)ÚCodecc                 óÜ  — t         j                  dv rt        j                  d«       	 t	        j
                  d¬«      }t        |d«      5 }|j                  d«       |j                  d«       |j                  d«       d d d «       |r|5   | |«       d d d «       n} | |«      5 }|j                  «       dk(  sJ ‚|j                  d«      dk(  sJ ‚|j                  «       dk(  sJ ‚|j                  d	«      dk(  sJ ‚|j                  «       dk(  sJ ‚	 d d d «       t        j                  |«       y # 1 sw Y   Œ²xY w# 1 sw Y   Œ+xY w# 1 sw Y   Œ7xY w# t        j                  «       w xY w)
N)Úwin32ÚdarwinÚ
emscriptenzneed sparse file supportÚtest_io)ÚprefixÚwbl   
    l       s   mark
é   )ÚsysÚplatformÚpytestÚskipÚtempfileÚmktempÚopenÚtruncateÚseekÚwriteÚsizeÚtellÚreadÚosÚunlink)Úfile_factoryÚexpected_errorÚfilenameÚfs       úXC:\Users\Luka\AppData\Local\Temp\pip-target-o84fipzb\lib\python\pyarrow/tests/test_io.pyÚcheck_large_seeksr'   ,   s,  € Ü
‡|�|Ð8Ñ8Ü�‰Ð.Ô/ðÜ—?‘?¨)Ô4ˆÜ�(˜DÔ! QØ�J‰J�|Ô$Ø�F‰F�;ÔØ�G‰G�IÔ÷ "ñ ÚÙ˜XÔ&÷  �ñ ˜hÔ'¨1Ø—v‘v“x <Ò/Ð/Ð/Ø—v‘v˜kÓ*¨kÒ9Ð9Ð9Ø—v‘v“x ;Ò.Ð.Ð.Ø—v‘v˜a“y IÒ-Ð-Ð-Ø—v‘v“x <Ò/Ð/Ñ/÷ (ô 	�	‰	�(Õ÷ "Ð!ú÷
  �ú÷ (Ð'ûô 	�	‰	�(ÕúsT   ©"E Á4D0Á?E Â	D<ÂE Â%A,EÄE Ä0D9Ä5E Ä<EÅE ÅEÅE ÅE+c               #   óp   K  — t        j                  t        «      5  d –— d d d «       y # 1 sw Y   y xY w­w©N)r   ÚraisesÚFileNotFoundError© ó    r&   Úassert_file_not_foundr.   C   s!   è ø€ ä	�‰Ô(Õ	)Û÷ 
*×	)Ñ	)üs   ‚6œ*¡	6ª3¯6c                  ó  — t        «       } t        j                  | «      }|j                  «       dk(  sJ ‚d}d}|j	                  |«       |j                  «       t        |«      k(  sJ ‚|j	                  |«       ||z   }| j                  «       }||k(  sJ ‚|j                  rJ ‚|j                  «        |j                  sJ ‚t        j                  t        d¬«      5  t        j                  t        «       «       d d d «       y # 1 sw Y   y xY w)Nr   s	   engaÃ±ados   foobarúbinary file expected©Úmatch)r   ÚpaÚ
PythonFiler   r   ÚlenÚgetvalueÚclosedÚcloser   r*   Ú	TypeErrorr   )Úbufr%   Ús1Ús2ÚexpectedÚresults         r&   Útest_python_file_writer?   M   sÍ   € Ü
‹)€Cä
�‰�cÓ€Aà�6‰6‹8�qŠ=Ðˆ=à	€BØ	€Bà‡G�GˆB„KØ�6‰6‹8”s˜2“wÒÐÐà‡G�GˆB„Kà�B‰w€Hà�\‰\‹^€FØ�XÒÐÐà�xŠxÐˆ<Ø‡G�G„IØ�8Š8€Oˆ8ä	�‰”yÐ(>Ö	?Ü
�‰”h“jÔ!÷ 
@×	?Ñ	?ús   ÃDÄDc                  ó"  — d} t        | «      }t        j                  |d¬«      }|j                  «       t	        | «      k(  sJ ‚|j                  «       dk(  sJ ‚|j                  d«      dk(  sJ ‚|j                  «       dk(  sJ ‚|j                  d«       |j                  «       dk(  sJ ‚|j                  d«       |j                  «       dk(  sJ ‚|j                  d«      }|d	k(  sJ ‚t	        |«      d
k(  sJ ‚|j                  «       t	        | «      k(  sJ ‚|j                  rJ ‚|j                  «        |j                  sJ ‚t        j                  t        d¬«      5  t        j                  t        «       d¬«       d d d «       y # 1 sw Y   y xY w)Nó   some sample dataÚr©Úmoder   é   ó   somer   é2   ó   sample dataé   r0   r1   )r   r3   r4   r   r5   r   r   r   r7   r8   r   r*   r9   r   )Údatar:   r%   Úvs       r&   Útest_python_file_readrL   i   s;  € Ø€Dä
�$‹-€CÜ
�‰�c Ô$€Aà�6‰6‹8”s˜4“yÒ Ð Ð à�6‰6‹8�qŠ=Ðˆ=à�6‰6�!‹9˜ÒÐÐØ�6‰6‹8�qŠ=Ðˆ=à‡F�Fˆ1„IØ�6‰6‹8�qŠ=Ðˆ=à‡F�Fˆ1„IØ�6‰6‹8�qŠ=Ðˆ=à	�‰ˆr‹
€AØ�ÒÐÐÜˆq‹6�RŠ<Ðˆ<à�6‰6‹8”s˜4“yÒ Ð Ð à�xŠxÐˆ<Ø‡G�G„IØ�8Š8€Oˆ8ä	�‰”yÐ(>Ö	?Ü
�‰”h“j sÕ+÷ 
@×	?Ñ	?ús   Å FÆFÚnbytes)éÿÿÿÿr   é   r   éd   Úfile_offset)rN   r   r   rP   c                 ó¸  — d}t        j                  t        |«      d¬«      }| dk  s|dk  rRt        j                  t         j
                  d¬«      5  |j                  || ¬«       d d d «       |j                  «        y |j                  || ¬«      }t        |t        |«      «      }t        || z   t        |«      «      }t        ||| «      }|j                  d¬	«      |j                  d«      k(  sJ ‚|j                  d
¬	«      |j                  d
«      k(  sJ ‚|j                  «       |j                  «       k(  sJ ‚t        |«      dz  }|j                  |«      |j                  |«      k(  sJ ‚t        j                  t        d¬«      5  |j                  d«       d d d «       |j                  «        |j                  sJ ‚y # 1 sw Y   �Œ_xY w# 1 sw Y   Œ5xY w)Ns   data1data2data3data4data5rB   rC   r   zshould be a positive valuer1   )rQ   rM   rE   )rM   é   é   Úseekable)r3   r4   r   r   r*   ÚArrowInvalidÚ
get_streamr8   Úminr5   r   ÚOSErrorr   r7   )	rM   rQ   rJ   r%   ÚstreamÚstartÚendr:   Úns	            r&   Útest_python_file_get_streamr^   Š   s…  € ð (€Dä
�‰”g˜d“m¨#Ô.€Að �‚z�[ 1’_Ü�]‰]œ2Ÿ?™?Ø!=ö?à�L‰L [¸ˆLÔ@÷?ð 	
�‰Œ	Øà—‘¨+¸f�ÓEˆô
 �œS ›YÓ'€EÜ
ˆk˜FÑ"¤C¨£IÓ
.€CÜ
�$�u˜S�/Ó
"€Cð �;‰;˜aˆ;Ó  C§H¡H¨Q£KÒ/Ð/Ð/Ø�;‰;˜aˆ;Ó  C§H¡H¨Q£KÒ/Ð/Ð/ð �;‰;‹=˜CŸH™H›JÒ&Ð&Ð&ô 	ˆD‹	�A‰€AØ�;‰;�q‹>˜SŸX™X a›[Ò(Ð(Ð(ô 
�‰”w jÖ	1Ø�‰�AŒ÷ 
2ð ‡L�L„NØ�=Š=Ð‰=÷??ñ ?ú÷6 
2Ð	1ús   ÁGÆ
GÇGÇGc                  óô   — d} t        | «      }t        j                  |d¬«      }|j                  dd¬«      }|dk(  sJ ‚t	        |«      dk(  sJ ‚|j                  dd	¬«      }|| k(  sJ ‚t	        |«      d
k(  sJ ‚y )NrA   rB   rC   r   é   )rM   Úoffsets   e samrG   r   é   )r   r3   r4   Úread_atr5   )rJ   r:   r%   rK   Úws        r&   Útest_python_file_read_atre   ¶   s€   € Ø€Dä
�$‹-€CÜ
�‰�c Ô$€Að 	
�	‰	˜ 1ˆ	Ó%€AØ�Š=Ðˆ=Üˆq‹6�QŠ;Ðˆ;ð 	
�	‰	˜ Aˆ	Ó&€AØ�Š9Ðˆ9Üˆq‹6�RŠ<Ð‰<r-   c                  ó¢   — d} t        | «      }t        j                  |d¬«      5 }|j                  «       | k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)NrA   rB   rC   )r   r3   r4   Úreadall)rJ   r:   r%   s      r&   Útest_python_file_readallrh   Ç   s@   € Ø€Dä
�$‹-€CÜ	�‰�s Õ	%¨Ø�y‰y‹{˜dÒ"Ð"Ñ"÷ 
&×	%Ñ	%ús   ¥AÁAc                  óø   — d} d}t        | «      }t        |«      }t        j                  |d¬«      5 }|j	                  |«      dk(  sJ ‚|d |  |d |  k(  sJ ‚t        |«      | k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Né
   s   some sample data longer than 10rB   rC   )Ú	bytearrayr   r3   r4   Úreadintor5   )ÚlengthrJ   Údst_bufÚsrc_bufr%   s        r&   Útest_python_file_readintorp   Ï   s   € Ø€FØ-€DÜ˜Ó€GÜ�d‹m€Gä	�‰�w SÕ	)¨QØ�z‰z˜'Ó" bÒ(Ð(Ð(à�w˜Ð 4¨¨ =Ò0Ð0Ð0Ü�7‹|˜vÒ%Ð%Ñ%÷	 
*×	)Ñ	)ús   ²4A0Á0A9c                  ó€  ‡‡— dŠd} t        | «      Š G ˆˆfd„d«      } |«       }t        j                  |d¬«      5 }|j                  ‰«      }t	        |«      ‰k(  sJ ‚t        |«      j                  «       ‰d ‰ k(  sJ ‚t        d«      t        |«      d<   ‰d   t        d«      k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)	Nrj   s
   0123456798c                   ó0   •— e Zd Zd„ Zed„ «       Zˆ ˆfd„Zy)ú0test_python_file_read_buffer.<locals>.DuckReaderc                  ó   — y r)   r,   ©Úselfs    r&   r8   z6test_python_file_read_buffer.<locals>.DuckReader.closeâ   ó   € Ør-   c                  ó   — y©NFr,   ru   s    r&   r7   z7test_python_file_read_buffer.<locals>.DuckReader.closedå   ó   € àr-   c                 ó.   •— |‰k(  sJ ‚t        ‰«      d | S r)   )Ú
memoryview)rv   rM   rn   rm   s     €€r&   Úread_bufferz<test_python_file_read_buffer.<locals>.DuckReader.read_bufferé   s#   ø€ Ø˜VÒ#Ð#Ð#Ü˜gÓ& w¨Ð/Ð/r-   N)Ú__name__Ú
__module__Ú__qualname__r8   Úpropertyr7   r}   )rn   rm   s   €€r&   Ú
DuckReaderrs   á   s!   ø„ ò	ð 
ñ	ó 
ð	ö	0r-   r‚   rB   rC   ó   xr   )rk   r3   r4   r}   r5   r|   ÚtobytesÚord)rJ   r‚   Úduck_readerr%   r:   rn   rm   s        @@r&   Útest_python_file_read_bufferr‡   Ü   s¯   ù€ Ø€FØ€DÜ˜‹o€G÷
0ô 
0ñ “,€KÜ	�‰�{¨Õ	-°Ø�m‰m˜FÓ#ˆÜ�3‹x˜6Ò!Ð!Ð!Ü˜#‹×&Ñ&Ó(¨G°G°VÐ,<Ò<Ð<Ð<ä  ›YŒ
�3‹˜Ñà�q‰zœS ›YÒ&Ð&Ñ&÷ 
.×	-Ñ	-ús   ½A-B4Â4B=c                  ó¸   — t        j                  t        d«      d¬«      5 } t        | t        «      sJ ‚t        | t
        «      sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr-   rB   rC   )r3   r4   r   Ú
isinstancer   r   ©r%   s    r&   Útest_python_file_correct_abcr‹   ø   sB   € Ü	�‰”w˜s“|¨#Õ	.°!Ü˜!œ^Ô,Ð,Ð,Ü˜!œVÔ$Ð$Ñ$÷ 
/×	.Ñ	.ús   ¡%AÁAc                  óÄ   — d} t        | «      }t        | «      }t        j                  |d¬«      5 }t        ||«      D ]  \  }}||k(  rŒJ ‚ 	 d d d «       y # 1 sw Y   y xY w)Ns   line1
    line2
    line3
    rB   rC   )r   r3   r4   Úzip)rJ   r:   Úbuf2r%   r   r=   s         r&   Útest_python_file_iterabler�   þ   s[   € ð€Dô
 �$‹-€CÜ�4‹=€Dä	�‰�s Õ	%¨Ü! ! Tžl‰NˆD�(Ø˜8Ó#Ð#Ð#ñ +÷ 
&×	%Ñ	%ús   °AÁ	AÁAc                  ó    — d„ } t        | «       y )Nc                 ó@   — t        j                  t        | d«      «      S ©NÚrb)r3   r4   r   )r$   s    r&   Úfactoryz-test_python_file_large_seeks.<locals>.factory  s   € Ü�}‰}œT (¨DÓ1Ó2Ð2r-   )r'   )r”   s    r&   Útest_python_file_large_seeksr•     s   € ò3ô �gÕr-   c                  ój  — d} t        j                  | «      }|j                  «       dk(  sJ ‚|j                  «       t	        | «      k(  sJ ‚|j                  d«      dk(  sJ ‚|j                  «       dk(  sJ ‚|j                  d«       |j                  «       dk(  sJ ‚|j                  dd«       |j                  «       t	        | «      k(  sJ ‚|j                  d«       |j                  «       dk(  sJ ‚|j                  d«      dk(  sJ ‚|j                  rJ ‚|j                  «        |j                  sJ ‚y )	NrA   r   rE   rF   rT   r   rG   rH   )	r3   ÚBufferReaderr   r   r5   r   r   r7   r8   )rJ   r%   s     r&   Útest_bytes_readerr˜     sü   € à€DÜ
�‰˜Ó€AØ�6‰6‹8�qŠ=Ðˆ=à�6‰6‹8”s˜4“yÒ Ð Ð à�6‰6�!‹9˜ÒÐÐØ�6‰6‹8�qŠ=Ðˆ=à‡F�Fˆ1„IØ�6‰6‹8�qŠ=Ðˆ=à‡F�Fˆ1ˆa„LØ�6‰6‹8”s˜4“yÒ Ð Ð à‡F�Fˆ1„IØ�6‰6‹8�qŠ=Ðˆ=à�6‰6�"‹:˜Ò'Ð'Ð'à�xŠxÐˆ<Ø‡G�G„IØ�8Š8€O‰8r-   c                  óŠ   — t        j                  t        «      5  t        j                  d«       d d d «       y # 1 sw Y   y xY w)Nzsome sample data)r   r*   r9   r3   r—   r,   r-   r&   Útest_bytes_reader_non_bytesrš   .  s'   € Ü	�‰”yÕ	!Ü
�‰Ð*Ô+÷ 
"×	!Ñ	!ús	   š9¹Ac                  óˆ   — dd l } d„ } |«       } | j                  «        |j                  «       dk(  sJ ‚|j                  €J ‚y )Nr   c                  óz   — ddz  } t        j                  | «      }|j                  d«       |j                  d«      S )NrA   éè  r   rS   )r3   r—   r   r}   )rJ   Úreaders     r&   Ú
get_bufferz>test_bytes_reader_retains_parent_reference.<locals>.get_buffer7  s6   € Ø" TÑ)ˆÜ—‘ Ó&ˆØ�‰�AŒØ×!Ñ! !Ó$Ð$r-   s   sample)ÚgcÚcollectÚ
to_pybytesÚparent)r    rŸ   r:   s      r&   Ú*test_bytes_reader_retains_parent_referencer¤   3  sC   € Ûò%ñ ‹,€CØ€B‡J�J„LØ�>‰>Ó˜yÒ(Ð(Ð(Ø�:‰:Ð!Ð!Ñ!r-   c                 óJ  — t         j                  j                  t        | «      d«      }t	        |d«      5 }t        j                  |«      }|j                  «       sJ ‚|j                  «       rJ ‚|j                  «       rJ ‚|j                  d«       d d d «       t	        |d«      5 }t        j                  |«      }|j                  «       sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚|j                  «       dk(  sJ ‚	 d d d «       t        «       }t        j                  |«      }|j                  «       sJ ‚|j                  «       rJ ‚|j                  «       rJ ‚|j                  d«       |j                  «       dk(  sJ ‚y # 1 sw Y   ŒûxY w# 1 sw Y   Œ‘xY w)Núfoo.txtr   s   foobar
r“   )r    ÚpathÚjoinÚstrr   r3   r4   ÚwritableÚreadablerU   r   r   r   r6   )Útmpdirr§   r%   ÚpfÚbios        r&   Útest_python_file_implicit_moder¯   C  sF  € Ü�7‰7�<‰<œ˜F› YÓ/€DÜ	ˆd�DÔ	˜QÜ�]‰]˜1ÓˆØ�{‰{Œ}Ðˆ}Ø—;‘;”=Ð Ð Ø—;‘;”=Ð Ð Ø	�‰�Ô÷ 
ô 
ˆd�DÔ	˜QÜ�]‰]˜1ÓˆØ�{‰{Œ}Ðˆ}Ø—;‘;”=Ð Ð Ø�{‰{Œ}Ðˆ}Ø�w‰w‹y˜KÒ'Ð'Ñ'÷ 
ô ‹)€CÜ	�‰�sÓ	€BØ�;‰;Œ=Ðˆ=Ø�{‰{Œ}ÐÐØ�{‰{Œ}ÐÐØ‡H�Hˆ[ÔØ�<‰<‹>˜[Ò(Ð(Ñ(÷) 
Ð	ú÷ 
Ð	ús   ¶AFÂ'A!FÆFÆF"c                 óŽ  — ddg}t         j                  j                  t        | «      d«      }t	        |d«      5 }	 t        j                  |d¬«      }|j                  «       sJ ‚|j                  |«       |j                  «        	 d d d «       t	        |d«      5 }	 t        j                  |d¬«      }|j                  «       sJ ‚|j                  «       d	j                  |«      k(  sJ ‚	 |j                  «        	 d d d «       y # |j                  «        w xY w# 1 sw Y   Œ”xY w# |j                  «        w xY w# 1 sw Y   y xY w)
Ns   line1
s   line2
line3r¦   r   rd   rC   r“   rB   r-   )r    r§   r¨   r©   r   r3   r4   rª   Ú
writelinesr8   r«   r   )r¬   Úlinesr§   r%   s       r&   Útest_python_file_writelinesr³   \  s÷   € ØÐ,Ð-€EÜ�7‰7�<‰<œ˜F› YÓ/€DÜ	ˆd�DÔ	˜Qð	Ü—‘˜a cÔ*ˆAØ—:‘:”<Ð�<Ø�L‰L˜Ôà�G‰G�I÷ 
ô 
ˆd�DÔ	˜Qð	Ü—‘˜a cÔ*ˆAØ—:‘:”<Ð�<Ø—6‘6“8˜sŸx™x¨›Ò.Ð.Ñ.à�G‰G�I÷ 
Ð	øð �G‰G�Iú÷ 
Ð	ûð �G‰G�Iú÷ 
Ð	úsG   ºD¼:DÁ6DÂD;ÂAD&Ã+D;ÄDÄDÄD#Ä&D8Ä8D;Ä;Ec                  ó  — t        «       } t        j                  | «      }t        j                  |«      }~ |«       �J ‚| j
                  rJ ‚t        j                  | «      }|j                  «        | j
                  sJ ‚y r)   )r   r3   r4   ÚweakrefÚrefr7   r8   )r®   r­   Úwrs      r&   Útest_python_file_closingr¸   p  sb   € Ü
‹)€CÜ	�‰�sÓ	€BÜ	�‰�R‹€BØ
Ù‹4ˆ<Ðˆ<Ø�zŠzÐˆ>Ü	�‰�sÓ	€BØ‡H�H„JØ�:Š:Ð‰:r-   c                 ód  — t        d|j                  dz   «      D ]”  }|j                  |j                  | |¬«      «      }t	        |«      t	        | «      k(  sJ ‚t        |«      t        | «      k(  sJ ‚|j                  «       | j                  «       k(  sJ ‚|j                  | j                  k(  rŒ”J ‚ y )Nr   rO   ©Úprotocol)ÚrangeÚHIGHEST_PROTOCOLÚloadsÚdumpsr5   r|   r¢   Ú
is_mutable)r:   Úpicklerr»   r>   s       r&   Úcheck_buffer_picklingrÂ   €  sœ   € ä˜!˜W×5Ñ5¸Ñ9Ö:ˆØ—‘˜wŸ}™}¨S¸8˜}ÓDÓEˆÜ�6‹{œc #›hÒ&Ð&Ð&Ü˜&Ó!¤Z°£_Ò4Ð4Ð4Ø× Ñ Ó" c§n¡nÓ&6Ò6Ð6Ð6Ø× Ñ  C§N¡NÓ2Ð2Ð2ñ ;r-   c                 óè   — d}t        j                  |«      }t        |t         j                  «      sJ ‚|j                  rJ ‚|j
                  sJ ‚|j                  «       }||k(  sJ ‚t        || «       y ©Nó	   some data)r3   Ú	py_bufferr‰   ÚBufferrÀ   Úis_cpur¢   rÂ   ©Úpickle_moduleÚvalr:   r>   s       r&   Útest_buffer_bytesrÌ   Š  sd   € Ø
€Cä
�,‰,�sÓ
€CÜ�cœ2Ÿ9™9Ô%Ð%Ð%Ø�~Š~ÐÐØ�:Š:Ðˆ:à�^‰^Ó€FØ�SŠ=Ðˆ=ä˜#˜}Õ-r-   c                 ó  — t        j                  dd¬«      }|j                  «       dk(  sJ ‚|j                  dk(  sJ ‚t	        |«      }|j                  «       dk(  sJ ‚t        j                  |«      j                  dk7  sJ ‚t        || «       y )Nr   )Úaddressr   r-   )r3   Úforeign_bufferr¢   rÎ   r|   r„   rÆ   rÂ   )rÊ   Ú	null_buffÚms      r&   Útest_buffer_null_datarÒ   ˜  s…   € Ü×!Ñ!¨!°!Ô4€IØ×ÑÓ! SÒ(Ð(Ð(Ø×Ñ Ò!Ð!Ð!ô 	�9Ó€AØ�9‰9‹;˜#ÒÐÐÜ�<‰<˜‹?×"Ñ" aÒ'Ð'Ð'ä˜) ]Õ3r-   c                 óÞ   — d}t        j                  |«      }t        |t         j                  «      sJ ‚|j                  rJ ‚|j
                  sJ ‚t        |«      }||k(  sJ ‚t        || «       y rÄ   )r3   rÆ   r‰   rÇ   rÀ   rÈ   r|   rÂ   rÉ   s       r&   Útest_buffer_memoryviewrÔ   ¥  sa   € Ø
€Cä
�,‰,�sÓ
€CÜ�cœ2Ÿ9™9Ô%Ð%Ð%Ø�~Š~ÐÐØ�:Š:Ðˆ:ä˜‹_€FØ�SŠ=Ðˆ=ä˜#˜}Õ-r-   c                 óð   — t        d«      }t        j                  |«      }t        |t        j                  «      sJ ‚|j
                  sJ ‚|j                  sJ ‚t        |«      }||k(  sJ ‚t        || «       y rÄ   )rk   r3   rÆ   r‰   rÇ   rÀ   rÈ   rÂ   rÉ   s       r&   Útest_buffer_bytearrayrÖ   ³  se   € Ü
�LÓ
!€Cä
�,‰,�sÓ
€CÜ�cœ2Ÿ9™9Ô%Ð%Ð%Ø�>Š>Ðˆ>Ø�:Š:Ðˆ:ä�s‹^€FØ�SŠ=Ðˆ=ä˜#˜}Õ-r-   c                  óŽ   — t        j                  t        d¬«      5  t        j                  d «       d d d «       y # 1 sw Y   y xY w)Nz$(bytes-like object|buffer interface)r1   )r   r*   r9   r3   rÆ   r,   r-   r&   Útest_buffer_invalidrØ   Á  s3   € Ü	�‰”yØCö
Eä
�‰�TÔ÷
E÷ 
Eñ 
Eús	   œ;»Ac                  ó~   — t        j                  d«      } t        j                  | «      } |«       €J ‚~  |«       �J ‚y rÄ   )r3   rÆ   rµ   r¶   )r:   r·   s     r&   Útest_buffer_weakrefrÚ   Ç  s;   € Ü
�,‰,�|Ó
$€CÜ	�‰�SÓ	€BÙ‹4ÐÐÐØÙ‹4ˆ<Ð‰<r-   zval, expected_hex_buffer))s   checks
   636865636B)s   0s   0730)r-   r-   c                 óX   — t        j                  | «      }|j                  «       |k(  sJ ‚y r)   )r3   rÆ   Úhex)rË   Úexpected_hex_bufferr:   s      r&   Útest_buffer_hexrÞ   Ï  s'   € ô
 �,‰,�sÓ
€CØ�7‰7‹9Ð+Ò+Ð+Ñ+r-   c                  óì   — t        d«      } d| d<   t        j                  | «      }t        j                  |d¬«      }|d   | d   k(  sJ ‚| dxx   dz  cc<   |d   | d   k(  sJ ‚|j
                  |k(  sJ ‚y )Né   é*   r   Úuint8©ÚdtyperO   )rk   r3   rÆ   ÚnpÚ
frombufferÚbase)Ú
byte_arrayr:   Úarrays      r&   Útest_buffer_to_numpyrê   Ø  s€   € ô ˜2“€JØ€Jˆq�MÜ
�,‰,�zÓ
"€CÜ�M‰M˜# WÔ-€EØ�‰8�z !‘}Ò$Ð$Ð$ØˆqƒM�QÑƒMØ�‰8�z !‘}Ò$Ð$Ð$Ø�:‰:˜ÒÐÑr-   c                  óz  — t        j                  dt         j                  ¬«      j                  d«      } t	        j
                  | «      }|j                  sJ ‚|j                  sJ ‚|j                  «       | j                  «       k(  sJ ‚t	        j
                  | j                  «      }|j                  sJ ‚|j                  sJ ‚|j                  «       | j                  «       k(  sJ ‚t        j                  t        d¬«      5  t	        j
                  | j                  d d d…   «      }d d d «       y # 1 sw Y   y xY w)Né   rã   )r`   rE   znot contiguousr1   rT   )rå   ÚarangeÚint8Úreshaper3   rÆ   rÈ   rÀ   r¢   r„   ÚTr   r*   Ú
ValueError)Úarrr:   s     r&   Útest_buffer_from_numpyró   å  sÞ   € ô �)‰)�BœbŸg™gÔ
&×
.Ñ
.¨vÓ
6€CÜ
�,‰,�sÓ
€CØ�:Š:Ðˆ:Ø�>Š>Ðˆ>Ø�>‰>Ó˜sŸ{™{›}Ò,Ð,Ð,ä
�,‰,�s—u‘uÓ
€CØ�:Š:Ðˆ:Ø�>Š>Ðˆ>Ø�>‰>Ó˜sŸ{™{›}Ò,Ð,Ð,ä	�‰”zÐ)9Ö	:Ü�l‰l˜3Ÿ5™5¡ 1 ™:Ó&ˆ÷ 
;×	:Ñ	:ús   Ä&D1Ä1D:c                  ó>  — d} t        | «      }t        | «      }t        j                  | «      }t        j                  | «      }t        j                  |«      }t        j                  |«      }|j                  dkD  sJ ‚|j                  |j                  k(  sJ ‚|j                  |j                  k7  sJ ‚|j                  |j                  k7  sJ ‚t	        j
                  d«      }t        j                  |«      }|j                  |j                  j                  k(  sJ ‚y )Nó
   some data!r   r   )rk   r3   rÆ   rÎ   rå   rí   ÚctypesrJ   )	Úb1Úb2Úb3Úbuf1rŽ   Úbuf3Úbuf4rò   r:   s	            r&   Útest_buffer_addressrý   ÷  sÚ   € à	€BÜ	�2‹€BÜ	�2‹€Bä�<‰<˜Ó€DÜ�<‰<˜Ó€DÜ�<‰<˜Ó€DÜ�<‰<˜Ó€Dà�<‰<˜!ÒÐÐØ�<‰<˜4Ÿ<™<Ò'Ð'Ð'Ø�<‰<˜4Ÿ<™<Ò'Ð'Ð'Ø�<‰<˜4Ÿ<™<Ò'Ð'Ð'ä
�)‰)�A‹,€CÜ
�,‰,�sÓ
€CØ�;‰;˜#Ÿ*™*Ÿ/™/Ò)Ð)Ñ)r-   c                  ó¼  — d„ } d„ }d}t        |«      }t        |«      }d|d<   t        j                  |«      }t        j                  |«      }t        j                  |«      }t        j                  |«      }t        j                  t        j                  |t        j
                  ¬«      «      }	 | ||«        | ||«        | ||«        |||«        | ||	«       y )Nc                 óF   — | j                  |«      sJ ‚| |k(  sJ ‚| |k7  rJ ‚y r)   ©Úequals©ÚaÚbs     r&   Úeqztest_buffer_equals.<locals>.eq  s+   € Ø�x‰x˜Œ{Ðˆ{Ø�AŠvˆˆvØ˜’FÐˆ|�Fr-   c                 óF   — | j                  |«      rJ ‚| |k(  rJ ‚| |k7  sJ ‚y r)   r   r  s     r&   Úneztest_buffer_equals.<locals>.ne  s)   € Ø—8‘8˜A”;ÐˆØ˜’FÐˆ|Ø�AŠvˆ‰vr-   rõ   rá   r   rã   )rk   r3   rÆ   rå   ræ   Úint16)
r  r  r÷   rø   rù   rú   rŽ   rû   rü   Úbuf5s
             r&   Útest_buffer_equalsr
    s°   € òò
ð
 
€BÜ	�2‹€BÜ	�2‹€BØ€B€q�EÜ�<‰<˜Ó€DÜ�<‰<˜Ó€DÜ�<‰<˜Ó€DÜ�<‰<˜Ó€DÜ�<‰<œŸ™ b´·±Ô9Ó:€DÙ€tˆT„NÙ€tˆT„NÙ€tˆT„NÙ€tˆT„Ná€tˆT…Nr-   c                  óÐ   — t        j                  d«      } | dk(  sJ ‚| t        d«      k(  sJ ‚| dk7  sJ ‚t        j                  t
        «      5  | dk(   d d d «       y # 1 sw Y   y xY w)NrÅ   s	   some dat1z	some data)r3   rÆ   rk   r   r*   r9   ©r:   s    r&   Útest_buffer_eq_bytesr  *  s_   € Ü
�,‰,�|Ó
$€CØ�,ÒÐÐØ”)˜LÓ)Ò)Ð)Ð)Ø�,ÒÐÐä	�‰”yÕ	!Øˆ{Ò÷ 
"×	!Ñ	!ús   ÁAÁA%c                  ór  — t        d«      } t        j                  | «      }t        | «      }t	        | |dz
  «      D ]  }||   | |   k(  rŒJ ‚ t        j                  t        «      5  ||    d d d «       t        j                  t        «      5  || dz
      d d d «       y # 1 sw Y   Œ5xY w# 1 sw Y   y xY w)Nrõ   rO   )rk   r3   rÆ   r5   r¼   r   r*   Ú
IndexError)rJ   r:   r]   Úixs       r&   Útest_buffer_getitemr  4  sŸ   € Ü�]Ó#€DÜ
�,‰,�tÓ
€CäˆD‹	€AÜ�Q�B˜˜A™ÖˆØ�2‰w˜$˜r™(Ó"Ð"Ð"ð ô 
�‰”zÕ	"ØˆAŠ÷ 
#ô 
�‰”zÕ	"ØˆQˆB�‰FŠ÷ 
#Ð	"÷ 
#Ð	"ú÷ 
#Ð	"ús   Á'B!Â
B-Â!B*Â-B6c                  óX  — d} t        j                  | «      }|j                  d«      }t        j                  d«      }|j                  |«      sJ ‚|j                  dd«      }t        j                  d«      }|j                  |«      sJ ‚|j                  d«      j                  |«      sJ ‚t	        |j                  t	        |«      «      «      dk(  sJ ‚t        j                  t        «      5  |j                  d«       d d d «       t        j                  t        «      5  |j                  t	        |«      dz   «       d d d «       |d	d  j                  «       d
k(  sJ ‚t        j                  t        «      5  |j                  dt	        |«      «       d d d «       |dd	 j                  «       |j                  «       dd  k(  sJ ‚t        j                  t        «      5  |j                  dd«       d d d «       |dd  j                  |j                  d«      «      sJ ‚|dd j                  |j                  dd«      «      sJ ‚|dd  j                  |j                  t	        |«      dz
  «      «      sJ ‚|dd j                  |j                  t	        |«      dz
  d«      «      sJ ‚t        j                  t        «      5  |d d d…    d d d «       t        j                  t        «      5  |d d d…    d d d «       t	        |«      }t        | dz  |dz  «      D ]C  }t        | dz  |dz  «      D ]+  }||| j                  «       |j                  «       || k(  rŒ+J ‚ ŒE y # 1 sw Y   �ŒbxY w# 1 sw Y   �Œ0x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)Nrõ   rT   s   me data!rE   s   me dr   rN   rO   rI   r-   r   r`   éûÿÿÿéþÿÿÿ)
r3   rÆ   Úslicer  r5   r   r*   r  r¢   r¼   )	rJ   r:   Úslicedr=   Úsliced2Ú	expected2r]   r[   Ústops	            r&   Útest_buffer_slicingr  C  sô  € Ø€DÜ
�,‰,�tÓ
€Cà�Y‰Y�q‹\€FÜ�|‰|˜KÓ(€HØ�=‰=˜Ô"Ð"Ð"à�i‰i˜˜1‹o€GÜ—‘˜WÓ%€IØ�>‰>˜)Ô$Ð$Ð$ð �9‰9�Q‹<×Ñ˜sÔ#Ð#Ð#ô ˆs�y‰yœ˜S›Ó"Ó# qÒ(Ð(Ð(ä	�‰”zÕ	"Ø�	‰	�"Œ÷ 
#ô 
�‰”zÕ	"Ø�	‰	”#�c“(˜Q‘,Ô÷ 
#àˆrˆsˆ8×ÑÓ  CÒ'Ð'Ð'ô 
�‰”zÕ	"Ø�	‰	�!”S˜“XÔ÷ 
#àˆq�ˆ9×ÑÓ! S§^¡^Ó%5°a°bÐ%9Ò9Ð9Ð9ô 
�‰”zÕ	"Ø�	‰	�!�RÔ÷ 
#ð ˆqˆrˆ7�>‰>˜#Ÿ)™) A›,Ô'Ð'Ð'Øˆq�ˆ8�?‰?˜3Ÿ9™9 Q¨›?Ô+Ð+Ð+Øˆrˆsˆ8�?‰?˜3Ÿ9™9¤S¨£X°¡\Ó2Ô3Ð3Ð3Øˆr�"ˆ:×Ñ˜SŸY™Y¤s¨3£x°!¡|°QÓ7Ô8Ð8Ð8ä	�‰”zÕ	"Ø‰DˆbˆDŠ	÷ 
#ä	�‰”zÕ	"Ø‰CˆaˆCŠ÷ 
#ô 	ˆC‹€AÜ˜�r˜A‘v˜q 1™uÖ%ˆÜ˜1˜"˜q™& ! a¡%Ö(ˆDØ�u˜T�?×-Ñ-Ó/°3·>±>Ó3CÀEÈ$Ð3OÓOÐOÐOñ )ñ &÷9 
#Ñ	"ú÷ 
#Ñ	"ú÷
 
#Ñ	"ú÷
 
#Ñ	"ú÷ 
#Ð	"úç	"Ð	"úsH   Ã.M Ä!M-Å8M:ÇNË 	NË*	N Í M*Í-M7Í:NÎNÎNÎ N)c                  ó    — t        j                  t        d¬«      5  t        t	        j
                  d«      «       d d d «       y # 1 sw Y   y xY w)NÚ
unhashabler1   s   123)r   r*   r9   Úhashr3   rÆ   r,   r-   r&   Útest_buffer_hashingr  v  s-   € ä	�‰”y¨Ö	5ÜŒR�\‰\˜&Ó!Ô"÷ 
6×	5Ñ	5ús   œAÁAc                  ó¬   — d} t        j                  | «      }t        j                  |t        j                  ¬«      }|j
                  j                  rJ ‚y )Ns   12345rã   )r3   rÆ   rå   ræ   râ   ÚflagsÚ	writeable)r  Ú	arrow_refÚ	numpy_refs      r&   Ú*test_buffer_protocol_respects_immutabilityr$  |  s@   € ð 	€AÜ—‘˜Q“€IÜ—‘˜i¬r¯x©xÔ8€IØ�‰×(Ò(Ð(Ð(Ð(r-   c                  ó‚  — t        j                  ddgt         j                  ¬«      } | j                  d   d   }| j                  }t        j                  ||| «      }t        j                  | «      }~ t        j                  |t         j                  ¬«      j                  «       ddgk(  sJ ‚ |«       €J ‚~ |«       �J ‚y )NrO   rT   rã   rJ   r   )rå   ré   Úint32Ú__array_interface__rM   r3   rÏ   rµ   r¶   ræ   Útolist)ÚobjÚaddrr   r:   r·   s        r&   Útest_foreign_bufferr+  ˆ  s¤   € ä
�(‰(�A�q�6¤§¡Ô
*€CØ×"Ñ" 6Ñ*¨1Ñ-€DØ�:‰:€DÜ
×
Ñ
˜D $¨Ó
,€CÜ	�‰�SÓ	€BØÜ�=‰=˜¤B§H¡HÔ-×4Ñ4Ó6¸1¸a¸&Ò@Ð@Ð@Ù‹4ÐÐÐØÙ‹4ˆ<Ð‰<r-   c                  ó  — t        j                  d«      } | j                  dk(  sJ ‚| j                  sJ ‚| j                  �J ‚d}t        j
                  | «      }|j                  |«       | j                  «       d d |k(  sJ ‚y )NrP   s   abcder   )r3   Úallocate_bufferr   rÀ   r£   ÚFixedSizeBufferWriterr   r¢   )r:   ÚbitÚwriters      r&   Útest_allocate_bufferr1  –  s{   € Ü
×
Ñ
˜SÓ
!€CØ�8‰8�sŠ?Ðˆ?Ø�>Š>Ðˆ>Ø�:‰:ÐÐÐà
€CÜ×%Ñ% cÓ*€FØ
‡L�L�Ôà�>‰>Ó˜B˜QÐ 3Ò&Ð&Ñ&r-   c                  ó®   — t        j                  dd¬«      } t        | t         j                  «      sJ ‚| j	                  d«       | j
                  dk(  sJ ‚y )NrP   T)Ú	resizableéÈ   )r3   r-  r‰   ÚResizableBufferÚresizer   r  s    r&   Útest_allocate_buffer_resizabler7  £  sE   € Ü
×
Ñ
˜S¨DÔ
1€CÜ�cœ2×-Ñ-Ô.Ð.Ð.à‡J�Jˆs„OØ�8‰8�sŠ?Ð‰?r-   c                 ób	  — t        j                  dt        ¬«      }|j                  d«      }t	        j
                  dg«      }|j                  |«      }t        j                  j                  t        j                  d«      dd |g«      }|j                  «       d   }|j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  sJ ‚d}d}|t!        |«      v sJ ‚|t!        |«      v sJ ‚|j#                  d	«      }	|j$                  j'                  |	«      }
|
j)                  «       d
k(  sJ ‚|d	d }	|j$                  j'                  |	«      }
|
j)                  «       dk(  sJ ‚|	j+                  |d	d «      sJ ‚d}t        j,                  t.        |¬«      5  |j+                  t        j0                  |«      «       d d d «       d}t	        j
                  d
g«      }|j                  |«      }t        j,                  t2        |¬«      5  |	j+                  |«       d d d «       t        j                  j                  t        j                  d«      dd |g«      }|j                  «       d   }t        j,                  t2        |¬«      5  |	j+                  |«       d d d «       t        j,                  t2        |¬«      5  |j5                  «        d d d «       t        j,                  t2        |¬«      5  |j5                  «        d d d «       t        j,                  t2        |¬«      5  |d    d d d «       t        j,                  t2        |¬«      5  |j)                  «        d d d «       t        j,                  t2        |¬«      5  | j7                  |d¬«       d d d «       t        j,                  t2        |¬«      5  | j7                  |d¬«       d d d «       t        j,                  t2        |¬«      5  t9        |«       d d d «       y # 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   �Œ9x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)Nzpyarrow.cuda)Úexc_typer   s   testingé   rO   z<pyarrow.Buffer address=z$size=7 is_cpu=False is_mutable=True>rT   s   stingrE   s   stz8Device on which the data resides differs between buffersr1   z'Implemented only for data on CPU devicer   rº   )r   ÚimportorskipÚImportErrorÚContextrå   ré   Úbuffer_from_datar3   ÚFixedSizeBinaryArrayÚfrom_buffersÚbinaryÚbuffersr   rÎ   rÈ   rÀ   Úreprr  Ú
CudaBufferÚfrom_bufferr¢   r  r*   rñ   rÆ   ÚNotImplementedErrorrÜ   r¿   r|   )rÊ   ÚcudaÚctxrJ   Úcuda_bufrò   Ú
buf_on_gpuÚrepr1Úrepr2Úbuf_on_gpu_slicedÚcuda_slicedÚ
msg_deviceÚmsgÚ	arr_shortÚcuda_buf_shortÚbuf_on_gpu_shorts                   r&   Útest_non_cpu_bufferrT  «  sº  € ä×Ñ˜~¼ÔD€DØ
�,‰,�q‹/€Cä�8‰8�Z�LÓ!€DØ×#Ñ# DÓ)€HÜ
×
!Ñ
!×
.Ñ
.¬r¯y©y¸«|¸QÀÀxÐ@PÓ
Q€CØ—‘“˜qÑ!€Jà�?‰?˜hŸm™mÒ+Ð+Ð+Ø×Ñ ×!1Ñ!1Ò1Ð1Ð1Ø×Ñ §¡Ò/Ð/Ð/Ø× Ò Ð Ð à&€EØ2€EØ”D˜Ó$Ñ$Ð$Ð$Ø”D˜Ó$Ñ$Ð$Ð$à"×(Ñ(¨Ó+ÐØ—/‘/×-Ñ-Ð.?Ó@€KØ×!Ñ!Ó# xÒ/Ð/Ð/à" 1 Q˜ÐØ—/‘/×-Ñ-Ð.?Ó@€KØ×!Ñ!Ó# uÒ,Ð,Ð,ð ×#Ñ# H¨Q¨q MÔ2Ð2Ð2ð L€JÜ	�‰”z¨Ö	4Ø×Ñœ"Ÿ,™, tÓ,Ô-÷ 
5ð 4€Cä—‘˜(˜Ó$€IØ×)Ñ)¨)Ó4€NÜ	�‰Ô*°#Ö	6Ø× Ñ  Ô0÷ 
7ä×'Ñ'×4Ñ4Ü
�	‰	�!‹�a˜$ Ð/ó€Ið !×(Ñ(Ó*¨1Ñ-ÐÜ	�‰Ô*°#Ö	6Ø× Ñ Ð!1Ô2÷ 
7ô 
�‰Ô*°#Ö	6Ø�‰Ô÷ 
7ô 
�‰Ô*°#Ö	6Ø�‰Œ÷ 
7ô 
�‰Ô*°#Ö	6Ø�1Š÷ 
7ô 
�‰Ô*°#Ö	6Ø×ÑÔ÷ 
7ô 
�‰Ô*°#Ö	6Ø×Ñ˜J°ÐÔ3÷ 
7ô 
�‰Ô*°#Ö	6Ø×Ñ˜H¨qÐÔ1÷ 
7ô 
�‰Ô*°#Ö	6Ü�:Ô÷ 
7Ð	6÷E 
5Ñ	4ú÷ 
7Ñ	6ú÷ 
7Ñ	6ú÷ 
7Ñ	6ú÷ 
7Ñ	6ú÷ 
7Ñ	6ú÷ 
7Ð	6ú÷ 
7Ð	6ú÷ 
7Ð	6ú÷ 
7Ð	6úsx   Ç%P3È8Q Ê6QË+QÌQ'ÍQ4Í<RÎ0RÏ'RÐR%Ð3P=Ñ Q
ÑQÑQ$Ñ'Q1Ñ4Q>ÒR
ÒRÒR"Ò%R.c                  ó>  — t        j                  «       } t        j                  d¬«      }t        j                  dd¬«      }t        j                  ddd¬«      }t        j                  ddd¬	«      }t         j                  j                  d
ddd¬«      }| j                  dk(  sJ ‚| j                  dk(  sJ ‚| j
                  du sJ ‚| j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j
                  du sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j
                  du sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j
                  du sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚|j
                  du sJ ‚|j                  dk(  sJ ‚|j
                  du sJ ‚| | k(  sJ ‚| |k7  sJ ‚||k7  sJ ‚||k7  sJ ‚||k7  sJ ‚|| k7  sJ ‚y )Né   )Úhole_size_limité   é    )rW  Úrange_size_limitr   )rW  rZ  Úprefetch_limitF)rW  rZ  ÚlazyrP   r4  gÍÌÌÌÌÌì?é@   )Útime_to_first_byte_millisÚtransfer_bandwidth_mib_per_secÚ ideal_bandwidth_utilization_fracÚmax_ideal_request_size_mibi   Tr   )r3   ÚCacheOptionsÚfrom_network_metricsrW  rZ  r\  r[  )Úopts1Úopts2Úopts3Úopts4Úopts5Úopts6s         r&   Útest_cache_optionsrj  ò  s`  € Ü�O‰OÓ€EÜ�O‰O¨DÔ1€EÜ�O‰O¨DÀ4ÔH€EÜ�O‰O¨DØ-1À!ôE€Eä�O‰O¨DØ-1¸ô?€Eä�O‰O×0Ñ0È3ØPSØRUØLNð 1ó P€Eð
 × Ñ  DÒ(Ð(Ð(Ø×!Ñ!Ð%5Ò5Ð5Ð5Ø�:‰:˜ÑÐÐØ×Ñ 1Ò$Ð$Ð$à× Ñ  DÒ(Ð(Ð(Ø×!Ñ!Ð%5Ò5Ð5Ð5Ø�:‰:˜ÑÐÐØ×Ñ 1Ò$Ð$Ð$à× Ñ  DÒ(Ð(Ð(Ø×!Ñ! TÒ)Ð)Ð)Ø�:‰:˜ÑÐÐØ×Ñ 1Ò$Ð$Ð$à× Ñ  DÒ(Ð(Ð(Ø×!Ñ! TÒ)Ð)Ð)Ø�:‰:˜ÑÐÐØ×Ñ 1Ò$Ð$Ð$à× Ñ  DÒ(Ð(Ð(Ø×!Ñ! TÒ)Ð)Ð)Ø�:‰:˜ÑÐÐØ×Ñ 1Ò$Ð$Ð$à�:‰:˜ÑÐÐà�EŠ>Ðˆ>Ø�EŠ>Ðˆ>Ø�EŠ>Ðˆ>Ø�EŠ>Ðˆ>Ø�EŠ>Ðˆ>Ø�EŠ>Ð‰>r-   c                 ó¶   — t        j                  «       t        j                  dddd¬«      g}|D ]'  }| j                  | j                  |«      «      |k(  rŒ'J ‚ y )NrX  rY  Tr   )rW  rZ  r\  r[  )r3   rb  r¾   r¿   )rÊ   ÚoptionsÚoptions      r&   Útest_cache_options_picklingrn  "  sX   € ä
�‰ÓÜ
�‰¨¸tØ!°!ô	5ð€Gó ˆØ×"Ñ" =×#6Ñ#6°vÓ#>Ó?À6ÓIÐIÐIñ r-   ÚcompressionÚbz2)r*   )ÚmarksÚbrotliÚgzipÚlz4ÚzstdÚsnappyc                 óì  — t        j                  | «      st        j                  | › d�«       d}t        j
                  j                  dd|¬«      j                  t        j                  «      j                  «       }t        j                  |«      }t        j                  || ¬«      }t        j                  || d¬«      }t        |t        «      sJ ‚t        j                  ||| ¬«      }t        j                  ||| d¬«      }t        |t        «      sJ ‚|j!                  |«      sJ ‚||k(  sJ ‚t        j"                  t$        «      5  t        j                  || ¬«       d d d «       y # 1 sw Y   y xY w)	Nú support is not builté'  r   éÿ   ©r   )ÚcodecT)r|  Úasbytes)r
   Úis_availabler   r   rå   ÚrandomÚrandintÚastyperâ   r„   r3   rÆ   Úcompressr‰   ÚbytesÚ
decompressr  r*   rñ   )ro  Ú
INPUT_SIZEÚ	test_dataÚtest_bufÚcompressed_bufÚcompressed_bytesÚdecompressed_bufÚdecompressed_bytess           r&   Útest_compress_decompressrŒ  -  s3  € ô ×Ñ˜kÔ*Ü�‰�{�mÐ#8Ð9Ô:à€JÜ—‘×"Ñ" 1 c°
Ð"Ó;ß‘&œŸ™Ó"ß‘'“)ð ô �|‰|˜IÓ&€Hä—[‘[ °Ô=€NÜ—{‘{ 9°KØ+/ô1Ðô Ð&¬Ô.Ð.Ð.ä—}‘} ^°ZØ+6ô8ÐäŸ™Ð'7¸Ø-8À$ôHÐô Ð(¬%Ô0Ð0Ð0à×"Ñ" 8Ô,Ð,Ð,Ø Ò*Ð*Ð*ä	�‰”zÕ	"Ü
�‰Ð&¨kÕ:÷ 
#×	"Ñ	"ús   Å	E*Å*E3c                 ó*  — t        j                  | «      st        j                  | › d�«       t        | «      }|j                  dk(  r|j
                  �J ‚t        |j
                  t        «      sJ ‚dg}| |v rët        j                  | «      rJ ‚t        j                  t        «      5  t        | d«       d d d «       t        j                  t        «      5  t        j                  | «       d d d «       t        j                  t        «      5  t        j                  | «       d d d «       t        j                  t        «      5  t        j                  | «       d d d «       y d}t        j                  j!                  dd|¬«      j#                  t        j$                  «      j'                  «       }t)        j*                  |«      }t        j                  | «      }t        j                  | «      }t        j                  | «      }||k  sJ ‚||k\  sJ ‚||k  sJ ‚t-        ||dz   «      D ]É  }	t        | |	«      }|j/                  |«      }
|j/                  |d¬	«      }t        |t0        «      sJ ‚|j3                  |
|«      }|j3                  ||d¬	«      }t        |t0        «      sJ ‚|j5                  |«      sJ ‚||k(  sJ ‚t        j                  t        «      5  |j3                  |«       d d d «       ŒË t7        t        j                  d
«      st        j                  d«       t        j                  j9                  d¬«      }|j;                  ddd«      }t)        j<                  |«      }|j?                  «       d   }t        | |«      }|j/                  |«      }t        | |«      }|j/                  |«      }tA        |«      tA        |«      kD  sJ ‚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   y xY w# 1 sw Y   �ŒçxY w)Nrx  rv  r   ry  rz  r{  rO   T)r}  Údefault_rngzRequires newer version of numpyrá   )ÚseedrP   r�   )!r
   r~  r   r   ÚnameÚcompression_levelr‰   ÚintÚsupports_compression_levelr*   rñ   Úminimum_compression_levelÚmaximum_compression_levelÚdefault_compression_levelrå   r  r€  r�  râ   r„   r3   rÆ   r¼   r‚  rƒ  r„  r  ÚhasattrrŽ  Úintegersré   rB  r5   )ro  r|  Úno_levelr…  r†  r‡  Ú	min_levelÚ	max_levelÚdefault_levelr‘  rˆ  r‰  rŠ  r‹  ÚrngÚvaluesrò   Úhard_to_compress_bufferÚ
weak_codecÚweakly_compressed_bufÚstrong_codecÚstrongly_compressed_bufs                         r&   Útest_compression_levelr¤  V  sg  € ô ×Ñ˜kÔ*Ü�‰�{�mÐ#8Ð9Ô:ä�+Ó€EØ‡z�z�XÒØ×&Ñ&Ð.Ð.Ð.ä˜%×1Ñ1´3Ô7Ð7Ð7ð ˆz€HØ�hÑÜ×3Ñ3°KÔ@Ð@Ð@Ü�]‰]œ:Õ&Ü�+˜qÔ!÷ 'ä�]‰]œ:Õ&Ü×+Ñ+¨KÔ8÷ 'ä�]‰]œ:Õ&Ü×+Ñ+¨KÔ8÷ 'ä�]‰]œ:Õ&Ü×+Ñ+¨KÔ8÷ 'àà€JÜ—‘×"Ñ" 1 c°
Ð"Ó;ß‘&œŸ™Ó"ß‘'“)ð ô �|‰|˜IÓ&€Hä×/Ñ/°Ó<€IÜ×/Ñ/°Ó<€IÜ×3Ñ3°KÓ@€Mà�yÒ Ð Ð Ø˜IÒ%Ð%Ð%Ø˜IÒ%Ð%Ð%ä" 9¨i¸©kÖ:ÐÜ�kÐ#4Ó5ˆØŸ™¨Ó1ˆØ Ÿ>™>¨)¸T˜>ÓBÐÜÐ*¬EÔ2Ð2Ð2Ø ×+Ñ+¨N¸JÓGÐØ"×-Ñ-Ð.>À
Ø6:ð .ó <Ðô Ð,¬eÔ4Ð4Ð4à×&Ñ& xÔ0Ð0Ð0Ø! YÒ.Ð.Ð.ä�]‰]œ:Õ&Ø×ÑÐ-Ô.÷ 'Ð&ð ;ô2 ”2—9‘9˜mÔ,Ü�‰Ð5Ô6Ü
�)‰)×
Ñ
 RÐ
Ó
(€CØ�\‰\˜!˜S $Ó'€FÜ
�(‰(�6Ó
€CØ!Ÿk™k›m¨AÑ.Ðä�{ IÓ.€JØ&×/Ñ/Ð0GÓHÐä˜ iÓ0€LØ*×3Ñ3Ð4KÓLÐäÐ$Ó%¬Ð,CÓ(DÒDÐDÑD÷} 'Ñ&úç&Ñ&úç&Ñ&úç&àú÷< 'Ñ&ús<   Â)OÃO"ÄO/ÅO<ËPÏOÏ"O,Ï/O9Ï<PÐP	c                  ó  — d} t        j                  | «      }|j                  rJ ‚t        |t         j                  «      sJ ‚t        |«      }|j                  sJ ‚t        j                  t        «      5 }d|d<   dt        |j                  «      v sJ ‚	 d d d «       t        |«      }t        j                  t        «      5 }d|d<   dt        |j                  «      v sJ ‚	 d d d «       y # 1 sw Y   ŒVxY w# 1 sw Y   y xY w)NrÅ   ó   hr   zcannot modify read-only)r3   rÆ   rÀ   r‰   rÇ   r|   Úreadonlyr   r*   r9   r©   Úvaluerƒ  )rË   r:   r>   Úexcr  s        r&   Ú#test_buffer_memoryview_is_immutablerª  °  sÏ   € Ø
€Cä
�,‰,�sÓ
€CØ�~Š~ÐÐÜ�cœ2Ÿ9™9Ô%Ð%Ð%ä˜‹_€FØ�?Š?Ðˆ?ä	�‰”yÔ	! SØˆˆq‰	Ø(¬C°·	±	«NÑ:Ð:Ñ:÷ 
"ô 	ˆc‹
€AÜ	�‰”yÔ	! SØˆˆ!‰Ø(¬C°·	±	«NÑ:Ð:Ñ:÷ 
"Ð	!÷ 
"Ð	!ú÷
 
"Ð	!ús   Á4C)Ã C5Ã)C2Ã5C>c                  óˆ   — t        j                  t        «      5  t        j                  «        d d d «       y # 1 sw Y   y xY wr)   )r   r*   r9   r3   rÇ   r,   r-   r&   Útest_uninitialized_bufferr¬  Ä  s%   € ô 
�‰”yÕ	!Ü
�	‰	Œ÷ 
"×	!Ñ	!ús	   š8¸Ac                  óþ   — d} t        j                  «       }d}t        |«      D ]  }|j                  | «       Œ |j	                  «       }t        |«      t        | «      |z  k(  sJ ‚|j                  «       | |z  k(  sJ ‚y )Nó
   dataabcdefr�   )r3   ÚBufferOutputStreamr¼   r   r6   r5   r¢   )rË   r%   ÚKÚir:   s        r&   Útest_memory_output_streamr²  Ë  ss   € à
€CÜ
×ÑÓ€Aà€AÜ�1ŽXˆØ	�‰��ð ð �*‰*‹,€CÜˆs‹8”s˜3“x !‘|Ò#Ð#Ð#Ø�>‰>Ó˜s Q™wÒ&Ð&Ñ&r-   c                  ó$  — t        j                  «       } | j                  d«       | j                  rJ ‚| j	                  «        | j                  sJ ‚t        j                  t        «      5  | j                  d«       d d d «       y # 1 sw Y   y xY w)Nó   oks   not ok)r3   r¯  r   r7   r6   r   r*   rñ   rŠ   s    r&   Ú test_inmemory_write_after_closedrµ  Ù  s_   € Ü
×ÑÓ€AØ‡G�GˆE„NØ�xŠxÐˆ<Ø‡J�J„LØ�8Š8€Oˆ8ä	�‰”zÕ	"Ø	�‰�	Ô÷ 
#×	"Ñ	"ús   Á+BÂBc                  ó
  — d„ }  | d«      }t        j                  «        |dk(  sJ ‚d}t        j                  |«      }t	        d«      D ]
  } | |«       Œ t        j                  «        |t        j                  |«      k(  sJ ‚y )Nc                 ó>   — t        t        j                  | «      «      S r)   )rk   r3   rÆ   )Ú	bytes_objs    r&   Úmake_bufferz6test_buffer_protocol_ref_counting.<locals>.make_bufferå  s   € ÜœŸ™ iÓ0Ó1Ð1r-   ó   foorj   )r    r¡   r   Úgetrefcountr¼   )r¹  r:   rË   Úrefcount_beforer±  s        r&   Ú!test_buffer_protocol_ref_countingr½  ä  ss   € ò2ñ �fÓ
€CÜ‡J�J„LØ�&Š=Ðˆ=ð €CÜ—o‘o cÓ*€OÜ�2ŽYˆÙ�CÕð ä‡J�J„LØœcŸo™o¨cÓ2Ò2Ð2Ñ2r-   c                  óè  — t        j                  «       } d}t        j                  |d¬«      }| j	                  |«       | j	                  t        |«      «       | j	                  t        j                  |«      «       t        j                  t        «      5  | j	                  |j                  d«      «       d d d «       | j                  «       }|j                  «       |dz  k(  sJ ‚y # 1 sw Y   Œ2xY w)Nr´  ÚS1rã   Úutf8r`   )r3   r¯  rå   ræ   r   rk   rÆ   r   r*   r9   Údecoder6   r¢   )r%   rJ   rò   r:   s       r&   Ú test_nativefile_write_memoryviewrÂ  õ  sª   € ä
×ÑÓ€AØ€Dä
�-‰-˜ DÔ
)€Cà‡G�GˆC„LØ‡G�GŒI�d‹OÔØ‡G�GŒB�L‰L˜ÓÔÜ	�‰”yÕ	!Ø	�‰�—‘˜FÓ#Ô$÷ 
"ð �*‰*‹,€Cà�>‰>Ó˜t a™xÒ'Ð'Ñ'÷ 
"Ð	!ús   Â!C(Ã(C1c                  ó2  — d} t        j                  «       }t        j                  «       }d}t        |«      D ]$  }|j	                  | «       |j	                  | «       Œ& |j                  «       t        |j                  «       «      k(  sJ ‚t         j                  j                  t        j                  g d¢«      gdg«      }t        j                  «       }t        j                  «       }t        j                  ||j                  «      }t        j                  ||j                  «      }|j                  |«       |j                  |«       |j                  «        |j                  «        |j                  «       t        |j                  «       «      k(  sJ ‚y )Nr®  r�   )rO   rT   r`   r  )r3   ÚMockOutputStreamr¯  r¼   r   r   r5   r6   ÚRecordBatchÚfrom_arraysré   ÚRecordBatchStreamWriterÚschemaÚwrite_batchr8   )rË   Úf1Úf2r°  r±  Úrecord_batchÚstream_writer1Ústream_writer2s           r&   Útest_mock_output_streamrÏ    s4  € ð
 €Cä	×	Ñ	Ó	€BÜ	×	Ñ	Ó	 €Bà€AÜ�1ŽXˆØ
�‰�ŒØ
�‰��ð ð �7‰7‹9œ˜BŸK™K›MÓ*Ò*Ð*Ð*ô —>‘>×-Ñ-¬r¯x©xº	Ó/BÐ.CÀcÀUÓK€Lä	×	Ñ	Ó	€BÜ	×	Ñ	Ó	 €Bä×/Ñ/°°L×4GÑ4GÓH€NÜ×/Ñ/°°L×4GÑ4GÓH€Nà×Ñ˜|Ô,Ø×Ñ˜|Ô,Ø×ÑÔØ×ÑÔà�7‰7‹9œ˜BŸK™K›MÓ*Ò*Ð*Ñ*r-   c                 ó€  ‡— d}t        |«      D �cg c]  }t        j                  dd«      ‘Œ }}t        |d | «      }t        j
                  j                  t        |«      t        «       «      Št        ‰d«      5 }|j                  |«       d d d «       ˆfd„}| j                  |«       ‰|fS c c}w # 1 sw Y   Œ(xY w)NrX  r   rz  r   c                  ó   •— t        ‰ «       y r)   )Ú_try_delete©r§   s   €r&   Úteardownz"sample_disk_data.<locals>.teardown<  s   ø€ Ü�DÕr-   )r¼   r  r€  rƒ  r    r§   r¨   r©   r	   r   r   Úaddfinalizer)	Úrequestr¬   ÚSIZEÚ_rò   rJ   r%   rÔ  r§   s	           @r&   Úsample_disk_datarÙ  1  sž   ø€ à€DÜ+0°¬;Ó
7©; aŒ6�>‰>˜!˜SÕ!¨;€CÐ
7Ü��U�d�Ó€Dä�7‰7�<‰<œ˜F›¤T£VÓ,€Dä	ˆd�DÔ	˜QØ	�‰�Œ÷ 
ôð ×Ñ˜Ô"Ø�ˆ:Ðùò 8÷
 
Ð	ús   ‘B/Á;B4Â4B=c                 ó>  — |\  }} | |d¬«      }|j                  d«      |d d k(  sJ ‚|j                  d«      dk(  sJ ‚|j                  «       dk(  sJ ‚|j                  «       |dd  k(  sJ ‚|j                  «       t        |«      k(  sJ ‚|j	                  d«       |j                  «       dk(  sJ ‚|rT|j	                  t        |«      dz   «       |j                  «       t        |«      dz   k(  sJ ‚|j                  d«      dk(  sJ ‚|j	                  d«      dk(  sJ ‚|j	                  dt
        j                  «      d	k(  sJ ‚|j                  «       d	k(  sJ ‚t        |«      d
z
  }|j	                  dt
        j                  «      |k(  sJ ‚|j                  «       |k(  sJ ‚y )NrB   rC   rj   r   r-   rO   r   r`   rS   rT   r  )r   r   r   r5   r   r    ÚSEEK_CURÚSEEK_END)ÚFACTORYÚsample_dataÚallow_read_out_of_boundsr§   rJ   r%   Ú	ex_lengths          r&   Ú_check_native_file_readerrá  C  sx  € à�J€Dˆ$á�˜3Ô€Aà�6‰6�"‹:˜˜c˜r˜Ò"Ð"Ð"Ø�6‰6�!‹9˜ÒÐÐØ�6‰6‹8�rŠ>Ðˆ>à�6‰6‹8�t˜B˜C�yÒ Ð Ð à�6‰6‹8”s˜4“yÒ Ð Ð à‡F�Fˆ1„IØ�6‰6‹8�qŠ=Ðˆ=ñ  Ø	�‰Œs�4‹y˜1‰}ÔØ�v‰v‹xœ3˜t›9 q™=Ò(Ð(Ð(Ø�v‰v�a‹y˜CÒÐÐð �6‰6�!‹9˜Š>Ðˆ>Ø�6‰6�!”R—[‘[Ó! QÒ&Ð&Ð&Ø�6‰6‹8�qŠ=Ðˆ=ä�D“	˜A‘€IØ�6‰6�"”b—k‘kÓ" iÒ/Ð/Ð/Ø�6‰6‹8�yÒ Ð Ñ r-   c                 ó<   — t        t        j                  | d¬«       y )NF)rß  )rá  r3   Ú
memory_map©rÙ  s    r&   Útest_memory_map_readerrå  d  s   € ÜœbŸm™mÐ-=Ø7<ö>r-   c                 ó¬  — | \  }}g }t        j                  |d«      5 }|j                  |j                  d«      |d d f«       |j                  |j                  d«      |dd f«       |j                  |j                  d«      |dd f«       d d d «       t	        j
                  «        |D ]  \  }}|j                  «       |k(  rŒJ ‚ y # 1 sw Y   Œ=xY w)Nr“   rP   r4  i,  )r3   rã  Úappendr}   r    r¡   r¢   )rÙ  r§   rJ   Úcasesr%   r:   r=   s          r&   Ú'test_memory_map_retain_buffer_referenceré  i  s¼   € Ø!�J€Dˆ$à€EÜ	�‰�t˜TÔ	" aØ�‰�a—m‘m CÓ(¨$¨t°¨*Ð5Ô6Ø�‰�a—m‘m CÓ(¨$¨s°3¨-Ð8Ô9Ø�‰�a—m‘m CÓ(¨$¨s°3¨-Ð8Ô9÷ 
#ô ‡J�J„Lã‰ˆˆXØ�~‰~Ó 8Ó+Ð+Ð+ñ ÷ 
#Ð	"ús   žA0C
Ã
Cc                 ó8   — t        t        j                  | «       y r)   )rá  r3   ÚOSFilerä  s    r&   Útest_os_file_readerrì  y  s   € ÜœbŸi™iÐ)9Õ:r-   c                  ó6   — t        t        j                  «       y r)   )r'   r3   rë  r,   r-   r&   Útest_os_file_large_seeksrî  }  s   € Ü”b—i‘iÕ r-   c                 ób   — 	 t        j                  | «       y # t         j                  $ r Y y w xY wr)   )r    ÚremoveÚerrorrÓ  s    r&   rÒ  rÒ  �  s(   € ðÜ
�	‰	�$�øÜ�8‰8ò Ùðús   ‚ ˜.­.c                 ó  — t         j                  dk(  rt        j                  d«       d}t	        |«      D �cg c]  }t        j                  dd«      ‘Œ }}t        |d | «      }t        j                  j                  t        | «      t        «       «      }t        |d«      5 }|j                  |«       d d d «       t        j                   |d¬«      }|j#                  d	«       |j                  d
«       |j%                  «       dk(  sJ ‚|j#                  d	«       |j'                  d«      d
k(  sJ ‚t        j                   |d¬«      }|j#                  d	«       |j                  d«       |j#                  d	«       |j#                  d	«       |j'                  d«      dk(  sJ ‚t        j                   |d¬«      }|j                  d«       t        j                   |«      5 }	|	j)                  «       |k(  sJ ‚	 d d d «       t        j*                  t,        «      5  |j'                  d«       d d d «       |j#                  d«       |j'                  d«      dk(  sJ ‚y c c}w # 1 sw Y   �Œ¬xY w# 1 sw Y   ŒvxY w# 1 sw Y   ŒOxY w)Nr   z:Multiple memory maps to same file don't work on emscriptenrX  r   rz  r   úr+brC   rj   s   peekabooé   é   s   booapeakrd   rº  r   r`   )r   r   r   Úxfailr¼   r  r€  rƒ  r    r§   r¨   r©   r	   r   r   r3   rã  r   r   r   r   r*   ÚIOError)
r¬   r×  rØ  rò   rJ   r§   r%   rË  Úf3Úf4s
             r&   Útest_memory_map_writerrú  ˆ  sß  € Ü
‡|�|�|Ò#Ü�‰ÐQÔRØ€DÜ+0°¬;Ó
7©; aŒ6�>‰>˜!˜SÕ!¨;€CÐ
7Ü��U�d�Ó€Dä�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	ˆd�DÔ	˜QØ	�‰�Œ÷ 
ô 	�‰�d Ô'€Aà‡F�Fˆ2„JØ‡G�GˆKÔØ�6‰6‹8�rŠ>Ðˆ>à‡F�Fˆ2„JØ�6‰6�!‹9˜Ò#Ð#Ð#ä	�‰�t %Ô	(€Bà‡G�GˆB„KØ‡H�Hˆ[ÔØ‡G�GˆB„Kà‡F�Fˆ2„JØ�6‰6�!‹9˜Ò#Ð#Ð#ô 
�‰�t #Ô	&€BØ‡H�HˆVÔä	�‰�tÔ	 Ø�w‰w‹y˜DÒ Ð Ñ ÷ 
ô 
�‰”wÕ	Ø
�‰�Œ
÷ 
 ð ‡F�Fˆ1„IØ�6‰6�!‹9˜ÒÐÑùòI 8÷ 
Ñ	ú÷2 
Ð	ú÷ 
 Ð	ús)   ¸IÂ"IÇI+ÈI7ÉI(É+I4É7J c                 óN  — d}t        |«      D �cg c]  }t        j                  dd«      ‘Œ }}t        |d |dz   «      }t        ||dz  d  «      }t        j
                  j                  t        | «      t        «       «      }t        j                  ||dz  «      }|j                  |«       |j                  |«       |j                  |«       |j                  «        t        |d«      5 }|j                  «       t        |d | «      k(  sJ ‚	 d d d «       y c c}w # 1 sw Y   y xY w)NrX  r   rz  rT   r“   )r¼   r  r€  rƒ  r    r§   r¨   r©   r	   r3   Úcreate_memory_mapr   r6  r8   r   r   )	r¬   r×  rØ  rò   Údata1Údata2r§   Úmmapr%   s	            r&   Útest_memory_map_resizer   ³  sò   € Ø€DÜ+0°¬;Ó
7©; aŒ6�>‰>˜!˜SÕ!¨;€CÐ
7Ü�#�l˜ ™	Ð#Ó$€EÜ�#�t˜q‘y�lÐ#Ó$€Eä�7‰7�<‰<œ˜F›¤T£VÓ,€Dä×Ñ  d¨Q¡hÓ/€DØ‡J�JˆuÔà‡K�K�ÔØ‡J�JˆuÔà‡J�J„Lä	ˆd�DÔ	˜QØ�v‰v‹xœ5  U d Ó,Ò,Ð,Ñ,÷ 
Ð	ùò 8÷ 
Ð	ús   �DÃ*"DÄD$c                 ó"  — t         j                  j                  t        | «      t	        «       «      }t        |d«      }|j                  «        t        j                  |d¬«      5 }|j                  «       dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr   ró  rC   r   )
r    r§   r¨   r©   r	   r   r8   r3   rã  r   )r¬   r§   r%   rã  s       r&   Útest_memory_zero_lengthr  Ç  sb   € Ü�7‰7�<‰<œ˜F›¤T£VÓ,€DÜˆT�4Ó€AØ‡G�G„IÜ	�‰�t %Õ	(¨JØ�‰Ó  AÒ%Ð%Ñ%÷ 
)×	(Ñ	(ús   Á%BÂBc                  ó°   — t         j                  dk\  rd } n%t        j                  t        j
                  d¬«      } t        t        j                  | ¬«       y )Nl        zARequested memory map length 4294967306 does not fit in a C size_tr1   ©r#   )r   Úmaxsizer   r*   r3   ÚArrowCapacityErrorr'   rã  r  s    r&   Útest_memory_map_large_seeksr  Ï  s?   € Ü
‡{�{�eÒØ‰äŸ™Ü×!Ñ!ð/ô0ˆô ”b—m‘m°NÖCr-   c                 óø   — t         j                  j                  t        | «      t	        «       «      }t        j                  |d«      }|j                  «        |j                  sJ ‚t        j                  |«       y ©NrX  )
r    r§   r¨   r©   r	   r3   rü  r8   r7   rð  )r¬   r§   rÿ  s      r&   Útest_memory_map_close_remover
  Ú  sN   € ä�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ×Ñ  dÓ+€DØ‡J�J„LØ�;Š;Ðˆ;Ü‡I�Iˆd…Or-   c                 ó¼   — t         j                  j                  t        | «      t	        «       «      }t        j                  |d«       t        j                  |«       y r	  )r    r§   r¨   r©   r	   r3   rü  rð  )r¬   r§   s     r&   Útest_memory_map_deref_remover  ã  s7   € Ü�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ×Ñ˜˜tÔ$Ü‡I�Iˆd…Or-   c                 ó¶  — d}t        |«      D �cg c]  }t        j                  dd«      ‘Œ }}t        |d | «      }t        j
                  j                  t        | «      t        «       «      }t        |d«      5 }|j                  |«       d d d «       t        j                  |d¬«      }|j                  d«       t        j                  |«      5 }|j                  «       dk(  sJ ‚	 d d d «       t        j                  t         «      5  |j#                  d	«       d d d «       |j%                  «        t        j                  |d
¬«      5 }	|	j                  d«       d d d «       t        j                  |«      5 }
|
j                  «       dk(  sJ ‚	 d d d «       y 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   ŒhxY w# 1 sw Y   y xY w)NrX  r   rz  r   rd   rC   rº  r`   r   Úabs   barrS   )r¼   r  r€  rƒ  r    r§   r¨   r©   r	   r   r   r3   rë  r   r   r*   r÷  r   r8   )r¬   r×  rØ  rò   rJ   r§   r%   rË  rø  rù  Úf5s              r&   Útest_os_file_writerr  é  sP  € Ø€DÜ+0°¬;Ó
7©; aŒ6�>‰>˜!˜SÕ!¨;€CÐ
7Ü��U�d�Ó€Dä�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	ˆd�DÔ	˜QØ	�‰�Œ÷ 
ô 
�‰�4˜cÔ	"€BØ‡H�HˆVÔä	�‰�4Œ˜BØ�w‰w‹y˜AŠ~Ð‰~÷ 
ô 
�‰”wÕ	Ø
�‰�Œ
÷ 
 à‡H�H„Jô 
�‰�4˜dÕ	# rØ
�‰�Ô÷ 
$ä	�‰�4Œ˜BØ�w‰w‹y˜AŠ~Ð‰~÷ 
ˆùò+ 8÷ 
Ñ	ú÷ 
ˆú÷ 
 Ð	ú÷
 
$Ð	#úç	ˆúsA   �FÁ:FÃF+Ä	F7Å
GÅ9GÆF(Æ+F4Æ7G ÇGÇGc                 óp  — t         j                  j                  t        | «      t	        «       «      }t        t         dd«      }t        j                  |t         j                  t         j                  z  t         j                  z  |z  d«      }t        j                  |d¬«      5 }|j                  «       |k(  sJ ‚|j                  d«       d d d «       t        j                  t         «      5 }t        j"                  |«       d d d «       j$                  j&                  t&        j(                  k(  sJ ‚t        j                  |t         j*                  |z  «      }t        j                  |d¬«      5 }|j                  «       |k(  sJ ‚|j-                  «       dk(  sJ ‚	 d d d «       t        j                  t         «      5 }t        j"                  |«       d d d «       |j$                  j&                  t&        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# 1 sw Y   ŒYxY w)NÚO_BINARYr   é¶  r   rC   rº  r“   )r    r§   r¨   r©   r	   Úgetattrr   ÚO_CREATÚO_WRONLYÚO_TRUNCr3   rë  Úfilenor   r   r*   rY   Úfstatr¨  ÚerrnoÚEBADFÚO_RDONLYr   )r¬   r§   Úbinary_flagÚfdr%   r©  s         r&   Útest_os_file_raw_fdr    s|  € Ü�7‰7�<‰<œ˜F›¤T£VÓ,€DÜœ"˜j¨!Ó,€Kä	�‰�”r—z‘z¤B§K¡KÑ/´"·*±*Ñ<¸{ÑJØó
€Bä	�‰�2˜DÕ	! QØ�x‰x‹z˜RÒÐÐØ	�‰�Œ÷ 
"ô 
�‰”wÔ	 3Ü
�‰�Œ÷ 
 à�9‰9�?‰?œeŸk™kÒ)Ð)Ð)ä	�‰�”r—{‘{ [Ñ0Ó	1€BÜ	�‰�2˜DÕ	! QØ�x‰x‹z˜RÒÐÐØ�v‰v‹x˜6Ò!Ð!Ñ!÷ 
"ô 
�‰”wÔ	 3Ü
�‰�Œ÷ 
 à�9‰9�?‰?œeŸk™kÒ)Ð)Ñ)÷ 
"Ñ	!ú÷ 
 Ñ	ú÷
 
"Ð	!ú÷ 
 Ð	ús0   Â$'HÃ,HÅ1+H Æ>H,ÈHÈHÈ H)È,H5c                  óª   — t        j                  «       } t        j                  t        «      5  | j                  d«       d d d «       y # 1 sw Y   y xY w)NÚfoo)r3   r¯  r   r*   r9   r   )Únfs    r&   Ú%test_native_file_write_reject_unicoder#    s3   € ä	×	Ñ	Ó	 €BÜ	�‰”yÕ	!Ø
�‰�Œ÷ 
"×	!Ñ	!ús   ®A	Á	Ac                 ób	  — t         j                  j                  t        | «      t	        «       «      }t        |d«      5 }|j                  d«       d d d «       t        j                  |d¬«      5 }|j                  dk(  sJ ‚|j                  «       sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚	 d d d «       t        j                  |d¬«      5 }|j                  dk(  sJ ‚|j                  «       sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚	 d d d «       t        j                  |d¬«      5 }|j                  dk(  sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚|j                  «       rJ ‚	 d d d «       t        j                  |d¬«      5 }|j                  dk(  sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚|j                  «       rJ ‚	 d d d «       t        j                  |d¬«      5 }|j                  dk(  sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚|j                  «       rJ ‚	 d d d «       t        j                  |d¬«      5 }|j                  dk(  sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚|j                  «       rJ ‚	 d d d «       t        |d«      5 }|j                  d«       d d d «       t        j                  |d«      5 }|j                  dk(  sJ ‚|j                  «       sJ ‚|j                  «       rJ ‚|j                  «       sJ ‚	 d d d «       t        j                  |d	«      5 }|j                  d
k(  sJ ‚|j                  «       sJ ‚|j                  «       sJ ‚|j                  «       sJ ‚	 d d d «       t        j                  |d«      5 }|j                  d
k(  sJ ‚|j                  «       sJ ‚|j                  «       sJ ‚|j                  «       sJ ‚	 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   �ŒÅxY 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   �ŒAxY w# 1 sw Y   ŒæxY w# 1 sw Y   y xY w)Nr   ó   foooorB   rC   r“   rd   r  r  zr+zrb+ró  )r    r§   r¨   r©   r	   r   r   r3   rë  rD   r«   rª   rU   rã  )r¬   r§   r%   s      r&   Útest_native_file_modesr&  #  s«  € Ü�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	ˆd�DÔ	˜QØ	�‰�Ô÷ 
ô 
�‰�4˜cÕ	" aØ�v‰v˜Š~Ðˆ~Ø�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐØ�z‰zŒ|Ð‰|÷	 
#ô 
�‰�4˜dÕ	# qØ�v‰v˜Š~Ðˆ~Ø�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐØ�z‰zŒ|Ð‰|÷	 
$ô 
�‰�4˜cÕ	" aØ�v‰v˜Š~Ðˆ~Ø—:‘:”<ÐÐØ�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐ�<÷	 
#ô 
�‰�4˜dÕ	# qØ�v‰v˜Š~Ðˆ~Ø—:‘:”<ÐÐØ�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐ�<÷	 
$ô 
�‰�4˜dÕ	# qØ�v‰v˜Š~Ðˆ~Ø—:‘:”<ÐÐØ�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐ�<÷	 
$ô 
�‰�4˜cÕ	" aØ�v‰v˜Š~Ðˆ~Ø—:‘:”<ÐÐØ�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐ�<÷	 
#ô 
ˆd�DÔ	˜QØ	�‰�Ô÷ 
ô 
�‰�t˜SÔ	! QØ�v‰v˜Š~Ðˆ~Ø�z‰zŒ|Ðˆ|Ø—:‘:”<ÐÐØ�z‰zŒ|Ð‰|÷	 
"ô 
�‰�t˜TÔ	" aØ�v‰v˜ŠÐˆØ�z‰zŒ|Ðˆ|Ø�z‰zŒ|Ðˆ|Ø�z‰zŒ|Ð‰|÷	 
#ô 
�‰�t˜UÔ	# qØ�v‰v˜ŠÐˆØ�z‰zŒ|Ðˆ|Ø�z‰zŒ|Ðˆ|Ø�z‰zŒ|Ð‰|÷	 
$Ð	#÷m 
Ñ	ú÷ 
#Ñ	"ú÷ 
$Ñ	#ú÷ 
#Ñ	"ú÷ 
$Ñ	#ú÷ 
$Ñ	#ú÷ 
#Ñ	"ú÷ 
Ñ	ú÷ 
"Ñ	!ú÷ 
#Ð	"ú÷ 
$Ð	#úsŒ   ¾P$Á/AP1ÃAP>Ä?AQÆ'AQÈAQ%É7AQ2ËQ?ÌARÍ+ARÏAR%Ð$P.Ð1P;Ð>QÑQÑQ"Ñ%Q/Ñ2Q<Ñ?R	ÒRÒR"Ò%R.r   z umask doesn't work on Emscripten)Úreasonc                 óz  — t        j                  d«      }t        j                  |«       t         j                  j                  t	        | «      t        «       «      }t        j                  |d¬«      5  	 d d d «       t        j                  |«      j                  dz  d| z  k(  sJ ‚t         j                  j                  t	        | «      t        «       «      }t        j                  |d«      5  	 d d d «       t        j                  |«      j                  dz  d| z  k(  sJ ‚y # 1 sw Y   Œ±xY w# 1 sw Y   ŒAxY w)NrT   rd   rC   iÿ  r  )r    Úumaskr§   r¨   r©   r	   r3   rë  ÚstatÚst_moderã  )r¬   Ú	cur_umaskr§   s      r&   Útest_native_file_permissionsr-  b  sß   € ô
 —‘˜“€IÜ‡H�HˆYÔä�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	�‰�4˜cÖ	"Ø÷ 
#ä�7‰7�4‹=× Ñ  5Ñ(¨E°Y°JÑ,>Ò>Ð>Ð>ä�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	�‰�t˜SÕ	!Ø÷ 
"ä�7‰7�4‹=× Ñ  5Ñ(¨E°Y°JÑ,>Ò>Ð>Ñ>÷ 
#Ð	"ú÷
 
"Ð	!ús   Á3D%Ã/D1Ä%D.Ä1D:c                 óš  — t         j                  j                  t        | «      t	        «       «      }t        |d«      5 }|j                  d«       d d d «       t        j                  |d¬«      5 }|j                  rJ ‚	 d d d «       j                  sJ ‚t        j                  |d¬«      5 }|j                  rJ ‚	 d d d «       j                  sJ ‚||g}g d¢}|D ]=  }|D ]6  \  }}t        j                  t        «      5   t        ||«      |Ž  d d d «       Œ8 Œ? y # 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   ŒixY w)Nr   r%  r“   rC   ))r   r,   )r   )r   )r   r,   )Úflushr,   )r«   r,   )rª   r,   )rU   r,   )r    r§   r¨   r©   r	   r   r   r3   rë  r7   rã  r   r*   rñ   r  )	r¬   r§   r%   Úos_fileÚ	mmap_fileÚfilesÚmethodsÚmethodÚargss	            r&   Ú.test_native_file_raises_ValueError_after_closer6  u  s  € Ü�7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	ˆd�DÔ	˜QØ	�‰�Ô÷ 
ô 
�‰�4˜dÕ	# wØ—>’>Ð!Ð!�>÷ 
$à�>Š>Ðˆ>ä	�‰�t $Õ	'¨9Ø×#Ò#Ð#Ð#Ð#÷ 
(à×ÒÐÐàØð€Eò!€Gó ˆÛ#‰LˆF�DÜ—‘œzÕ*Ø"”˜˜6Ó" DÑ)÷ +Ð*ñ $ñ ÷- 
Ð	ú÷ 
$Ð	#ú÷ 
(Ð	'ú÷" +Ð*ús/   ¾DÁ/D)Â,D5Ä EÄD&Ä)D2Ä5D>ÅE
c                 ó$  — d}t         j                  j                  t        | «      t	        «       «      }t        |d«      5 }|j                  |j                  d«      «       d d d «       t        t        j                  |d¬«      «      5 }|j                  «       sJ ‚|j                  «       }||k(  sJ ‚	 d d d «       j                  sJ ‚t        t        j                  |d¬«      «      5 }t        |«      }dj                  |«      |k(  sJ ‚	 d d d «       t         j                  j                  t        | «      t	        «       «      }t        t        j                  |d¬«      «      5 }|j                  «       sJ ‚|j                  |«       d d d «       t        t        j                  |d¬«      «      5 }|j                  «       }||k(  sJ ‚	 d d d «       y # 1 sw Y   �ŒuxY w# 1 sw Y   �Œ/xY w# 1 sw Y   ŒâxY w# 1 sw Y   ŒqxY w# 1 sw Y   y xY w)Nzfoooo
barrr
bazzz
r   úutf-8r“   rC   Ú )r    r§   r¨   r©   r	   r   r   Úencoder   r3   rë  r«   r   r7   Úlistrª   )r¬   rJ   r§   r%   ÚfilÚresr²   Úpath2s           r&   Útest_native_file_TextIOWrapperr?  “  s…  € ð€Dô �7‰7�<‰<œ˜F›¤T£VÓ,€DÜ	ˆd�DÔ	˜QØ	�‰�—‘˜GÓ$Ô%÷ 
ô 
”r—y‘y ¨DÔ1Ô	2°cØ�|‰|Œ~Ðˆ~Ø�h‰h‹jˆØ�dŠ{Ð‰{÷ 
3ð �:Š:Ðˆ:ä	”r—y‘y ¨DÔ1Ô	2°cä�S“	ˆØ�w‰w�u‹~ Ò%Ð%Ñ%÷ 
3ô �G‰G�L‰Lœ˜V›¤d£fÓ-€EÜ	”r—y‘y ¨TÔ2Ô	3°sØ�|‰|Œ~Ðˆ~Ø�	‰	�$Œ÷ 
4ô 
”r—y‘y ¨TÔ2Ô	3°sØ�h‰h‹jˆØ�dŠ{Ð‰{÷ 
4Ð	3÷) 
Ñ	ú÷ 
3Ñ	2ú÷ 
3Ð	2ú÷ 
4Ð	3ú÷ 
4Ð	3ús<   Á !GÂ	*G!Ã*"G.Å&$G:Æ2HÇGÇ!G+Ç.G7Ç:HÈHc                 óô  — d}t        | dz  «      }t        |d«      5 }|j                  |dz  «       d d d «       t        j                  |d¬«      }t        |«      5 }|j                  «       dk(  sJ ‚d}|j                  |«      }t        |«      t        j                  d	|z  t        |«      z  «      k(  sJ ‚||j                  «       cxk  r	|d	z  k  sJ ‚ J ‚	 d d d «       y # 1 sw Y   Œ±xY w# 1 sw Y   y xY w)
Ns	   foo
quux
úlargefile.txtr   i † r“   rC   r   i N  rT   )r©   r   r   r3   rë  r   r   Ú	readlinesr5   ÚmathÚceil)r¬   rJ   r§   r%   Úbinary_filerM   r²   s          r&   Ú#test_native_file_TextIOWrapper_perfrF  ²  sç   € ð €DÜˆv˜Ñ'Ó(€DÜ	ˆd�DÔ	˜QØ	�‰��w‘Ô÷ 
ô —)‘)˜D tÔ,€KÜ	�{Ô	# qØ×ÑÓ! QÒ&Ð&Ð&ØˆØ—‘˜FÓ#ˆÜ�5‹zœTŸY™Y q¨6¡z´C¸³IÑ'=Ó>Ò>Ð>Ð>Ø˜×)Ñ)Ó+Ô9¨v¸©zÒ9Ð9Ñ9Ð9Ñ9÷ 
$Ð	#÷	 
Ð	ú÷ 
$Ð	#ús   �C"ÁA<C.Ã"C+Ã.C7c                 óú  — ddz  }t        | dz  «      }t        |d«      5 }|j                  |«       d d d «       g }t        j                  |d¬«      5 }	 |j                  «       }t        |«      t        |«      k  sJ ‚|j                  |«       |j                  d«      }t        |«      dk  sJ ‚|j                  |«       |snŒp	 d d d «       dj                  |«      |k(  sJ ‚y # 1 sw Y   Œ´xY w# 1 sw Y   Œ,xY w)	Ns   123
i@B rA  r   r“   rC   i0u  r-   )	r©   r   r   r3   rë  Úread1r5   rç  r¨   )r¬   rJ   r§   r%   Úchunksr  s         r&   Útest_native_file_read1rJ  Ã  së   € ð �iÑ€DÜˆv˜Ñ'Ó(€DÜ	ˆd�DÔ	˜QØ	�‰�Œ÷ 
ð €FÜ	�‰�4˜dÕ	# qØØ—‘“	ˆAÜ�q“6œC ›IÒ%Ð%Ð%Ø�M‰M˜!ÔØ—‘˜“ˆAÜ�q“6˜VÒ#Ð#Ð#Ø�M‰M˜!ÔÙØð ð ÷ 
$ð �8‰8�FÓ˜tÒ#Ð#Ñ#÷ 
Ð	ú÷ 
$Ð	#ús    C%ÁA2C1Ã%C.Ã1C:c                 ó¨  — dd l }dd lm} ddz  }t        | dz  «      }t	        |d«      5 }|j                  |«       d d d «       t        j                  |d¬«      5 }|j                  |d¬	«      }|j                  d
gdz  dgdz  dœ«      }|j                  ||«       |j                  «       dk  sJ ‚	 d d d «       y # 1 sw Y   Œ�xY w# 1 sw Y   y xY w)Nr   s   a,b
i€–˜ rA  r   r“   rC   rj   )Únrowsr  r  r  i   )ÚpandasÚpandas.testingÚtestingr©   r   r   r3   rë  Úread_csvÚ	DataFrameÚassert_frame_equalr   )r¬   ÚpdÚtmrJ   r§   r%   Údfr=   s           r&   Ú#test_native_file_pandas_text_readerrV  Ú  sÀ   € ó ÝØ�jÑ €DÜˆv˜Ñ'Ó(€DÜ	ˆd�DÔ	˜QØ	�‰�Œ÷ 
ô 
�‰�4˜dÕ	# qØ�[‰[˜ "ˆ[Ó%ˆØ—<‘< s e¨b¡j¸°u¸r±zÑ BÓCˆØ
×Ñ˜b (Ô+à�v‰v‹x˜:Ò%Ð%Ñ%÷ 
$Ð	#÷ 
Ð	ú÷ 
$Ð	#ús   ªB<ÁACÂ<CÃCc                  óØ   — t        «       5  t        j                  dd«       d d d «       t        «       5  t        j                  dd«       d d d «       y # 1 sw Y   Œ3xY w# 1 sw Y   y xY w)NÚnon_existent_filer“   )r.   r3   rë  rã  r,   r-   r&   Útest_native_file_open_errorrY  í  sI   € Ü	Õ	 Ü
�	‰	Ð% tÔ,÷ 
!ä	Õ	 Ü
�‰Ð)¨4Ô0÷ 
!Ð	 ÷ 
!Ð	 úç	 Ð	 ús   ‹A´A ÁAÁ A)c                  ó
  — t        j                  d«      } t        j                  | d¬«      }|j                  d«      dk(  sJ ‚| j	                  «       dk(  sJ ‚|j                  «        |j                  sJ ‚| j                  sJ ‚y )Nó	   123456789rE   ©Úbuffer_sizerT   ó   12)r3   r—   ÚBufferedInputStreamr   r   r8   r7   )Úrawr%   s     r&   Útest_buffered_input_streamra  ÷  sj   € Ü
�/‰/˜,Ó
'€CÜ
×Ñ˜s°Ô2€AØ�6‰6�!‹9˜ÒÐÐØ�8‰8‹:˜Š?Ðˆ?Ø‡G�G„IØ�8Š8€Oˆ8Ø�:Š:Ð‰:r-   c                  óz  — t        j                  t        j                  d«      d¬«      } | j                  d«      dk(  sJ ‚| j	                  «       }| j
                  sJ ‚|j
                  rJ ‚|j                  «       sJ ‚|j                  d«      dk(  sJ ‚|j                  d«       |j                  d«      dk(  sJ ‚y )Nr[  rE   r\  rT   r^  ó   5678s   3456)r3   r_  r—   r   Údetachr7   rU   r   ©r%   r`  s     r&   Ú*test_buffered_input_stream_detach_seekablerf    sš   € ä
×ÑœrŸ™¨|Ó<È!ÔL€AØ�6‰6�!‹9˜ÒÐÐØ
�(‰(‹*€CØ�8Š8€Oˆ8Ø�zŠzÐˆ>Ø�<‰<Œ>Ðˆ>Ø�8‰8�A‹;˜'Ò!Ð!Ð!Ø‡H�HˆQ„KØ�8‰8�A‹;˜'Ò!Ð!Ñ!r-   c                  óÔ  — t        j                  t        j                  t        j                  d«      d¬«      d¬«      } | j                  d«      dk(  sJ ‚| j	                  «       }| j
                  sJ ‚|j
                  rJ ‚|j                  «       rJ ‚|j                  d«      dk(  sJ ‚t        j                  t        «      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)Nr[  rE   r\  rT   r^  rc  )r3   r_  r—   r   rd  r7   rU   r   r*   ÚEnvironmentErrorr   re  s     r&   Ú.test_buffered_input_stream_detach_non_seekableri    s±   € ä
×ÑÜ
×ÑœrŸ™¨|Ó<È!ÔLØô	€Að �6‰6�!‹9˜ÒÐÐØ
�(‰(‹*€CØ�8Š8€Oˆ8Ø�zŠzÐˆ>Ø�|‰|Œ~ÐÐØ�8‰8�A‹;˜'Ò!Ð!Ð!Ü	�‰Ô'Õ	(Ø�‰�Œ÷ 
)×	(Ñ	(ús   ÃCÃC'c                  ó  — t        j                  dt         j                  ¬«      } t        j                  | «      }t        j
                  |«      }t        j                  |d¬«      }|j                  d«       | d d j                  «       dk(  sJ ‚|j                  «        | d d j                  «       dk(  sJ ‚|j                  d«       |j                  «        |j                  sJ ‚|j                  sJ ‚| d d	 j                  «       d
k(  sJ ‚y )NrP   rã   rE   r\  r^  ó       ó   12  s   3456789rj   s
   123456789 )rå   Úzerosrî   r3   rÆ   r.  ÚBufferedOutputStreamr   r„   r/  r8   r7   )Únp_bufr:   r`  r%   s       r&   Útest_buffered_output_streamrp    sÝ   € ä�X‰X�c¤§¡Ô)€FÜ
�,‰,�vÓ
€Cä
×
"Ñ
" 3Ó
'€CÜ
×Ñ °Ô3€AØ‡G�GˆE„NØ�"�1ˆ:×ÑÓ ;Ò.Ð.Ð.Ø‡G�G„IØ�"�1ˆ:×ÑÓ 9Ò,Ð,Ð,Ø‡G�GˆJÔØ‡G�G„IØ�8Š8€Oˆ8Ø�:Š:Ðˆ:Ø�#�2ˆ;×ÑÓ  NÒ2Ð2Ñ2r-   c                  ó¦  — t        j                  dt         j                  ¬«      } t        j                  | «      }t        j
                  t        j                  |«      d¬«      }|j                  d«       | d d j                  «       dk(  sJ ‚|j                  «       }|j                  sJ ‚|j                  rJ ‚| d d j                  «       dk(  sJ ‚y )NrP   rã   rE   r\  r^  rk  rl  )rå   rm  rî   r3   rÆ   rn  r.  r   r„   rd  r7   )ro  r:   r%   r`  s       r&   Ú"test_buffered_output_stream_detachrr  /  s¨   € ä�X‰X�c¤§¡Ô)€FÜ
�,‰,�vÓ
€Cä
×Ñ¤× 8Ñ 8¸Ó =È1ÔM€AØ‡G�GˆE„NØ�"�1ˆ:×ÑÓ ;Ò.Ð.Ð.Ø
�(‰(‹*€CØ�8Š8€Oˆ8Ø�zŠzÐˆ>Ø�"�1ˆ:×ÑÓ 9Ò,Ð,Ñ,r-   c                 ó€  — t        j                  |d¬«      }t        j                  ||«      5 }|j                  rJ ‚|j	                  «       sJ ‚|j                  «       rJ ‚|j                  «       rJ ‚|j                  «       }|| k(  sJ ‚	 d d d «       j                  sJ ‚|j                  sJ ‚t        j                  |d¬«      }t        j                  ||«      5 }|j                  «       }t        |t         j                  «      sJ ‚|j                  «       | k(  sJ ‚	 d d d «       y # 1 sw Y   ŒžxY w# 1 sw Y   y xY w©Nr“   rC   )r3   rë  ÚCompressedInputStreamr7   r«   rª   rU   r   r}   r‰   rÇ   r¢   )rJ   Úfnro  r`  Ú
compressedÚgotr:   s          r&   Úcheck_compressed_inputry  @  s  € Ü
�)‰)�B˜TÔ
"€CÜ	×	!Ñ	! # {Ô	3°zØ×$Ò$Ð$Ð$Ø×"Ñ"Ô$Ð$Ð$Ø×&Ñ&Ô(Ð(Ð(Ø×&Ñ&Ô(Ð(Ð(Ø�o‰oÓˆØ�dŠ{Ð‰{÷ 
4ð ×ÒÐÐØ�:Š:Ðˆ:ô �)‰)�B˜TÔ
"€CÜ	×	!Ñ	! # {Ô	3°zØ×$Ñ$Ó&ˆÜ˜#œrŸy™yÔ)Ð)Ð)Ø�~‰~Ó 4Ò'Ð'Ñ'÷ 
4Ð	3÷ 
4Ð	3ú÷ 
4Ð	3ús   ®AD(ÃAD4Ä(D1Ä4D=c                 ó¶   — d}t        | dz  «      }t        j                  |d«      5 }|j                  |«       d d d «       t	        ||d«       y # 1 sw Y   ŒxY w)Nóš   some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
eof
zcompressed_input_test.gzr   rs  )r©   rs  r   r   ry  ©r¬   rJ   rv  r%   s       r&   Útest_compressed_input_gzipr}  T  sL   € à.€DÜ	ˆVÐ0Ñ0Ó	1€BÜ	�‰�2�tÔ	 Ø	�‰�Œ÷ 
ä˜4  VÕ,÷ 
Ð	ús   §AÁAc                 ó   — d}t        | dz  «      }t        j                  |d«      5 }|j                  |«       d d d «       	 t	        ||d«       y # 1 sw Y   ŒxY w# t
        $ r(}t        j                  t        |«      «       Y d }~y d }~ww xY w)Nr{  zcompressed_input_test.bz2rd   rp  )r©   rp  ÚBZ2Filer   ry  rF  r   r   )r¬   rJ   rv  r%   Úes        r&   Útest_compressed_input_bz2r�  ]  su   € Ø.€DÜ	ˆVÐ1Ñ1Ó	2€BÜ	�‰�R˜Ô	 Ø	�‰�Œ÷ 
ðÜ˜t R¨Õ/÷ 
Ð	ûô ò Ü�‰”C˜“F×Ñûðús#   §AÁA ÁAÁ	BÁ%BÂBc                 ój  — t        j                  d«      st        j                  d«       d}t	        | dz  «      }t        j                  |d«      5 }|j                  |«       d d d «       t        j                  |d«      5 }|j                  «       }|j                  «       |k(  sJ ‚	 d d d «       j                  sJ ‚t        j                  t        j                  |«      d«      5 }|j                  «       }|j                  «       |k(  sJ ‚	 d d d «       |j                  sJ ‚t        |d«      }t        j                  |d«      5 }|j                  «       }|j                  «       |k(  sJ ‚	 d d d «       |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# 1 sw Y   Œ=xY w)Nrs  úgzip support is not builtr{  z!test_compressed_input_openfile.gzr   r“   )r
   r~  r   r   r©   rs  r   r   r3   ru  r}   r¢   r7   ÚpathlibÚPath)r¬   rJ   rv  r%   rw  r:   s         r&   Útest_compressed_input_openfiler†  h  si  € ä×Ñ˜fÔ%Ü�‰Ð/Ô0à.€DÜ	ˆVÐ9Ñ9Ó	:€BÜ	�‰�2�tÔ	 Ø	�‰�Œ÷ 
ô 
×	!Ñ	! " fÔ	-°Ø×$Ñ$Ó&ˆØ�~‰~Ó 4Ò'Ð'Ñ'÷ 
.ð ×ÒÐÐä	×	!Ñ	!¤'§,¡,¨rÓ"2°FÔ	;¸zØ×$Ñ$Ó&ˆØ�~‰~Ó 4Ò'Ð'Ñ'÷ 
<ð ×ÒÐÐäˆR�‹€AÜ	×	!Ñ	! ! VÔ	,°
Ø×$Ñ$Ó&ˆØ�~‰~Ó 4Ò'Ð'Ñ'÷ 
-ð �8Š8€O‰8÷# 
Ñ	ú÷ 
.Ð	-ú÷
 
<Ð	;ú÷ 
-Ð	,ús0   ÁFÂ&FÃ'&FÅ&F)ÆFÆFÆF&Æ)F2c                 ó¸   — t        j                  |d¬«      }t        j                  ||«      5 }|j                  «       }|| k(  sJ ‚	 d d d «       y # 1 sw Y   y xY wrt  )r3   rë  ru  r   )rJ   rv  ro  r`  rw  rx  s         r&   Úcheck_compressed_concatenatedrˆ  ƒ  sH   € Ü
�)‰)�B˜TÔ
"€CÜ	×	!Ñ	! # {Ô	3°zØ�o‰oÓˆØ�dŠ{Ð‰{÷ 
4×	3Ñ	3ús   ®AÁAc                 ó:  — d}t        | dz  «      }t        j                  |d«      5 }|j                  |d d «       d d d «       t        j                  |d«      5 }|j                  |dd  «       d d d «       t	        ||d«       y # 1 sw Y   ŒJxY w# 1 sw Y   Œ#xY w)Nr{  zcompressed_input_test2.gzr   rG   r  rs  )r©   rs  r   r   rˆ  r|  s       r&   Ú!test_compressed_concatenated_gziprŠ  Š  s�   € à.€DÜ	ˆVÐ1Ñ1Ó	2€BÜ	�‰�2�tÔ	 Ø	�‰��S�b�	Ô÷ 
ä	�‰�2�tÔ	 Ø	�‰��R�S�	Ô÷ 
ä! $¨¨FÕ3÷	 
Ð	úç	Ð	ús   §BÁBÂBÂBc                  ó  — d} t        j                  | «      }t        j                  t        «      5  t        j
                  |d«       d d d «       t        j                  t        «      5  t        j
                  |d «       d d d «       t        j
                  |d«      5 }t        j                  t        d¬«      5  |j                  «        d d d «       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   y xY w)Ns   foofoofoofoofoofoofoofoofoofooÚunknown_compressionrs  zzlib inflate failedr1   )	r3   r—   r   r*   rñ   ru  r9   r÷  r   )rJ   r`  rw  s      r&   Útest_compressed_input_invalidr�  •  s¶   € à€DÜ
�/‰/˜$Ó
€CÜ	�‰”zÕ	"Ü
× Ñ  Ð&;Ô<÷ 
#ä	�‰”yÕ	!Ü
× Ñ   dÔ+÷ 
"ô 
×	!Ñ	! # vÔ	.°*Ü�]‰]œ7Ð*?Ö@Ø�O‰OÔ÷ A÷ 
/Ð	.÷ 
#Ð	"úç	!Ð	!ú÷ AÐ@ú÷ 
/Ð	.ús;   ±CÁ)C(ÂD Â:C4ÃD ÃC%Ã(C1Ã4C=	Ã9D Ä D	c                 óä  — t        j                  «       }t        j                  ||«      5 }|j                  rJ ‚|j	                  «       rJ ‚|j                  «       sJ ‚|j                  «       rJ ‚|j                  | «       d d d «       j                  sJ ‚|j                  sJ ‚t        |d«      5 }|j                  |j                  «       «       d d d «       y # 1 sw Y   ŒZxY w# 1 sw Y   y xY w)Nr   )
r3   r¯  ÚCompressedOutputStreamr7   r«   rª   rU   r   r   r6   )rJ   rv  ro  r`  rw  r%   s         r&   Úmake_compressed_outputr�  £  sÌ   € Ü
×
Ñ
Ó
!€CÜ	×	"Ñ	" 3¨Ô	4¸
Ø×$Ò$Ð$Ð$Ø×&Ñ&Ô(Ð(Ð(Ø×"Ñ"Ô$Ð$Ð$Ø×&Ñ&Ô(Ð(Ð(Ø×Ñ˜Ô÷ 
5ð ×ÒÐÐØ�:Š:Ðˆ:Ü	ˆb�$Œ˜1Ø	�‰�—‘“Ô÷ 
ˆ÷ 
5Ð	4ú÷ 
ˆús   «ACÂ1 C&ÃC#Ã&C/c                 óÄ   — d}t        | dz  «      }t        ||d«       t        j                  |d«      5 }|j	                  «       }||k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr{  zcompressed_output_test.gzrs  r“   )r©   r�  rs  r   r   )r¬   rJ   rv  r%   rx  s        r&   Útest_compressed_output_gzipr’  ±  sV   € à.€DÜ	ˆVÐ1Ñ1Ó	2€BÜ˜4  VÔ,Ü	�‰�2�tÔ	 Ø�f‰f‹hˆØ�dŠ{Ð‰{÷ 
×	Ñ	ús   ´AÁAc                 ó.  — d}t        | dz  «      }	 t        ||d«       t        j                  |d«      5 }|j                  «       }||k(  sJ ‚	 d d d «       y # t        $ r(}t        j                  t        |«      «       Y d }~Œdd }~ww xY w# 1 sw Y   y xY w)Nr{  zcompressed_output_test.bz2rp  rB   )r©   r�  rF  r   r   rp  r  r   )r¬   rJ   rv  r€  r%   rx  s         r&   Útest_compressed_output_bz2r”  »  s…   € Ø.€DÜ	ˆVÐ2Ñ2Ó	3€BðÜ˜t R¨Ô/ô 
�‰�R˜Ô	 Ø�f‰f‹hˆØ�dŠ{Ð‰{÷ 
Ð	øô ò Ü�‰”C˜“F×Ñûðúç	Ð	ús"   ’A µBÁ	BÁ BÂBÂBc                 ó   — t        j                  d«      st        j                  d«       t	        j
                  | dz  d«      5 }|j                  d«       d d d «       | dz  j                  d«      5 }t	        j
                  |d«      5 }|j                  d«       d d d «       d d d «       y # 1 sw Y   ŒWxY w# 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nrs  rƒ  zctor.gzs   testzctor2.gzr   )r
   r~  r   r   r3   r�  r   r   )r¬   rZ   r%   s      r&   Útest_output_stream_constructorr–  Ç  s    € Ü×Ñ˜fÔ%Ü�‰Ð/Ô0Ü	×	"Ñ	" 6¨IÑ#5°vÔ	>À&Ø�‰�WÔ÷ 
?à
�:Ñ
×	#Ñ	# DÔ	)¨QÜ×&Ñ& q¨&Ô1°VØ�L‰L˜Ô!÷ 2÷ 
*Ð	)÷ 
?Ð	>ú÷ 2Ð1ú÷ 
*Ð	)ús0   ÁB,Á2CÂ	B8ÂCÂ,B5Â8C	Â=CÃC)r§   Úexpected_compression)zfile.bz2rp  )zfile.lz4rt  zfile.gzzpath/to/file.zstc                 óN  — t        j                  |«      sLt        j                  t        j
                  j                  «      5  t        j                  | «       d d d «       y t        j                  | «      }t        |t         «      sJ ‚|j                  |k(  sJ ‚y # 1 sw Y   y xY wr)   )
r
   r~  r   r*   r3   ÚlibÚArrowNotImplementedErrorÚdetectr‰   r�  )r§   r—  r|  s      r&   Útest_compression_detectionrœ  Ñ  sy   € ô ×ÑÐ2Ô3Ü�]‰]œ2Ÿ6™6×:Ñ:Õ;Ü�L‰L˜Ô÷ <Ð;ô —‘˜TÓ"ˆÜ˜%¤Ô'Ð'Ð'Ø�z‰zÐ1Ò1Ð1Ñ1÷ <Ð;ús   ÁBÂB$c                  ón  — t        j                  t        «      5  t        j                  d«       d d d «       t        j                  t
        «      5  t        d «       d d d «       t        j                  t        «      5  t        d«       d d d «       y # 1 sw Y   ŒdxY w# 1 sw Y   ŒCxY w# 1 sw Y   y xY w)NÚunknown)r   r*   rñ   r
   r~  r9   r,   r-   r&   Útest_unknown_compression_raisesrŸ  á  sl   € Ü	�‰”zÕ	"Ü×Ñ˜9Ô%÷ 
#ä	�‰”yÕ	!ÜˆdŒ÷ 
"ä	�‰”zÕ	"ÜˆiÔ÷ 
#Ð	"÷	 
#Ð	"úç	!Ð	!úç	"Ð	"ús#   šBÁBÁ>B+ÂBÂB(Â+B4c                 ó  — t        j                  | «      st        j                  | › d�«       d}t	        j
                  «       }t	        j                  || «      5 }|j                  |«       d d d «       |j                  «       }t        |«      t        |«      k  sJ ‚t	        j                  |«      }t	        j                  || «      5 }|j                  «       }||k(  sJ ‚	 d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nrx  r{  )r
   r~  r   r   r3   r¯  r�  r   r6   r5   r—   ru  r   )ro  rJ   r`  rw  Úcdatarx  s         r&   Útest_compressed_roundtripr¢  ê  sÓ   € ô ×Ñ˜kÔ*Ü�‰�{�mÐ#8Ð9Ô:à.€DÜ
×
Ñ
Ó
!€CÜ	×	"Ñ	" 3¨Ô	4¸
Ø×Ñ˜Ô÷ 
5ð �L‰L‹N€EÜˆu‹:œ˜D›	Ò!Ð!Ð!Ü
�/‰/˜%Ó
 €CÜ	×	!Ñ	! # {Ô	3°zØ�o‰oÓˆØ�dŠ{Ð‰{÷ 
4Ð	3÷ 
5Ð	4ú÷ 
4Ð	3ús   ÁC*ÃC6Ã*C3Ã6C?)rp  rr  rs  rt  ru  c                 óŒ  — t        j                  | «      st        j                  | › d�«       t        j
                  j                  t	        j                  g d¢«      gdg«      }t	        j                  «       }t	        j                  || «      }t	        j                  ||j                  «      }|j                  |d¬«       |j                  «        |j                  «        |j                  «       }t	        j                  t	        j                   |«      | «      }t	        j"                  |«      j%                  «       }||k(  sJ ‚y )Nrx  )rO   rT   r`   rE   r   r  r`   )Úmax_chunksize)r
   r~  r   r   r3   ÚTablerÆ  ré   r¯  r�  rÇ  rÈ  Úwrite_tabler8   r6   ru  r—   ÚRecordBatchStreamReaderÚread_all)ro  Útabler`  rZ   r0  r:   Ú	got_tables          r&   Ú"test_compressed_recordbatch_streamr«    sô   € ô
 ×Ñ˜kÔ*Ü�‰�{�mÐ#8Ð9Ô:ô �H‰H× Ñ ¤"§(¡(ª?Ó";Ð!<¸s¸eÓD€EÜ
×
Ñ
Ó
!€CÜ×&Ñ& s¨KÓ8€FÜ×'Ñ'¨°·±Ó=€FØ
×Ñ�u¨AÐÔ.Ø
‡L�L„NØ
‡L�L„NØ
�,‰,‹.€CÜ×%Ñ%¤b§o¡o°cÓ&:¸KÓH€FÜ×*Ñ*¨6Ó2×;Ñ;Ó=€IØ˜ÒÐÑr-   uŒ   DÃ¨s NoÃ«l oÃ¹ un zÃ©phyr haÃ¯ me vÃªt de glaÃ§ons wÃ¼rmiens je dÃ®ne dâ€™exquis rÃ´tis de bÅ“uf au kir Ã  lâ€™aÃ¿ dâ€™Ã¢ge mÃ»r & cÃ¦tera !c                 ó>  — t        |«      }t        j                  t        j                  | j	                  |«      «      ||«      }g }	 |j                  t        |«      «      }|j                  |«       |snŒ/dj                  |«      }|j                  |«      | k(  sJ ‚y )Nr-   )
Úiterr3   Útranscoding_input_streamr—   r:  r   Únextrç  r¨   rÁ  )rJ   Úsrc_encodingÚdest_encodingÚchunk_sizesrZ   Úoutr:   s          r&   Úcheck_transcodingr´  %  s�   € Ü�{Ó#€KÜ×(Ñ(Ü
�‰˜Ÿ™ LÓ1Ó2Ø�mó%€Fð €CØ
Ø�k‰kœ$˜{Ó+Ó,ˆØ�
‰
�3ŒÙØð	 ð
 �(‰(�3‹-€CØ�:‰:�mÓ$¨Ò,Ð,Ñ,r-   zsrc_encoding, dest_encoding)©r8  úutf-16©r¶  r8  )r8  z	utf-32-le)r8  z	utf-32-bec           	      óz   — t        t        | |ddg«       t        t        | |t        j                  g d¢«      «       y )Nr�   r   )rO   rT   r`   r   )r´  Úunicode_transcoding_exampleÚ	itertoolsÚcycle)r°  r±  s     r&   Útest_transcoding_input_streamr¼  4  s8   € ô Ô1Ø" M°D¸!°9ô>ô Ô1Ø" MÜ—o‘o¢lÓ3õ5r-   )r8  r8  )r8  ÚUTF8c                 ód   — t        j                  d«      }t        j                  || |«      |u sJ ‚y )Ns   abc123)r3   r—   r®  ©r°  r±  rZ   s      r&   Útest_transcoding_no_opsrÀ  D  s9   € ô
 �_‰_˜YÓ'€FÜ×&Ñ&Ø�˜mó-Ø06ñ7ð 7ñ 7r-   )r8  Úascii)r8  zlatin-1c                 óô   — t        j                  t        j                  dj                  | «      «      | |«      }t	        j
                  t        «      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)Nu   Ä€rO   )r3   r®  r—   r:  r   r*   ÚUnicodeEncodeErrorr   r¿  s      r&   Útest_transcoding_encoding_errorrÄ  N  sU   € ô ×(Ñ(Ü
�‰˜Ÿ™¨Ó5Ó6ØØó€Fô 
�‰Ô)Õ	*Ø�‰�AŒ÷ 
+×	*Ñ	*ús   ÁA.Á.A7rµ  r·  c                 óÖ   — t        j                  t        j                  d«      | |«      }t        j                  t
        «      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)Ns   ÿÿÿÿrO   )r3   r®  r—   r   r*   ÚUnicodeErrorr   r¿  s      r&   Útest_transcoding_decoding_errorrÇ  \  sL   € ô ×(Ñ(Ü
�‰Ð+Ó,ØØó€Fô 
�‰”|Õ	$Ø�‰�AŒ÷ 
%×	$Ñ	$ús   ÁAÁA(c                  ó   — d} t        j                  | «      t        | «      fD ],  }t        j                  |«      }|j	                  «       | k(  rŒ,J ‚ t        j                  | «      }t        j                  t        |«      «      }|j	                  «       |k(  sJ ‚t        j                  t        |«      d¬«      }|j	                  «       | k(  sJ ‚y ©Nr{  rs  ©ro  )r3   rÆ   r|   Úinput_streamr   rs  r‚  )rJ   ÚargrZ   Úgz_datas       r&   Útest_input_stream_bufferrÎ  m  s¦   € à.€DÜ—‘˜TÓ"¤J¨tÓ$4Ó5ˆÜ—‘ Ó%ˆØ�{‰{‹} Ó$Ð$Ð$ð 6ô �m‰m˜DÓ!€GÜ�_‰_œZ¨Ó0Ó1€FØ�;‰;‹=˜GÒ#Ð#Ð#Ü�_‰_œZ¨Ó0¸fÔE€FØ�;‰;‹=˜DÒ Ð Ñ r-   c                  óx   —  G d„ d«      } t        j                   | «       «      }|j                  d«      dk(  sJ ‚y )Nc                   ó*   — e Zd Zd„ Zed„ «       Zdd„Zy)ú1test_input_stream_duck_typing.<locals>.DuckReaderc                  ó   — y r)   r,   ru   s    r&   r8   z7test_input_stream_duck_typing.<locals>.DuckReader.close  rw   r-   c                  ó   — yry   r,   ru   s    r&   r7   z8test_input_stream_duck_typing.<locals>.DuckReader.closed‚  rz   r-   Nc                  ó   — y)Nó   hellor,   )rv   rM   s     r&   r   z6test_input_stream_duck_typing.<locals>.DuckReader.read†  s   € Ør-   r)   )r~   r   r€   r8   r�   r7   r   r,   r-   r&   r‚   rÑ  }  s    „ ò	ð 
ñ	ó 
ð	ô	r-   r‚   r   rÕ  )r3   rË  r   )r‚   rZ   s     r&   Útest_input_stream_duck_typingrÖ  {  s4   € ÷
ñ 
ô �_‰_™Z›\Ó*€FØ�;‰;�q‹>˜XÒ%Ð%Ñ%r-   c                 óÎ  — d}| dz  }t        t        |«      d«      5 }|j                  |«       d d d «       t        j                  |«      }|j                  «       |k(  sJ ‚t        j                  t        |«      «      }|j                  «       |k(  sJ ‚t        j                  t        j                  t        |«      «      «      }|j                  «       |k(  sJ ‚y # 1 sw Y   Œ­xY w)Nr{  rË  r   )r   r©   r   r3   rË  r   r„  r…  )r¬   rJ   Ú	file_pathr%   rZ   s        r&   Útest_input_stream_file_pathrÙ  �  s³   € Ø.€DØ˜Ñ'€IÜ	Œc�)‹n˜dÔ	# qØ	�‰�Œ÷ 
$ô �_‰_˜YÓ'€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_œS ›^Ó,€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_œWŸ\™\¬#¨i«.Ó9Ó:€FØ�;‰;‹=˜DÒ Ð Ñ ÷ 
$Ð	#ús   �CÃC$c                 óª  — d}t        j                  |«      }| dz  }t        t        |«      d«      5 }|j	                  |«       d d d «       t        j                  |«      }|j                  «       |k(  sJ ‚t        j                  t        |«      «      }|j                  «       |k(  sJ ‚t        j                  t        j                  t        |«      «      «      }|j                  «       |k(  sJ ‚t        j                  |d¬«      }|j                  «       |k(  sJ ‚t        j                  |d ¬«      }|j                  «       |k(  sJ ‚y # 1 sw Y   �ŒxY w)Nr{  zinput_stream.gzr   rs  rÊ  ©
rs  r‚  r   r©   r   r3   rË  r   r„  r…  ©r¬   rJ   rÍ  rØ  r%   rZ   s         r&   Ú&test_input_stream_file_path_compressedrÝ  ›  s  € à.€DÜ�m‰m˜DÓ!€GØÐ*Ñ*€IÜ	Œc�)‹n˜dÔ	# qØ	�‰�Ô÷ 
$ô �_‰_˜YÓ'€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_œS ›^Ó,€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_œWŸ\™\¬#¨i«.Ó9Ó:€FØ�;‰;‹=˜DÒ Ð Ð ä�_‰_˜Y°FÔ;€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_˜Y°DÔ9€FØ�;‰;‹=˜GÒ#Ð#Ñ#÷ 
$Ñ	#ús   ²EÅEc                 ó  — d}| dz  }t        t        |«      d«      5 }|j                  |«       d d d «       t        j                  |d¬«      }t        |t        j                  «      sJ ‚|j                  «       |k(  sJ ‚t        j                  t        |«      d¬«      }t        |t        j                  «      sJ ‚|j                  «       |k(  sJ ‚t        j                  t        j                  t        |«      «      d¬«      }t        |t        j                  «      sJ ‚|j                  «       |k(  sJ ‚t        j                  |d¬«      }t        |t        j                  «      sJ ‚d	}t        j                  t        |¬
«      5  t        j                  |d¬«       d d d «       t        j                  t        «      5  t        j                  |d¬«       d d d «       y # 1 sw Y   �Œ±xY w# 1 sw Y   ŒPxY w# 1 sw Y   y xY w)Nr{  zinput_stream.bufferedr   é    r\  r]  rV  r   ú$Buffer size must be larger than zeror1   rN   Úmillion)r   r©   r   r3   rË  r‰   r_  r   r„  r…  rë  r   r*   rñ   r9   )r¬   rJ   rØ  r%   rZ   Úunbuffered_streamrP  s          r&   Ú$test_input_stream_file_path_bufferedrã  °  sz  € Ø.€DØÐ0Ñ0€IÜ	Œc�)‹n˜dÔ	# qØ	�‰�Œ÷ 
$ô �_‰_˜Y°BÔ7€FÜ�fœb×4Ñ4Ô5Ð5Ð5Ø�;‰;‹=˜DÒ Ð Ð Ü�_‰_œS ›^¸Ô<€FÜ�fœb×4Ñ4Ô5Ð5Ð5Ø�;‰;‹=˜DÒ Ð Ð Ü�_‰_œWŸ\™\¬#¨i«.Ó9ÀtÔL€FÜ�fœb×4Ñ4Ô5Ð5Ð5Ø�;‰;‹=˜DÒ Ð Ð äŸ™¨	¸qÔAÐÜÐ'¬¯©Ô3Ð3Ð3à
0€CÜ	�‰”z¨Ö	-Ü
�‰˜	¨rÕ2÷ 
.ä	�‰”yÕ	!Ü
�‰˜	¨yÕ9÷ 
"Ð	!÷' 
$Ñ	#ú÷" 
.Ð	-úç	!Ð	!ús#   �GÆG+Æ=G7ÇG(Ç+G4Ç7H c                 ó  — d}t        j                  |«      }| dz  }t        t        |«      d«      5 }|j	                  |«       d d d «       t        j                  |dd¬«      }|j                  «       |k(  sJ ‚t        j                  t        |«      d¬«      }|j                  «       |k(  sJ ‚t        j                  t        j                  t        |«      «      d	¬«      }|j                  «       |k(  sJ ‚y # 1 sw Y   Œ´xY w)
Nóà  some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
some test data
eof
z'input_stream_compressed_and_buffered.gzr   rß  rs  ©r]  ro  r]  r\  rV  rÛ  rÜ  s         r&   Ú3test_input_stream_file_path_compressed_and_bufferedrç  Ê  sË   € à/€DÜ�m‰m˜DÓ!€GØÐBÑB€IÜ	Œc�)‹n˜dÔ	# qØ	�‰�Ô÷ 
$ô �_‰_˜Y°BÀFÔK€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_œS ›^¸Ô<€FØ�;‰;‹=˜DÒ Ð Ð Ü�_‰_œWŸ\™\¬#¨i«.Ó9ÀtÔL€FØ�;‰;‹=˜DÒ Ð Ñ ÷ 
$Ð	#ús   ²C7Ã7D c                 óª  — d}t        |«      }t        j                  |«      }|j                  «       |k(  sJ ‚t	        j
                  |«      }t        |«      }t        j                  |«      }|j                  «       |k(  sJ ‚|j                  d«       t        j                  |d¬«      }|j                  «       |k(  sJ ‚| dz  }t        t        |«      d«      5 }|j                  |«       d d d «       t        t        |«      d«      5 }t        j                  |«      }|j                  «       |k(  sJ ‚	 d d d «       y # 1 sw Y   ŒSxY w# 1 sw Y   y xY w)Nr{  r   rs  rÊ  rË  r   r“   )
r   r3   rË  r   rs  r‚  r   r   r©   r   )r¬   rJ   r®   rZ   rÍ  rØ  r%   s          r&   Útest_input_stream_python_fileré  Ú  s  € à.€DÜ
�$‹-€Cä�_‰_˜SÓ!€FØ�;‰;‹=˜DÒ Ð Ð ä�m‰m˜DÓ!€GÜ
�'Ó
€CÜ�_‰_˜SÓ!€FØ�;‰;‹=˜GÒ#Ð#Ð#Ø‡H�HˆQ„KÜ�_‰_˜S¨fÔ5€FØ�;‰;‹=˜DÒ Ð Ð à˜Ñ'€IÜ	Œc�)‹n˜dÔ	# qØ	�‰�Œ÷ 
$ä	Œc�)‹n˜dÔ	# qÜ—‘ Ó#ˆØ�{‰{‹} Ò$Ð$Ñ$÷ 
$Ð	#÷ 
$Ð	#úç	#Ð	#ús   ÃD=Ä+E	Ä=EÅ	Ec                  ó  — d} t        j                  | «      }t        j                  |«      }t        j                  |«      }||u sJ ‚t        j                  |«      }t        j                  |d¬«      }|j                  «       | k(  sJ ‚y rÉ  )rs  r‚  r3   r—   rË  r   )rJ   rÍ  rž   rZ   s       r&   Útest_input_stream_native_filerë  ò  sq   € à.€DÜ�m‰m˜DÓ!€GÜ�_‰_˜WÓ%€FÜ�_‰_˜VÓ$€FØ�VÑÐÐÜ�_‰_˜WÓ%€FÜ�_‰_˜V°Ô8€FØ�;‰;‹=˜DÒ Ð Ñ r-   c                 ó¨  — t        d«      }t        j                  t        «      5  t	        j
                  |d¬«       d d d «       t        «       t        «       fD ]9  }t        j                  t        «      5  t	        j
                  |«       d d d «       Œ; t        «       5  t	        j
                  d«       d d d «       t        t        | dz  «      d«      5 }t        j                  t        d¬«      5  t	        j
                  |«       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   Œ|xY w# 1 sw Y   Œ6xY w# 1 sw Y   y xY w)	Nr-   r!  rÊ  rX  Únew_filer   zreadable file expectedr1   )r|   r   r*   rñ   r3   rË  rk   r   r9   r.   r   r©   )r¬   r:   rÌ  r%   s       r&   Útest_input_stream_errorsrî  þ  sè   € Ü
�S‹/€CÜ	�‰”zÕ	"Ü
�‰˜¨Õ/÷ 
#ô “œX›ZÓ(ˆÜ�]‰]œ9Õ%Ü�O‰O˜CÔ ÷ &Ð%ð )ô 
Õ	 Ü
�‰Ð+Ô,÷ 
!ô 
Œc�&˜:Ñ%Ó&¨Ô	-°Ü�]‰]œ9Ð,DÖEÜ�O‰O˜AÔ÷ F÷ 
.Ð	-÷ 
#Ð	"ú÷ &Ð%ú÷ 
!Ð	 ú÷ FÐEú÷ 
.Ð	-úsG   ¥DÁ5D$ÂD0ÃEÃ1D<ÄEÄD!Ä$D-	Ä0D9Ä<E	ÅEÅEc                  óD  — d} t        t        | «      «      }t        j                  t        j                  |«      «      }|j                  | «       || k(  sJ ‚t        t        | «      «      }t        j                  t        |«      «      }|j                  | «       || k(  sJ ‚y )Nr{  )rk   r5   r3   Úoutput_streamrÆ   r   r|   )rJ   r:   rZ   s      r&   Útest_output_stream_bufferrñ    s€   € Ø.€DÜ
”C˜“IÓ
€CÜ×ÑœbŸl™l¨3Ó/Ó0€FØ
‡L�L�ÔØ�$Š;Ðˆ;ä
”C˜“IÓ
€CÜ×Ñœj¨›oÓ.€FØ
‡L�L�ÔØ�$Š;Ð‰;r-   c                  óÐ   —  G d„ d«      }  | «       }t        j                  |«      }|j                  d«      sJ ‚|j                  j	                  «       j                  «       dk(  sJ ‚y )Nc                   ó.   — e Zd Zd„ Zd„ Zed„ «       Zd„ Zy)ú2test_output_stream_duck_typing.<locals>.DuckWriterc                 ó6   — t        j                  «       | _        y r)   )r3   r¯  r:   ru   s    r&   Ú__init__z;test_output_stream_duck_typing.<locals>.DuckWriter.__init__  s   € Ü×,Ñ,Ó.ˆD�Hr-   c                  ó   — y r)   r,   ru   s    r&   r8   z8test_output_stream_duck_typing.<locals>.DuckWriter.close"  rw   r-   c                  ó   — yry   r,   ru   s    r&   r7   z9test_output_stream_duck_typing.<locals>.DuckWriter.closed%  rz   r-   c                 ó:   — | j                   j                  |«       y r)   )r:   r   )rv   rJ   s     r&   r   z8test_output_stream_duck_typing.<locals>.DuckWriter.write)  s   € Ø�H‰H�N‰N˜4Õ r-   N)r~   r   r€   rö  r8   r�   r7   r   r,   r-   r&   Ú
DuckWriterrô    s%   „ ò	/ò	ð 
ñ	ó 
ð	ó	!r-   rú  rÕ  )r3   rð  r   r:   r6   r¢   )rú  Úduck_writerrZ   s      r&   Útest_output_stream_duck_typingrü    s[   € ÷!ñ !ñ “,€KÜ×Ñ˜kÓ*€FØ�<‰<˜Ô!Ð!Ð!Ø�?‰?×#Ñ#Ó%×0Ñ0Ó2°hÒ>Ð>Ñ>r-   c                 ó˜   — d}| dz  }d„ } |||«        |t        |«      |«        |t        j                  t        |«      «      |«       y )Nr{  rð  c                 óú   — t        j                  | «      5 }|j                  |«       d d d «       t        t	        | «      d«      5 }|j                  «       |k(  sJ ‚	 d d d «       y # 1 sw Y   Œ>xY w# 1 sw Y   y xY wr’   ©r3   rð  r   r   r©   r   )rØ  rJ   rZ   r%   s       r&   Ú
check_dataz0test_output_stream_file_path.<locals>.check_data6  s_   € Ü×Ñ˜iÔ(¨FØ�L‰L˜Ô÷ )ä”#�i“. $Ô'¨1Ø—6‘6“8˜tÒ#Ð#Ñ#÷ (Ð'÷ )Ð(úç'Ð'ús   –A%ÁA1Á%A.Á1A:)r©   r„  r…  ©r¬   rJ   rØ  r   s       r&   Útest_output_stream_file_pathr  2  sG   € Ø.€DØ˜Ñ(€Iò$ñ ˆy˜$ÔÙŒs�9‹~˜tÔ$ÙŒw�|‰|œC 	›NÓ+¨TÕ2r-   c           	      ó  — d}| dz  }d„ }t        j                   |||«      «      |k(  sJ ‚t        j                   |t        |«      |«      «      |k(  sJ ‚t        j                   |t        j                  t        |«      «      |«      «      |k(  sJ ‚t        j                   |||d¬«      «      |k(  sJ ‚ |||d ¬«      |k(  sJ ‚t        j                  t        d¬«      5   |||d¬«      |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)	Nr{  zoutput_stream.gzc                 óð   — t        j                  | fi |¤Ž5 }|j                  |«       d d d «       t        t	        | «      d«      5 }|j                  «       cd d d «       S # 1 sw Y   Œ8xY w# 1 sw Y   y xY wr’   rÿ  ©rØ  rJ   ÚkwargsrZ   r%   s        r&   r   z;test_output_stream_file_path_compressed.<locals>.check_dataF  óY   € Ü×Ñ˜iÑ2¨6Ò2°fØ�L‰L˜Ô÷ 3ä”#�i“. $Ô'¨1Ø—6‘6“8÷ (Ñ'÷ 3Ð2úç'Ð'úó   —A ÁA,Á A)Á,A5rs  rÊ  zInvalid value for compressionr1   Úrabbit)rs  r„  r©   r„  r…  r   r*   rñ   r  s       r&   Ú'test_output_stream_file_path_compressedr
  A  s
  € à.€DØÐ+Ñ+€Iòô �?‰?™: i°Ó6Ó7¸4Ò?Ð?Ð?Ü�?‰?™:¤c¨)£n°dÓ;Ó<ÀÒDÐDÐDÜ�?‰?Ù”7—<‘<¤ I£Ó/°Ó6ó8Ø;?ò@ð @ð @ô �?‰?Ù�9˜d°Ô7ó9Ø<@òAð Að Aá�i °4Ô8¸DÒ@Ð@Ð@ä	�‰”zÐ)HÖ	IÙ˜) T°xÔ@ÀDÒHÐHÑH÷ 
J×	IÑ	Iús   Ã!C<Ã<Dc                 óÒ  — d}| dz  }d„ }t        j                  |d¬«      }t        |t         j                  «      sJ ‚d}t	        j
                  t        |¬«      5   |||d¬«      |k(  sJ ‚	 d d d «        |||d	¬«      |k(  sJ ‚ |||d
¬«      |k(  sJ ‚ |t        |«      |d	¬«      |k(  sJ ‚ |t        j                  t        |«      «      |d	¬«      }||k(  sJ ‚y # 1 sw Y   ŒqxY w)Nr{  úoutput_stream.bufferedc                 óR  — t        j                  | fi |¤Ž5 }|j                  dd«      dkD  rt        |t         j                  «      sJ ‚|j                  |«       d d d «       t        t        | «      d«      5 }|j                  «       cd d d «       S # 1 sw Y   Œ8xY w# 1 sw Y   y xY w)Nr]  r   r“   )	r3   rð  Úgetr‰   rn  r   r   r©   r   r  s        r&   r   z9test_output_stream_file_path_buffered.<locals>.check_data]  s†   € Ü×Ñ˜iÑ2¨6Ò2°fØ�z‰z˜-¨Ó+¨aÒ/Ü! &¬"×*AÑ*AÔBÐBÐBØ�L‰L˜Ô÷ 3ô ”#�i“. $Ô'¨1Ø—6‘6“8÷ (Ñ'÷	 3Ð2ú÷ (Ð'ús   —ABÁ7BÂBÂB&r   r\  rà  r1   i€ÿÿÿrß  rV  )
r3   rð  r‰   rë  r   r*   rñ   r©   r„  r…  )r¬   rJ   rØ  r   râ  rP  r>   s          r&   Ú%test_output_stream_file_path_bufferedr  Y  së   € Ø.€DØÐ1Ñ1€Iòô ×(Ñ(¨ÀÔBÐÜÐ'¬¯©Ô3Ð3Ð3à
0€CÜ	�‰”z¨Ö	-Ù˜) T°tÔ<ÀÒDÐDÑD÷ 
.ñ �i °2Ô6¸$Ò>Ð>Ð>Ù�i °4Ô8¸DÒ@Ð@Ð@Ù”c˜)“n d¸Ô;¸tÒCÐCÐCáœŸ™¤S¨£^Ó4°dÈÔK€FØ�TŠ>Ð‰>÷ 
.Ð	-ús   ÁCÃC&c                 óø   — d}| dz  }d„ } |||d¬«      }t        j                  |«      |k(  sJ ‚ |||d¬«      }t        j                  |«      |k(  sJ ‚ |||dd¬«      }t        j                  |«      |k(  sJ ‚y )	Nrå  z(output_stream_compressed_and_buffered.gzc                 óð   — t        j                  | fi |¤Ž5 }|j                  |«       d d d «       t        t	        | «      d«      5 }|j                  «       cd d d «       S # 1 sw Y   Œ8xY w# 1 sw Y   y xY wr’   rÿ  r  s        r&   r   zHtest_output_stream_file_path_compressed_and_buffered.<locals>.check_datay  r  r  rß  r\  rV  rs  ræ  ©rs  r„  )r¬   rJ   rØ  r   r>   s        r&   Ú4test_output_stream_file_path_compressed_and_bufferedr  t  sŠ   € à/€DØÐCÑC€Iòñ ˜	 4°RÔ8€FÜ�?‰?˜6Ó" dÒ*Ð*Ð*á˜	 4°TÔ:€FÜ�?‰?˜6Ó" dÒ*Ð*Ð*á˜	 4°TÀvÔN€FÜ�?‰?˜6Ó" dÒ*Ð*Ñ*r-   c                 óX   — d}| dz  }d„ } |||d¬«      |k(  sJ ‚ |||d¬«      |k(  sJ ‚y )Ns   some test data
r  c                 óð   — t        j                  | fi |¤Ž}|j                  |«       ~t        j                  «        t        t        | «      d«      5 }|j                  «       cd d d «       S # 1 sw Y   y xY wr’   )r3   rð  r   r    r¡   r   r©   r   r  s        r&   r   z1test_output_stream_destructor.<locals>.check_data�  sT   € Ü×!Ñ! )Ñ6¨vÑ6ˆØ�‰�TÔØÜ
�
‰
ŒÜ”#�i“. $Ô'¨1Ø—6‘6“8÷ (×'Ò'ús   ÁA,Á,A5r   r\  rV  r,   r  s       r&   Útest_output_stream_destructorr  ‰  sI   € ð €DØÐ1Ñ1€Iòñ �i °1Ô5¸Ò=Ð=Ð=Ù�i °4Ô8¸DÒ@Ð@Ñ@r-   c                 ór   ‡ — d}ˆ fd„} ||«      |k(  sJ ‚t        j                   ||d¬«      «      |k(  sJ ‚y )Nr{  c                 ó>  •— t        ‰dz  «      }t        |d«      5 }t        j                  |fi |¤Ž5 }|j	                  | «       d d d «       d d d «       t        |d«      5 }|j                  «       cd d d «       S # 1 sw Y   Œ7xY w# 1 sw Y   Œ;xY w# 1 sw Y   y xY w)NÚoutput_stream_filer   r“   )r©   r   r3   rð  r   r   )rJ   r  rv  r%   rZ   r¬   s        €r&   r   z2test_output_stream_python_file.<locals>.check_data   s�   ø€ ô �Ð.Ñ.Ó/ˆÜ�"�dŒ^˜qÜ×!Ñ! !Ñ. vÒ.°&Ø—‘˜TÔ"÷ /÷ ô �"�dŒ^˜qØ—6‘6“8÷ ‰^÷ /Ð.ú÷ ˆ^ú÷ ˆ^ús.   œB³A;ÁBÁ!BÁ;B	Â BÂBÂBrs  rÊ  r  )r¬   rJ   r   s   `  r&   Útest_output_stream_python_filer  œ  s@   ø€ à.€Dô	ñ �dÓ˜tÒ#Ð#Ð#Ü�?‰?™: d¸Ô?Ó@ÀDÒHÐHÑHr-   c                 ó˜  — t        t        «       «      }t        j                  t        «      5  t        j                  |d¬«       d d d «       t        «       t        «       fD ]9  }t        j                  t        «      5  t        j                  |«       d d d «       Œ; t        | dz  «      }t        |d«      5 }	 d d d «       t        |d«      5 }t        j                  t        d¬«      5  t        j                  |«       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   ŒpxY w# 1 sw Y   Œ6xY w# 1 sw Y   y xY w)Nr!  rÊ  rí  r   r“   zwritable file expectedr1   )r|   rk   r   r*   rñ   r3   rð  r   r9   r©   r   )r¬   r:   rÌ  rv  r%   s        r&   Útest_output_stream_errorsr  ¯  së   € Ü
”Y“[Ó
!€CÜ	�‰”zÕ	"Ü
×Ñ˜¨%Õ0÷ 
#ô “œX›ZÓ(ˆÜ�]‰]œ9Õ%Ü×Ñ˜SÔ!÷ &Ð%ð )ô 
ˆV�jÑ Ó	!€BÜ	ˆb�$Œ˜1Ø÷ 
ä	ˆb�$Œ˜1Ü�]‰]œ9Ð,DÖEÜ×Ñ˜QÔ÷ F÷ 
ˆ÷ 
#Ð	"ú÷ &Ð%ú÷ 
ˆú÷ FÐEú÷ 
ˆúsG   ­DÁ=DÂ7D(ÃE Ã)D4Ã?E ÄDÄD%	Ä(D1Ä4D=	Ä9E Å E	r)   )T)�rp  Ú
contextlibr   r  Úior   r   r   r   r   rº  r    rs  rC  r    r„  r   r  r   r   rµ   Únumpyrå   r<  Úpyarrow.utilr	   Úpyarrowr
   r3   r'   r.   r?   rL   ÚmarkÚparametrizer^   re   rh   rp   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  r7  rT  rj  rn  Úparamrö  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&  r   r-  r6  r?  rF  rJ  rM  rV  rY  ra  rf  ri  rp  rr  ry  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&   Ú<module>r&     sR  ðó$ Ý %Û ß IÕ IÛ Û 	Û Û Û 	Û Û Û Û 
Û Û ðÛõ Ý Û óð. ñó ðò"ò8,ðB ‡�×Ñ˜Ð#5Ó6Ø‡�×Ñ˜¨Ó8ñ'ó 9ó 7ð'òTò"#ò
&ò'ò8%ò$òòò6,ò
"ò )ò2ò(	ò 3ò.ò
4ò.ò.òòð ‡�×ÑÐ3ò&ó'ñ,ó	'ð,ð
 ‡�×Ññ	ó ð	ð ‡�×Ññ'ó ð'ð" ‡�×Ññ*ó ð*ð( ‡�×Ññó ðò:òò0Pòf#ð ‡�×Ññ)ó ð)ð ‡�×Ññ
ó ð
ò
'òð ‡�×ÑñCó ðCòL-ò`Jð ‡�×ÑØ‡�×Ñ˜Ø€F‡L�LØ�V—[‘[×&Ñ&¨b¯f©f×.MÑ.MÐ&ÓNôð Ø
Ø	Ø
Øð	)ó 	ñ;ó	ó ð;ð< ‡�×ÑØ‡�×Ñ˜Ø€F‡L�LØ�V—[‘[×&Ñ&¨b¯f©f×.MÑ.MÐ&ÓNôð Ø
Ø	Ø
Øð	)ó 	ñLEó	ó ðLEò^;ò(ò'òò3ð" ‡�×Ññ(ó ð(ò*+ðL ‡�ñó ðð$ 8<ó!òB>ò
,ò ;ò!òò(òV-ò(&òDòòòò6*ò0ò<ð~ ‡�×ÑØ‡L�L�LÑ Ð)Kð ó ñ?óð?ò *ò<ò>:ò"$ð. ‡�×Ññ&ó ð&ò$1òò
"òð ‡�×Ññ3ó ð3ð" ‡�×Ññ
-ó ð
-ò (ð( ‡�×Ññ-ó ð-òð ‡�×Ññó ðò4ð ‡�×Ññ4ó ð4ð ‡�×Ññ
ó ð
ò ð ‡�×Ññó ðò	ò"ð ‡�×ÑÐ9ØØØ€W‡\‚\�)Ó˜fÐ%Ø€W‡\‚\Ð$Ó% vÐ.ð	<ó ñ2óð2òð ‡�×Ñ˜Ø	ØØ
Ø	Ø
Ø€F‡L�LØØ�k‰k×Ñ r§v¡v×'FÑ'FÐÓGôð
)ó 
ñó
ðð" ‡�×ÑØÚ,óñó	ðð,Vð ò-ð ‡�×ÑÐ6òóñ5óð5ð ‡�×ÑÐ6Ø,Ø+ð-ó.ñ7ó.ð7ð ‡�×ÑÐ6Ø,Ø.ðóñó	ðð ‡�×ÑÐ6Ø-Ø-ðóñó	ðð ‡�×Ññ
!ó ð
!ò&ò$!ð ‡�×Ññ$ó ð$ò(:ð4 ‡�×Ññ!ó ð!ð ‡�×Ññ%ó ð%ð. ‡�×Ññ!ó ð!òò"
ò?ò,3ð ‡�×ÑñIó ðIò.ð6 ‡�×Ññ+ó ð+ò(Að& ‡�×ÑñIó ðIó$ øðWD ò Ø	ƒBðús   Á
\
 Ü
\Ü\