Ë
    æÿæi’¤  ã                   ó
  — d 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ZddlmZ ddlmZ 	 ddlZddlZddlmZmZ ddlmZmZmZmZmZ ddlmZm Z m!Z!m"Z" ddl#m$Z$ dd	l%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+ dd
l,m-Z-m.Z.m/Z/ g Z0dZ1e0je                  e1«       e3Z4e0je                  e4«        e5d«      Z6e0je                  e6«        e7d«      Z8e0je                  e8«        e9d«      Z:e0je                  e:«        e;d«      Z<e0je                  e<«        e=d«      Z>e0je                  e>«       dZ?e0je                  e?«       g Z@e0je                  e@«       i ZAe0je                  eA«       eBZCe0je                  eC«       d„ ZD G d„ d«      ZE G d„ deF«      ZGe0je                  eD«       e0je                  eE«       e0je                  eG«        eE«       ZHe0je                  eH«        eG«       ZIe0je                  eI«        e-dddg«       e-de0«      d„ «       «       ZJd„ ZK e-ddd eL«       g«      d„ «       ZMe* e-dg d¢«      d„ «       «       ZNe*d„ «       ZOe*d„ «       ZPe*d„ «       ZQe*d„ «       ZRe*d „ «       ZSe*e) e-dd!d"g«      d#„ «       «       «       ZTe*d$„ «       ZUe*d%„ «       ZVd&„ ZWdyd'„ZXe*d(„ «       ZYe*d)„ «       ZZe*d*„ «       Z[ e-d+d,d-g«      d.„ «       Z\ e-d/d0d1d2j»                  d3«      fd4d5j»                  d3«      fg«      d6„ «       Z^ e-d7d8d9g«      d:„ «       Z_e* e-dg d;¢«       e-d<e«      d=„ «       «       «       Z`d>„ Zad?„ Zb e-d@dAebfdBeafg«      dC„ «       Zc e-dDg dE¢«      dF„ «       Zde*dG„ «       Zee*dH„ «       Zfe*dI„ «       Zge*dJ„ «       Zhe*dK„ «       Zi e-dLdMdNdOj»                   ejÔ                  ddP«      dPz  «      j×                  dQ«      z  gdRdSg¬T«       e-dUg dV¢«      dW„ «       «       Zl e-dXdddYdZdi g«      d[„ «       Zm e-d\g d]¢«      d^„ «       Zn e-d_ddi g«      d`„ «       Zoe'�" G da„ dbe'jà                  «      Zqdc„ Zr G dd„ de«      Zse*df„ «       Ztdg„ Zue*dh„ «       Zve*di„ «       Zwe*dj„ «       Zxe*dk„ «       Zydl„ Zz e-dmddi g«      dn„ «       Z{do„ Z| G dp„ dqe«      Z} G dr„ dse«      Z~dt„ Ze(du„ «       Z€e+dv„ «       Z�e�j                  gZƒe�j                  e�j                  k7  reƒje                  e�j                  «       e* e-dweƒ«      dx„ «       «       Z…y# e$ r dZY �ŒÁw xY w)zz@Test the numpy pickler as a replacement of the standard pickler.é    N)Úclosing)ÚPath)Únumpy_pickleÚregister_compressor)Ú_COMPRESSORSÚ_LZ4_PREFIXÚLZ4_NOT_INSTALLED_ERRORÚBinaryZlibFileÚCompressorWrapper)Ú_IO_BUFFER_SIZEÚ_detect_compressorÚ_ensure_native_byte_orderÚ#_is_numpy_array_byte_order_mismatch)Údata)Úmemory_usedÚnpÚwith_lz4Úwith_memory_profilerÚ
with_numpyÚwithout_lz4)ÚparametrizeÚraisesÚwarnsé   © c              #   ó   K  — | –— y ­w©Nr   )Úxs    úr/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/joblib/test/test_numpy_pickle.pyÚ	_functionr    U   s   è ø€ Ø
ƒGùs   ‚c                   ó   — e Zd Zd„ Zy)Ú_classc                  ó   — y r   r   ©Úselfs    r   Ú_methodz_class._methodZ   ó   € Øó    N©Ú__name__Ú
__module__Ú__qualname__r&   r   r(   r   r"   r"   Y   ó   „ ór(   r"   c                   ó   — e Zd Zd„ Zy)Ú	_newclassc                  ó   — y r   r   r$   s    r   r&   z_newclass._method_   r'   r(   Nr)   r   r(   r   r/   r/   ^   r-   r(   r/   ÚcompressÚmemberc                 óÔ   — | j                  d«      j                  }t        j                  |||¬«       t        j                  |«      }|t        j                  |«      k(  r||k(  sJ ‚y y )Nútest.pkl©r1   )ÚjoinÚstrpathr   ÚdumpÚloadÚcopyÚdeepcopy)Útmpdirr1   r2   ÚfilenameÚ_members        r   Útest_standard_typesr?   p   s`   € ð �{‰{˜:Ó&×.Ñ.€HÜ×Ñ�f˜h°Õ:Ü×Ñ Ó)€Gð ”—‘˜vÓ&Ò&Ø˜Ò Ð Ñ ð 'r(   c                  óˆ   — t        t        «      5  t        j                  dt	        «       «       d d d «       y # 1 sw Y   y xY w)NÚfoo)r   Ú
ValueErrorr   r8   Údictr   r(   r   Útest_value_errorrD   }   s(   € ä	”
Õ	Ü×Ñ˜%¤£Ô(÷ 
×	Ñ	ús	   �8¸AÚwrong_compresséÿÿÿÿé
   c                 óÀ   — dj                  | «      }t        t        «      5 }t        j                  dd| ¬«       d d d «       j                  |«       y # 1 sw Y   ŒxY w)Nz%Non valid compress level given: "{0}"ÚdummyrA   r5   )Úformatr   rB   r   r8   Úmatch)rE   Úexception_msgÚexcinfos      r   Útest_compress_level_errorrN   ƒ   sJ   € ð <×BÑBÀ>ÓR€MÜ	”
Ô	˜wÜ×Ñ˜' 5°>ÕB÷ 
à‡M�M�-Õ ÷ 
Ð	ús   ¡AÁA)FTr   é   Úzlibc                 ó  — | j                  d«      j                  }t        j                  j	                  d«      }|j                  d«      }t        |f|j                  f||f|||gf«      D ]Ù  \  }}t        j                  |||¬«      }t        |«      dk(  sJ ‚|d   |k(  sJ ‚t        j                  j                  |d   «      sJ ‚t        j                  |«      }|D ]  }	t        |	t        j                   «      rŒJ ‚ t        j"                  j%                  t        j&                  |«      t        j&                  |«      «       ŒÛ t        j(                  |dz   ddt        j*                  ¬	«      }t        j                  |||¬«      }t        |«      dk(  sJ ‚t        j                  |«      }t-        |«      t        j(                  ur#t/        |d
«      rt        |t-        |«      «      sJ ‚t        j"                  j%                  ||«       t1        «       }t        j                  |||¬«      }t        |«      dk(  sJ ‚t        j                  |«      }
t        |
t-        |«      «      sJ ‚t        j"                  j%                  |
j2                  |j2                  «       t        j"                  j%                  |
j4                  |j4                  «       t        j"                  j%                  |
j6                  |j6                  «       y )Nr4   r   )rG   é   r5   r   Úmmapúw+é   )ÚmodeÚshapeÚdtypeÚ__array_prepare__)r6   r7   r   ÚrandomÚRandomStateÚrandom_sampleÚ	enumerateÚTr   r8   ÚlenÚosÚpathÚexistsr9   Ú
isinstanceÚndarrayÚtestingÚassert_array_equalÚarrayÚmemmapÚfloat64ÚtypeÚhasattrÚComplexTestObjectÚarray_floatÚ	array_intÚ	array_obj)r<   r1   r=   ÚrndÚaÚindexÚobjÚ	filenamesÚobj_ÚitemÚ
obj_loadeds              r   Útest_numpy_persistencerx   Œ   sZ  € ð �{‰{˜:Ó&×.Ñ.€HÜ
�)‰)×
Ñ
 Ó
"€CØ×Ñ˜'Ó"€Aä ! ¨¯© v°°1¨v¸¸1¸a°yÐ AÖB‰
ˆˆsÜ ×%Ñ% c¨8¸hÔGˆ	ô �9‹~ Ò"Ð"Ð"à˜‰|˜xÒ'Ð'Ð'ä�w‰w�~‰~˜i¨™lÔ+Ð+Ð+ô × Ñ  Ó*ˆãˆDÜ˜d¤B§J¡JÕ/Ð/Ð/ð ô 	�
‰
×%Ñ%¤b§h¡h¨s£m´R·X±X¸d³^ÕDð! Cô& �)‰)�H˜vÑ%¨D¸ÄÇÁÔ
L€CÜ×!Ñ! # x¸(ÔC€Iäˆy‹>˜QÒÐÐä×Ñ˜XÓ&€DÜˆCƒyœŸ	™	Ñ!¤g¨cÐ3FÔ&Gä˜$¤ S£	Ô*Ð*Ð*ä‡J�J×!Ñ! $¨Ô,ô Ó
€CÜ×!Ñ! # x¸(ÔC€Iäˆy‹>˜QÒÐÐä×"Ñ" 8Ó,€JÜ�j¤$ s£)Ô,Ð,Ð,Ü‡J�J×!Ñ! *×"8Ñ"8¸#¿/¹/ÔJÜ‡J�J×!Ñ! *×"6Ñ"6¸¿¹ÔFÜ‡J�J×!Ñ! *×"6Ñ"6¸¿¹ÕFr(   c                 ó,  — t        j                  t        dz   t         j                  ¬«      }| j	                  d«      j
                  }t        j                  ||d¬«       t        j                  |«      }t         j                  j                  ||«       y )Néd   ©rX   r4   Tr5   )r   Úonesr   Úuint8r6   r7   r   r8   r9   re   rf   )r<   Ú	big_arrayr=   Úarr_reloadeds       r   Ú2test_numpy_persistence_bufferred_array_compressionr€   ¿   se   € ä—‘œ¨3Ñ.´r·x±xÔ@€IØ�{‰{˜:Ó&×.Ñ.€HÜ×Ñ�i °DÕ9Ü×$Ñ$ XÓ.€Lä‡J�J×!Ñ! )¨\Õ:r(   c                 ó´  — t         j                  j                  d«      }|j                  d«      }| j	                  d«      j
                  }t        j                  ||«       t        j                  |d¬«      }t        |t         j                  «      sJ ‚| j	                  d«      j
                  }t        «       }t        j                  ||«       t        j                  |d¬«      }t        |t        |«      «      sJ ‚t        |j                  t         j                  «      sJ ‚|j                  j                  j                  rJ ‚t        |j                   t         j                  «      sJ ‚|j                   j                  j                  rJ ‚t        |j"                  t         j                  «      rJ ‚t         j$                  j'                  |j                  |j                  «       t         j$                  j'                  |j                   |j                   «       t         j$                  j'                  |j"                  |j"                  «       t        j                  |d¬«      }|j                  j                  j                  sJ ‚d|j                  dd |j                   j                  j                  sJ ‚d|j                   dd t        j                  |d¬«      }t         j$                  j'                  |j                  |j                  «       t         j$                  j'                  |j                   |j                   «       t        j                  |d	¬«       |j                   j                  j                  sJ ‚|j                   j(                  dk(  sJ ‚|j                  j                  j                  sJ ‚|j                  j(                  dk(  sJ ‚y )
Nr   rG   z	test1.pklÚr©Ú	mmap_modez	test2.pklúr+g      $@rT   )r   rZ   r[   r\   r6   r7   r   r8   r9   rc   rh   rl   rj   rm   ÚflagsÚ	writeablern   ro   re   rf   rV   )r<   rp   rq   r=   Úbrs   rw   Úobj_reloadeds           r   Útest_memmap_persistencerŠ   É   sÞ  € ä
�)‰)×
Ñ
 Ó
"€CØ×Ñ˜"Ó€AØ�{‰{˜;Ó'×/Ñ/€HÜ×Ñ�a˜Ô"Ü×Ñ˜(¨cÔ2€Aä�aœŸ™Ô#Ð#Ð#ð �{‰{˜;Ó'×/Ñ/€HÜ
Ó
€CÜ×Ñ�c˜8Ô$Ü×"Ñ" 8°sÔ;€JÜ�j¤$ s£)Ô,Ð,Ð,Ü�j×,Ñ,¬b¯i©iÔ8Ð8Ð8Ø×%Ñ%×+Ñ+×5Ò5Ð5Ð5Ü�j×*Ñ*¬B¯I©IÔ6Ð6Ð6Ø×#Ñ#×)Ñ)×3Ò3Ð3Ð3ä˜*×.Ñ.´·	±	Ô:Ð:Ð:Ü‡J�J×!Ñ! *×"8Ñ"8¸#¿/¹/ÔJÜ‡J�J×!Ñ! *×"6Ñ"6¸¿¹ÔFÜ‡J�J×!Ñ! *×"6Ñ"6¸¿¹ÔFô ×"Ñ" 8°tÔ<€JØ×!Ñ!×'Ñ'×1Ò1Ð1Ð1Ø#'€J×Ñ˜1˜RÐ Ø×Ñ×%Ñ%×/Ò/Ð/Ð/Ø!#€J×Ñ˜˜2Ðä×$Ñ$ X¸Ô=€LÜ‡J�J×!Ñ! ,×":Ñ":¸J×<RÑ<RÔSÜ‡J�J×!Ñ! ,×"8Ñ"8¸*×:NÑ:NÔOô ×Ñ�h¨$Õ/Ø×Ñ×%Ñ%×/Ò/Ð/Ð/Ø×Ñ×$Ñ$¨Ò,Ð,Ð,Ø×!Ñ!×'Ñ'×1Ò1Ð1Ð1Ø×!Ñ!×&Ñ&¨$Ò.Ð.Ñ.r(   c                 ó¬  — t         j                  j                  d«      }|j                  d«      }t        j                  ddgt
        ¬«      }||f}| j                  d«      j                  }t        j                  ||«       t        j                  |d¬«      \  }}t        |t         j                  «      sJ ‚t        |t         j                  «      rJ ‚y )	Nr   rG   r   rˆ   r{   r4   r‚   rƒ   )r   rZ   r[   r\   rg   Úobjectr6   r7   r   r8   r9   rc   rh   )r<   rp   rq   rˆ   Ú	constructr=   Úa_cloneÚb_clones           r   Ú$test_memmap_persistence_mixed_dtypesr�   ö   s¯   € ô �)‰)×
Ñ
 Ó
"€CØ×Ñ˜"Ó€AÜ
�‰�!�S�¤Ô(€AØ�A�€IØ�{‰{˜:Ó&×.Ñ.€HÜ×Ñ�i Ô*Ü#×(Ñ(¨¸SÔAÑ€GˆWô �gœrŸy™yÔ)Ð)Ð)ô ˜'¤2§9¡9Ô-Ð-Ð-Ð-r(   c                 ó€  — t         j                  j                  d«      }|j                  d«      }t         j                  j                  |d«      }| j                  d«      j                  }t        j                  ||«       t        j                  |d¬«      }t        |t         j                  j                  «      sJ ‚y )Nr   rG   g      à?r4   r‚   rƒ   )r   rZ   r[   r\   ÚmaÚmasked_greaterr6   r7   r   r8   r9   rc   Úmasked_array)r<   rp   rq   r=   rˆ   s        r   Útest_masked_array_persistencer•   	  sŽ   € ô �)‰)×
Ñ
 Ó
"€CØ×Ñ˜"Ó€AÜ
�‰×Ñ˜Q Ó$€AØ�{‰{˜:Ó&×.Ñ.€HÜ×Ñ�a˜Ô"Ü×Ñ˜(¨cÔ2€AÜ�aœŸ™×+Ñ+Ô,Ð,Ñ,r(   c                 ó¦  — t         j                  j                  d«      }|j                  d«      }| j	                  d«      j
                  }t        j                  ||d¬«       t        t        «      5 }t        j                  |d¬«      }d d d «       dj	                  D �cg c]  }t        |«      ‘Œ c}«      }|D �cg c]  }|j                  ‘Œ }}t        t         j                  «      rJ ‚t         j                  j!                  ||«       t#        |«      dk(  sJ |«       ‚t        |d   «      d	|› d
�k(  sJ ‚y # 1 sw Y   Œ³xY wc c}w c c}w )Nr   rG   r4   r   r5   r…   rƒ   Ú
z6mmap_mode "r+" is not compatible with compressed file z. "r+" flag will be ignored.)r   rZ   r[   r\   r6   r7   r   r8   r   ÚUserWarningr9   ÚstrÚmessagerc   rh   re   rf   r_   )r<   rp   rs   Úthis_filenameÚwarninfoÚreloaded_objÚwÚ	debug_msgs           r   Útest_compress_mmap_mode_warningr      s"  € ô �)‰)×
Ñ
 Ó
"€CØ
×
Ñ
˜BÓ
€CØ—K‘K 
Ó+×3Ñ3€MÜ×Ñ�c˜=°1Õ5Ü	Œ{Ô	˜xÜ#×(Ñ(¨À$ÔGˆ÷ 
à—	‘	©8Ó4©8 aœ3˜q�6¨8Ñ4Ó5€IÙ#+Ó,¡8˜a�—	“	 8€HÐ,Ü˜,¬¯	©	Ô2Ð2Ð2Ü‡J�J×!Ñ! # |Ô4Üˆx‹=˜AÒÐ(˜yÓ(ÐäˆH�Q‰KÓð ØˆÐ:ð<ò 	<ðñ	<÷ 
Ð	üâ4ùÚ,s   Á3D=Â"E	Â?EÄ=ETFc                 ó  — | j                  d«      j                  }t        j                  d«      }t        j                  dt	        d«      z  t        j
                  ¬«      }||fD ]—  }|j                  dz  }|t        t        j                  j                  dd«      «      z   }t        t        j                  |||¬«      }t        d	z   }	||	k  sJ ‚t        t        j                  |«      }d
t        z   }
|||
z   k  rŒ—J ‚ y )Nr4   ©rG   rG   rz   g    €„.A©rW   rX   r   éè  r5   g�íµ ÷Æ0@é    )r6   r7   r   r|   Úintr}   Únbytesr™   rZ   Úrandintr   r   r8   r   r9   )r<   r1   r=   Úsmall_arrayr~   rs   ÚsizeÚobj_filenameÚmem_usedÚwrite_buf_sizeÚread_buf_sizes              r   Útest_memory_usager¯   *  sá   € ð
 �{‰{˜:Ó&×.Ñ.€HÜ—'‘'˜(Ó#€KÜ—‘˜c¤C¨£H™n´B·H±HÔ=€Ià˜YÓ'ˆØ�z‰z˜CÑˆØ¤#¤b§i¡i×&7Ñ&7¸¸4Ó&@Ó"AÑAˆÜœ|×0Ñ0°#°|ÈhÔWˆô )Ð+=Ñ=ˆØ˜>Ò)Ð)Ð)äœ|×0Ñ0°,Ó?ˆð œ_Ñ,ˆØ˜$ Ñ.Ó.Ð.Ð.ñ (r(   c                 ó–  — t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      t        j                  dddd	d
œgd¬«      t        j                  dt         j                  ¬«      j                  «       dg}| j                  d«      j                  }t        j                  ||d¬«      }t        |«      dk(  sJ ‚t        j                  |«      }t        ||«      D ]m  \  }}t        |t         j                  «      rGt        |«      }|j                  |j                  k(  sJ ‚t         j                   j#                  ||«       Œg||k(  rŒmJ ‚ y )Né   ú<i8r{   ú>i8ú<f8ú>f8r   ÚabcrR   ©rq   rˆ   ÚOé   õ   C'est l'Ã©tÃ© !ztemp.pkl.gzr5   )r   ÚarangerX   rg   r}   Útobytesr6   r7   r   r8   r_   r9   Úziprc   rd   r   re   Úassert_equal)r<   Úexpected_listÚfnameÚdumped_filenamesÚresult_listÚresultÚexpecteds          r   Ú$test_compressed_pickle_dump_and_loadrÅ   D  sP  € ô 	�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�‰�!�U !¨!Ñ,Ð-°SÔ9Ü
�	‰	�#œRŸX™XÔ&×.Ñ.Ó0Øð€Mð �K‰K˜Ó&×.Ñ.€Eä#×(Ñ(¨¸ÈÔJÐÜÐÓ  AÒ%Ð%Ð%Ü×#Ñ# EÓ*€KÜ ¨]Ö;Ñˆ�Ü�h¤§
¡
Ô+Ü0°Ó:ˆHØ—<‘< 8§>¡>Ò1Ð1Ð1Ü�J‰J×#Ñ# F¨HÕ5à˜XÓ%Ð%Ð%ñ <r(   c                 óL  — t        j                  d«      }t        j                  d«      }||f}t        j                  d|¬«      }t        j                  d|¬«      }| j                  d«      j                  }t        j                  ||g|«       t        j                  |d¬«      \  }}|j                  |j                  k(  sJ ‚|j                  |v sJ ‚t        j                  |d¬«      \  }	}
|	j                  |j                  k(  sJ ‚|
j                  |j                  k(  sJ ‚y )	Nr²   r³   r±   r{   ztemp.pklT)Úensure_native_byte_orderF)r   rX   r»   r6   r7   r   r8   r9   )r<   Úlittle_endian_dtypeÚbig_endian_dtypeÚ
all_dtypesÚle_arrayÚbe_arrayrÀ   Úle_array_native_loadÚbe_array_native_loadÚle_array_nonnative_loadÚbe_array_nonnative_loads              r   Útest_memmap_loadrÑ   ^  s  € äŸ(™( 5›/ÐÜ—x‘x “ÐØ%Ð'7Ð8€Jä�y‰y˜Ð"5Ô6€HÜ�y‰y˜Ð"2Ô3€Hà�K‰K˜
Ó#×+Ñ+€Eä×Ñ�x Ð*¨EÔ2ä1=×1BÑ1BØ¨ô2Ñ.ÐÐ.ð  ×%Ñ%Ð)=×)CÑ)CÒCÐCÐCØ×%Ñ%¨Ñ3Ð3Ð3ä7C×7HÑ7HØ¨ô8Ñ4ÐÐ4ð #×(Ñ(¨H¯N©NÒ:Ð:Ð:Ø"×(Ñ(¨H¯N©NÒ:Ð:Ñ:r(   c                  óª   — d} t        t        t        j                  | «      ¬«      5  t	        j
                  ddd¬«       d d d «       y # 1 sw Y   y xY w)NzrNative byte ordering can only be enforced if 'mmap_mode' parameter is set to None, but got 'mmap_mode=r+' instead.)rK   z/path/to/some/dump.pklTr…   )rÇ   r„   )r   rB   ÚreÚescaper   r9   )Úexpected_msgs    r   Útest_invalid_parameters_raiserÖ   z  sB   € ð	:ð ô
 
”
¤"§)¡)¨LÓ"9Ö	:Ü×ÑØ$¸tÈtõ	
÷ 
;×	:Ñ	:ús   §A	Á	Ac                 ó  — t        j                  d| «      }t        |j                  d«      «      }dddœ}|j	                  dd«      }|j	                  |d«      }||k\  �r	 t        j                  d¬«      5 }t        j                  d	«       t        j                  | |¬
«      }	ddd«       t        j                  j                  | «      }
d|
v sd|
v rdnd}t        j                  d|
«      r|�dnd}||z   }t        «      |k(  s%J d|› d|D �cg c]  }|j                  ‘Œ c}› �«       ‚|D �cg c]  }t!        |j"                  t$        «      sŒ|‘Œ! }}|D �cg c]  }t!        |j"                  t&        «      sŒ|‘Œ! }}|D ]+  }t)        |j                  «      dj+                  | «      k(  rŒ+J ‚ |D ]F  }t        j,                  | «      }t        j                  d|› d�t)        |j                  «      «      rŒFJ ‚ t/        	|«      D ]m  \  }}t1        |t2        j4                  «      rGt7        |«      }|j8                  |j8                  k(  sJ ‚t2        j:                  j=                  ||«       Œg||k(  rŒmJ ‚ y	 t        j                  | «       tK        d«      ‚# 1 sw Y   �ŒöxY wc c}w c c}w c c}w # t>        $ r�}|dk(  r#t1        |t@        «      sJ ‚d}|t)        |«      v sQJ ‚| jC                  d«      r8tD        jF                  d   r%t1        |t@        «      sJ ‚tH        t)        |«      v sJ ‚‚ Y d}~yY d}~yd}~ww xY w# t@        $ r4}dj+                  |«      }|t)        |jF                  «      v sJ ‚Y d}~yd}~ww xY w)z�Helper function to test joblib pickle content.

    Note: currently only pickles containing an iterable are supported
    by this function.
    z.+py(\d)(\d).+r   rR   rO   )rR   rO   rU   T)ÚrecordÚalwaysrƒ   Nz_0.9z_0.8.4r   z_0.1.+.pkl$z6Did not get the expected number of warnings. Expected z but got warnings: zkThe file '{0}' has been generated with a joblib version less than 0.10. Please regenerate this pickle file.zmemmapped.+z.+segmentation faultzPYou may be trying to read with python 3 a joblib pickle generated with python 2.ú.lz4z>Numpy pickle loading should have raised a ValueError exceptionz unsupported pickle protocol: {0})&rÓ   rK   r¦   ÚgroupÚgetÚwarningsÚcatch_warningsÚsimplefilterr   r9   r`   ra   ÚbasenameÚsearchr_   rš   Ú
issubclassÚcategoryÚDeprecationWarningr˜   r™   rJ   rÔ   r½   rc   r   rd   r   rX   re   r¾   Ú	ExceptionrB   Úendswithr   Úargsr	   ÚAssertionError)r=   r¿   r„   Úversion_matchÚpy_version_used_for_writingÚ%py_version_to_default_pickle_protocolÚpickle_reading_protocolÚpickle_writing_protocolrœ   rÂ   Úfilename_baseÚ expected_nb_deprecation_warningsÚexpected_nb_user_warningsÚexpected_nb_warningsrž   Údeprecation_warningsÚuser_warningsÚescaped_filenamerÃ   rÄ   Úexcrš   Úes                          r   Ú_check_pickler÷   †  s†  € ô —H‘HÐ.°Ó9€MÜ"% m×&9Ñ&9¸!Ó&<Ó"=Ðà01°a©LÐ)ØC×GÑGÈÈ1ÓMÐØC×GÑGØ# QóÐð Ð"9Ó9ð>	Ü×(Ñ(°Õ5¸Ü×%Ñ% hÔ/Ü*×/Ñ/°ÀIÔN�÷ 6ô ŸG™G×,Ñ,¨XÓ6ˆMà Ñ-°¸]Ñ1J‘ÐQRð -ô —I‘I˜m¨]Ô;À	Ð@Uñ àð &ð 1Ð3LÑLð !ô �x“=Ð$8Ò8ð ØHØ'Ð(Ð(;Ù'/Ó0¡x !�A—I“I xÑ0Ð1ð3óÐ8ñ $ó$Ù#�a¤z°!·*±*Ô>PÕ'Q’˜8ð !ð $ñ )1ÓX© 1´J¸q¿z¹zÌ;Õ4WšQ¨ˆMÐXÛ)�ä˜Ÿ	™	“Nð#ç#)¡6¨(Ó#3ó4ðð4ð *ó #�Ü#%§9¡9¨XÓ#6Ð Ü—y‘yØ!Ð"2Ð!3Ð3GÐHÌ#ÈaÏiÉiË.õð ð ð #ô %(¨°]Ö$CÑ �˜Ü˜h¬¯
©
Ô3Ü8¸ÓB�HØ!Ÿ<™<¨8¯>©>Ò9Ð9Ð9Ü—J‘J×+Ñ+¨F°HÕ=à! XÓ-Ð-Ð-ñ %Dð2	*Ü×Ñ˜hÔ'Ü ØPóð ÷G 6Ñ5üò& 1ùò$ùò Yøô, ò 	ð +¨aÒ/Ü! #¤zÔ2Ð2Ð2ðHð ð ¤# c£(Ñ*Ð*Ð*Ø×"Ñ" 6Ô*¬x¯}©}¸QÒ/?Ü! #¤zÔ2Ð2Ð2Ü.´#°c³(Ñ:Ð:Ð:àô ;ô +ûð	ûô. ò 	*Ø8×?Ñ?Ð@WÓXˆGØœc !§&¡&›kÑ)Ð)Õ)ûð	*úsŽ   Á!J4 Á7-JÂ$A+J4 ÄJ%Ä"J4 Ä/J*ÅJ*ÅJ4 ÅJ/Å9J/Å=.J4 Æ,A
J4 Ç7A;J4 É3J4 É8 M ÊJ"ÊJ4 Ê4	L>Ê=A2L9Ì9L>Í	M>Í
*M9Í9M>c            
      ó*  ‡— t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      t        j                  dddddœgd	¬«      t        j                  d
t         j                  ¬«      j                  «       t        j                  g d¢t        j                  d«      ¬«      dg} t        j                  j                  t        j                  j                  t        j                  «      «      }d}t        �|dz  }t        j                  |«      D �‡cg c]6  Št        ˆfd„|D «       «      r t        j                  j!                  |‰«      ‘Œ8 }}|D ]  }t#        || «       Œ y c c}w )Nr±   r²   r{   r´   r   r¶   rR   r·   r¸   r¹   ©r   r   rR   rº   )ú.pklú.gzz.gzipú.bz2Úlz4)ú.xzú.lzmac              3   ó@   •K  — | ]  }‰j                  |«      –— Œ y ­wr   )ræ   )Ú.0ÚextÚfns     €r   Ú	<genexpr>z<test_joblib_pickle_across_python_versions.<locals>.<genexpr>ÿ  s   øè ø€ Ð=Ñ+< Cˆr�{‰{˜3×Ñ+<ùs   ƒ)r   r»   rX   rg   r}   r¼   Úmatrixr`   ra   ÚdirnameÚabspathr   Ú__file__ÚlzmaÚlistdirÚanyr6   r÷   )r¿   Útest_data_dirÚpickle_extensionsr  Úpickle_filenamesrÀ   s      `  r   Ú)test_joblib_pickle_across_python_versionsr  á  s)  ø€ ô 	�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�‰�!�U !¨!Ñ,Ð-°SÔ9Ü
�	‰	�#œRŸX™XÔ&×.Ñ.Ó0ô 	�	‰	’)¤2§8¡8¨E£?Ô3Øð
€Mô  —G‘G—O‘O¤B§G¡G§O¡O´D·M±MÓ$BÓC€Mà?ÐÜÐØÐ-Ñ-Ðô —*‘*˜]Ô+ôá+ˆBÜÓ=Ñ+<Ó=Ô=ô 	�‰�‰�] BÕ'Ø+ð ð ó "ˆÜ�e˜]Õ+ñ "ùòs   Ä?;Fc            
      ó
  — t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      t        j                  dddddœgd	¬«      t        j                  d
t         j                  ¬«      j                  «       t        j                  g d¢t        j                  d«      ¬«      dg} t        j                  j                  t        j                  j                  t        j                  «      «      }t        j                  |«      D �cg c]3  }|j                  d«      r t        j                  j                  ||«      ‘Œ5 }}|D ]  }t!        || d¬«       Œ y c c}w )Nr±   r²   r{   r´   r   r¶   rR   r·   r¸   r¹   rù   rº   rú   r‚   rƒ   )r   r»   rX   rg   r}   r¼   r  r`   ra   r  r  r   r  r
  ræ   r6   r÷   )r¿   r  r  r  rÀ   s        r   Ú3test_joblib_pickle_across_python_versions_with_mmapr    s  € ô 	�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�‰�!�U !¨!Ñ,Ð-°SÔ9Ü
�	‰	�#œRŸX™XÔ&×.Ñ.Ó0ô 	�	‰	’)¤2§8¡8¨E£?Ô3Øð
€Mô —G‘G—O‘O¤B§G¡G§O¡O´D·M±MÓ$BÓC€Mô —*‘*˜]Ô+óá+ˆBØ�;‰;�vÔô 	�‰�‰�] BÕ'Ø+ð ð ó
 "ˆÜ�e˜]°cÖ:ñ "ùòs   Ä08F c                  ól  — t        j                  ddgddg¬«      t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      g} | D ]§  }t        j
                  d	k(  rt        |«      rJ ‚t        |«      sJ ‚t        |«      }|j                  j                  r<|j                  j                  j                  «       D ]  }|d
   j
                  dk(   Œ Œ�|j                  j
                  dk(  rŒ§J ‚ t        j                  ddgddg¬«      t        j                  dt        j                  d«      ¬«      t        j                  dt        j                  d«      ¬«      g}|D ]§  }t        j
                  dk(  rt        |«      rJ ‚t        |«      sJ ‚t        |«      }|j                  j                  r<|j                  j                  j                  «       D ]  }|d
   j
                  dk(   Œ Œ�|j                  j
                  dk(  rŒ§J ‚ y )N)r   g       @)rO   g      @)Ú r³   )r  rµ   r{   rO   r³   rµ   Úbigr   Ú=)r  r²   )r  r´   r²   r´   Úlittle)
r   rg   r»   rX   ÚsysÚ	byteorderr   r   ÚfieldsÚvalues)Ú	be_arraysrg   Ú	convertedÚfÚ	le_arrayss        r   Ú.test_numpy_array_byte_order_mismatch_detectionr    sÀ  € ô 	�‰�(˜HÐ%¨k¸;Ð-GÔHÜ
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+ð€Ió ˆÜ�=‰=˜EÒ!Ü:¸5ÔAÐAÐAä6°uÔ=Ð=Ð=Ü-¨eÓ4ˆ	Ø�?‰?×!Ò!Ø—_‘_×+Ñ+×2Ñ2Ö4�Ø�!‘—‘ #Ó%ñ 5ð —?‘?×,Ñ,°Ó3Ð3Ð3ð ô 	�‰�(˜HÐ%¨k¸;Ð-GÔHÜ
�	‰	�!œ2Ÿ8™8 E›?Ô+Ü
�	‰	�!œ2Ÿ8™8 E›?Ô+ð€Ió ˆÜ�=‰=˜HÒ$Ü:¸5ÔAÐAÐAä6°uÔ=Ð=Ð=Ü-¨eÓ4ˆ	Ø�?‰?×!Ò!Ø—_‘_×+Ñ+×2Ñ2Ö4�Ø�!‘—‘ #Ó%ñ 5ð —?‘?×,Ñ,°Ó3Ð3Ð3ñ r(   Úcompress_tuple)rP   rO   ©ÚgziprO   c                 óÔ   — | j                  d«      j                  }t        j                  d||¬«       t	        |d«      5 }t        |«      |d   k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr4   rI   r5   Úrbr   ©r6   r7   r   r8   Úopenr   )r<   r   r=   r  s       r   Útest_compress_tuple_argumentr'  J  sZ   € ð �{‰{˜:Ó&×.Ñ.€HÜ×Ñ�g˜x°.ÕAä	ˆh˜Ô	 Ü! !Ó$¨°qÑ(9Ò9Ð9Ñ9÷ 
×	Ñ	ús   Á AÁA'zcompress_tuple,message))rP   rO   Úextraz9Compress argument tuple should contain exactly 2 elements)ÚwrongrO   z(Non valid compression method given: "{}"r)  )rP   r)  z$Non valid compress level given: "{}"c                 óÔ   — | j                  d«      j                  }t        t        «      5 }t	        j
                  d||¬«       d d d «       j                  |«       y # 1 sw Y   ŒxY w)Nr4   rI   r5   )r6   r7   r   rB   r   r8   rK   )r<   r   rš   r=   rM   s        r   Ú&test_compress_tuple_argument_exceptionr+  T  sN   € ð$ �{‰{˜:Ó&×.Ñ.€Hä	”
Ô	˜wÜ×Ñ˜' 8°nÕE÷ 
à‡M�M�'Õ÷ 
Ð	ús   «AÁA'Úcompress_stringrP   r"  c                 óÎ   — | j                  d«      j                  }t        j                  d||¬«       t	        |d«      5 }t        |«      |k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr4   rI   r5   r$  r%  )r<   r,  r=   r  s       r   Útest_compress_string_argumentr.  m  sU   € ð �{‰{˜:Ó&×.Ñ.€HÜ×Ñ�g˜x°/ÕBä	ˆh˜Ô	 Ü! !Ó$¨Ò7Ð7Ñ7÷ 
×	Ñ	ús   Á AÁA$)r   rO   é   Úcmethodc                 ó¼  — | j                  d«      j                  }t        j                  dd¬«      t	        d«      dddœg d	i d
df}|dv rt
        €t        j                  d«       n-|dk(  r(t        j                  d
   rt        j                  d«       |dz   |z   }|D ]°  }t        j                  ||||f¬«       t        |d«      5 }t        |«      |k(  sJ ‚	 d d d «       t        j                  |«      }t        |t!        |«      «      sJ ‚t        |t        j"                  «      r!t        j$                  j'                  ||«       Œª||k(  rŒ°J ‚ y # 1 sw Y   ŒzxY w)Nr4   )rz   rz   Úf8r£   rG   r   rˆ   )rq   rR   r   r   g      ð?©r	  Úxzzlzma is support not availablerý   zlz4 is not installed.Ú.r5   r$  )r6   r7   r   r|   Úranger	  ÚpytestÚskipr   rç   r   r8   r&  r   r9   rc   rj   rd   re   rf   )	r<   r1   r0  r=   ÚobjectsÚdump_filenamers   r  r‰   s	            r   Útest_joblib_compression_formatsr;  w  s:  € ð �{‰{˜:Ó&×.Ñ.€Hä
�‰�j¨Ô-Üˆb‹	Ø�CÑØ
Ø
Ø
Ø	Øð	€Gð �.Ñ ¤T \Ü�‰Ð3Õ4à	�EÒ	œhŸm™m¨AÒ.ô 	�‰Ð+Ô,à˜s‘N WÑ,€MÛˆÜ×Ñ˜#˜}¸ÀÐ7JÕKä�- Ô&¨!Ü% aÓ(¨GÒ3Ð3Ñ3÷ 'ô $×(Ñ(¨Ó7ˆÜ˜,¬¨S«	Ô2Ð2Ð2Ü�cœ2Ÿ:™:Ô&Ü�J‰J×)Ñ)¨,¸Õ<à 3Ó&Ð&Ð&ñ ÷ 'Ð&ús   ÃEÅE	c                 óð   — t        t        j                  | d«      «      5 }|j                  «       }ddd«       t	        |d«      5 }|j                  «       ddd«       y# 1 sw Y   Œ0xY w# 1 sw Y   yxY w)zDecompress a gzip file.r$  NÚwb)r   r"  ÚGzipFileÚreadr&  Úwrite©Úsource_filenameÚtarget_filenameÚfoÚbufs       r   Ú_gzip_file_decompressrF  ž  sZ   € ä	”—‘˜°Ó5Ô	6¸"Ø�g‰g‹iˆ÷ 
7ô 
ˆo˜tÔ	$¨Ø
�‰�Œ÷ 
%Ð	$÷ 
7Ð	6ú÷ 
%Ð	$ús    A ÁA,Á A)Á,A5c                 óð   — t        | d«      5 }t        j                  |j                  «       «      }ddd«       t        |d«      5 }|j	                  «       ddd«       y# 1 sw Y   Œ0xY w# 1 sw Y   yxY w)zDecompress a zlib file.r$  Nr=  )r&  rP   Ú
decompressr?  r@  rA  s       r   Ú_zlib_file_decompressrI  §  sZ   € ä	ˆo˜tÔ	$¨Ü�o‰o˜bŸg™g›iÓ(ˆ÷ 
%ô 
ˆo˜tÔ	$¨Ø
�‰�Œ÷ 
%Ð	$÷ 
%Ð	$ú÷ 
%Ð	$ús   �$A ÁA,Á A)Á,A5zextension,decompressú.zrû   c                 ó¾   — d}| j                  d«      j                  }||z   }t        j                  ||«        |||«       t        j                  |«      }||k(  sJ ‚y )Nza string to persistr4   )r6   r7   r   r8   r9   )r<   Ú	extensionrH  rs   Úfilename_rawÚfilename_compressedr‰   s          r   Ú'test_load_externally_decompressed_filesrO  °  sf   € ð  €CØ—;‘;˜zÓ*×2Ñ2€Là&¨Ñ2Ðä×Ñ�cÐ.Ô/ñ Ð" LÔ1ô  ×$Ñ$ \Ó2€LØ�,ÒÐÑr(   zextension,cmethod))rJ  rP   )rû   r"  )rü   Úbz2)rÿ   r	  )rþ   r4  )rú   únot-compressed)r  rQ  c                 ó|  — |dv rt         €t        j                  d«       | j                  d«      j                  }d}||z   }t        j                  ||«       t        |d«      5 }t        |«      |k(  sJ ‚	 d d d «       t        j                  |«      }t        |t        |«      «      sJ ‚||k(  sJ ‚y # 1 sw Y   Œ=xY w)Nr3  zlzma is missingr4   zobject to dumpr$  )r	  r7  r8  r6   r7   r   r8   r&  r   r9   rc   rj   )r<   rL  r0  r=   rs   Ú
dump_fnamer  r‰   s           r   Ú%test_compression_using_file_extensionrT  Æ  s±   € ð �.Ñ ¤T \Ü�‰Ð%Ô&à�{‰{˜:Ó&×.Ñ.€HØ
€Cà˜IÑ%€JÜ×Ñ�c˜:Ô&ä	ˆj˜$Ô	 1Ü! !Ó$¨Ò/Ð/Ñ/÷ 
 ô  ×$Ñ$ ZÓ0€LÜ�l¤D¨£IÔ.Ð.Ð.Ø˜3ÒÐÑ÷ 
 Ð	ús   Á$B2Â2B;c                 ó  — t         j                  j                  d«      dg}t        j                  t        j
                  g}t        �|t        j                  gz  }| j                  d«      j                  }|D ]ë  }|D ]ä  } ||d«      5 }t        j                  ||«       d d d «        ||d«      5 }t        j                  |«      }d d d «       t        |d«      5 }t        j                  |«      }d d d «       t        |t         j                  «      rAt         j                   j#                  |«       t         j                   j#                  |«       Œ×|k(  sJ ‚|k(  rŒäJ ‚ Œí y # 1 sw Y   ŒÈxY w# 1 sw Y   Œ­xY w# 1 sw Y   Œ�xY w)Nr¢   ú	some datar4   r=  r$  )r   rZ   rP  ÚBZ2Filer"  r>  r	  ÚLZMAFiler6   r7   r   r8   r9   r&  rc   rd   re   rf   )	r<   ÚobjsÚfobjsr=   rs   Úfobjr  r‰   Úobj_reloaded_2s	            r   Útest_file_handle_persistencer]  æ  s?  € ä�I‰I×Ñ˜XÓ&¨Ð4€DÜ�[‰[œ$Ÿ-™-Ð(€EÜÐØ”$—-‘-�Ñ ˆØ�{‰{˜:Ó&×.Ñ.€HãˆÛˆDÙ�h Ô%¨Ü×!Ñ! # qÔ)÷ &ñ
 �h Ô%¨Ü+×0Ñ0°Ó3�÷ &ô
 �h Ô%¨Ü!-×!2Ñ!2°1Ó!5�÷ &ô ˜#œrŸz™zÔ*Ü—
‘
×-Ñ-¨l¸CÔ@Ü—
‘
×-Ñ-¨n¸cÕBà# sÒ*Ð*Ð*Ø%¨Ó,Ð,Ð,ñ' ñ ç%Ð%ú÷
 &Ð%ú÷
 &Ð%ús$   Â
E(Â2E4ÃF Å(E1Å4E=Æ F	c                  óV  — t         j                  j                  d«      dg} | D ]ƒ  }t        j                  «       }t	        j
                  ||«       t	        j                  |«      }t        |t         j                  «      r!t         j                  j                  ||«       Œ}||k(  rŒƒJ ‚ y )Nr¢   rV  )r   rZ   ÚioÚBytesIOr   r8   r9   rc   rd   re   rf   )rY  rs   r  r‰   s       r   Útest_in_memory_persistencera    s€   € ä�I‰I×Ñ˜XÓ&¨Ð4€DÛˆÜ�J‰J‹LˆÜ×Ñ˜#˜qÔ!Ü#×(Ñ(¨Ó+ˆÜ�cœ2Ÿ:™:Ô&Ü�J‰J×)Ñ)¨,¸Õ<à 3Ó&Ð&Ð&ñ r(   c                 ó–  — t         j                  j                  d«      }| j                  d«      j                  }t	        |d«      5 }t        j                  ||«       d d d «       t	        |d«      5 }t        j                  |d¬«      }d d d «       t         j                  j                  |«       y # 1 sw Y   ŒVxY w# 1 sw Y   Œ6xY w)Nr¢   r4   r=  r$  r…   rƒ   )
r   rZ   r6   r7   r&  r   r8   r9   re   rf   )r<   rs   r=   r  r‰   s        r   Ú!test_file_handle_persistence_mmaprc    s˜   € ä
�)‰)×
Ñ
˜8Ó
$€CØ�{‰{˜:Ó&×.Ñ.€Hä	ˆh˜Ô	 Ü×Ñ˜#˜qÔ!÷ 
ô 
ˆh˜Ô	 Ü#×(Ñ(¨°dÔ;ˆ÷ 
ô ‡J�J×!Ñ! ,°Õ4÷ 
Ð	ú÷ 
Ð	ús   ÁB3Á2B?Â3B<Â?Cc                 ó0  — t         j                  j                  d«      }| j                  d«      j                  }t	        |d«      5 }t        j                  ||d¬«       d d d «       t        t        j                  |d«      «      5 }t        t        «      5 }t        j                  |d¬«       d d d «       t        «      d	k(  sJ ‚t        |d
   j                  «      d|ddœz  k(  sJ ‚	 d d d «       y # 1 sw Y   Œ•xY w# 1 sw Y   ŒRxY w# 1 sw Y   y xY w)Nr¢   r4   r=  r!  r5   r$  r…   rƒ   r   r   zP"%(fileobj)r" is not a raw file, mmap_mode "%(mmap_mode)s" flag will be ignored.)Úfileobjr„   )r   rZ   r6   r7   r&  r   r8   r   r"  r>  r   r˜   r9   r_   r™   rš   )r<   rs   r=   r  rœ   s        r   Ú,test_file_handle_persistence_compressed_mmaprf     sî   € ä
�)‰)×
Ñ
˜8Ó
$€CØ�{‰{˜:Ó&×.Ñ.€Hä	ˆh˜Ô	 Ü×Ñ˜#˜q¨;Õ7÷ 
ô 
”—‘˜x¨Ó.Ô	/°1Ü”;Ô 8Ü×Ñ˜a¨4Õ0÷  ä�8‹} Ò!Ð!Ð!ä�˜‘×#Ñ#Ó$ð$Ø23À$Ñ&GñHòHð	
ñH÷ 
0Ð	/÷ 
Ð	ú÷  Ðú÷ 
0Ð	/ús0   ÁC4ÂDÂD Â/;DÃ4C=Ä D		ÄDÄDc                  óp  — t         j                  j                  d«      } t        j                  «       }t	        j
                  | |«       t        t        «      5 }t	        j                  |d¬«       d d d «       t        «      dk(  sJ ‚t        |d   j                  «      dddiz  k(  sJ ‚y # 1 sw Y   Œ<xY w)Nr¢   r…   rƒ   r   r   zuIn memory persistence is not compatible with mmap_mode "%(mmap_mode)s" flag passed. mmap_mode option will be ignored.r„   )r   rZ   r_  r`  r   r8   r   r˜   r9   r_   r™   rš   )rs   rE  rœ   s      r   Ú+test_file_handle_persistence_in_memory_mmaprh  3  sž   € ä
�)‰)×
Ñ
˜8Ó
$€CÜ
�*‰*‹,€Cä×Ñ�c˜3Ôä	Œ{Ô	˜xÜ×Ñ˜#¨Õ.÷ 
äˆx‹=˜AÒÐÐäˆH�Q‰K×ÑÓ ðà! 4Ð(ñ)ò	)ðñ	)÷	 
Ð	ús   ÁB,Â,B5r   s   a little data as bytes.i'  z{}r¤   zlatin-1za little data as bytes.za large data as bytes.)ÚidsÚcompress_level)r   rO   é	   c                 ó$  — | j                  d«      j                  }t        |d«      5 }t        |d|¬«      5 }|j	                  «       sJ ‚|j                  |«       |j                  «       |j                  «       k(  sJ ‚t        t        j                  «      5  |j                  «        d d d «       t        t        j                  «      5  |j                  «        d d d «       d d d «       j                  sJ ‚t        t        «      5  |j                  «        d d d «       d d d «       t        |d«      5 }t        |«      5 }|j                  «       sJ ‚|j!                  «       sJ ‚|j                  «       |j                  «       k(  sJ ‚|j#                  «       |k(  sJ ‚t        t        j                  «      5  |j%                  «        d d d «       |j!                  «       sJ ‚|j'                  d«       |j)                  «       dk(  sJ ‚	 d d d «       j                  sJ ‚	 d d d «       t        |d|¬«      5 }|j	                  «       sJ ‚|j                  |«       d d d «       t        |d«      5 }|j#                  «       |k(  sJ ‚|j!                  «       sJ ‚	 d d d «       t        |d|¬«      }|j	                  «       sJ ‚|j                  |«       |j+                  «        t        |d«      }|j#                  «       |k(  sJ ‚|j+                  «        y # 1 sw Y   �ŒkxY w# 1 sw Y   �ŒFxY w# 1 sw Y   �ŒKxY w# 1 sw Y   �Œ"xY w# 1 sw Y   �Œ'xY w# 1 sw Y   �Œ�xY w# 1 sw Y   �ŒYxY w# 1 sw Y   �ŒOxY w# 1 sw Y   �Œ"xY w# 1 sw Y   ŒñxY w)Nr4   r=  ©Úcompresslevelr$  r   )r6   r7   r&  r
   Úwritabler@  Úfilenor   r_  ÚUnsupportedOperationÚ_check_can_readÚ_check_can_seekÚclosedrB   Ú_check_not_closedÚreadableÚseekabler?  Ú_check_can_writeÚseekÚtellÚclose)r<   r   rj  r=   r  Úfzs         r   Útest_binary_zlibfiler}  E  s·  € ð �{‰{˜:Ó&×.Ñ.€Hä	ˆh˜Ô	 Ü˜A˜t°>ÕBÀbØ—;‘;”=Ð �=Ø�H‰H�TŒNØ—9‘9“; !§(¡(£*Ò,Ð,Ð,Üœ×/Ñ/Õ0Ø×"Ñ"Ô$÷ 1ô œ×/Ñ/Õ0Ø×"Ñ"Ô$÷ 1÷ Cð �yŠyÐˆyÜ”JÕØ× Ñ Ô"÷  ÷ 
ô 
ˆh˜Ô	 Ü˜AÔ "Ø—;‘;”=Ð �=Ø—;‘;”=Ð �=Ø—9‘9“; !§(¡(£*Ò,Ð,Ð,Ø—7‘7“9 Ò$Ð$Ð$Üœ×/Ñ/Õ0Ø×#Ñ#Ô%÷ 1à—;‘;”=Ð �=Ø�G‰G�AŒJØ—7‘7“9 ’>Ð!‘>÷ ð �yŠyÐ‰y÷ 
ô 
˜ $°nÕ	EÈØ�{‰{Œ}Ðˆ}Ø
�‰�Œ÷ 
Fô 
˜ $Ô	'¨2Ø�w‰w‹y˜DÒ Ð Ð Ø�{‰{Œ}Ð‰}÷ 
(ô
 
˜ $°nÔ	E€BØ�;‰;Œ=Ðˆ=Ø‡H�HˆT„NØ‡H�H„Jä	˜ $Ó	'€BØ�7‰7‹9˜ÒÐÐØ‡H�H…J÷O 1Ñ0ú÷ 1Ñ0ú÷ CÑBú÷  Ñú÷ 
Ñ	ú÷( 1Ñ0ú÷ Ñú÷ 
Ñ	ú÷ 
FÑ	Eú÷ 
(Ð	'úsÁ   ¨M·A L+ÂLÂ(!L+Ã	LÃL+Ã"%MÄL8ÄMÄ4M,Å A6MÆ6MÇA MÈM,È5$M9É-(NÌLÌL+ÌL(Ì#L+Ì+L5	Ì0MÌ8M	Ì=MÍMÍMÍMÍM)	Í$M,Í,M6Í9NÎNÚ	bad_valueé   rq   c                 ó  — | j                  d«      j                  }t        t        «      5 }t	        |d|¬«       d d d «       t        j                  dj                  |«      «      }j                  |«       y # 1 sw Y   Œ?xY w)Nr4   r=  rm  zS'compresslevel' must be an integer between 1 and 9. You provided 'compresslevel={}')	r6   r7   r   rB   r
   rÓ   rÔ   rJ   rK   )r<   r~  r=   rM   Úpatterns        r   Ú+test_binary_zlibfile_bad_compression_levelsr‚  �  se   € à�{‰{˜:Ó&×.Ñ.€HÜ	”
Ô	˜wÜ�x °YÕ?÷ 
ä�i‰ið	*ß*0©&°Ó*;ó€Gð ‡M�M�'Õ÷ 
Ð	ús   «A8Á8BÚbad_mode)rq   r   r‚   rž   r   rR   c                 ó¼   — | j                  d«      j                  }t        t        «      5 }t	        ||«       d d d «       j                  d«       y # 1 sw Y   ŒxY w)Nr4   zInvalid mode)r6   r7   r   rB   r
   rK   )r<   rƒ  r=   rM   s       r   Ú"test_binary_zlibfile_invalid_modesr…  �  sD   € à�{‰{˜:Ó&×.Ñ.€HÜ	”
Ô	˜wÜ�x Ô*÷ 
à‡M�M�.Õ!÷ 
Ð	ús   «AÁAÚbad_filec                 ó†   — t        t        «      5 }t        | d«       d d d «       j                  d«       y # 1 sw Y   ŒxY w)Nr$  z1filename must be a str or bytes object, or a file)r   Ú	TypeErrorr
   rK   )r†  rM   s     r   Ú*test_binary_zlibfile_invalid_filename_typer‰  •  s1   € ä	”	Ô	˜gÜ�x Ô&÷ 
à‡M�MÐEÕF÷ 
Ð	úó	   �7·A c                   ó   — e Zd Zd„ Zy)ÚSubArrayc                 ó:   — t         t        j                  | «      ffS r   )Ú_load_sub_arrayr   Úasarrayr$   s    r   Ú
__reduce__zSubArray.__reduce__¡  s   € Ü"¤R§Z¡Z°Ó%5Ð$7Ð7Ð7r(   N)r*   r+   r,   r�  r   r(   r   rŒ  rŒ     s   „ ó	8r(   rŒ  c                 ó:   — t        | j                  «      }| |d d  |S r   )rŒ  rW   )ÚarrÚds     r   rŽ  rŽ  ¤  s   € Ü�S—Y‘YÓˆØˆ‰!ˆØˆr(   c                   ó   — e Zd ZdZd„ Zy)rl   z7A complex object containing numpy arrays as attributes.c                 ó°   — t        j                  dd¬«      | _        t        j                  dd¬«      | _        t        j
                  g d¢d¬«      | _        y )Nrz   ri   r{   Úint32)rq   rG   g      4@rŒ   )r   r»   rm   r|   rn   rg   ro   r$   s    r   Ú__init__zComplexTestObject.__init__¬  s9   € Ü!Ÿy™y¨°IÔ>ˆDÔÜŸW™W S°Ô8ˆDŒNÜŸX™X¢o¸XÔFˆD�Nr(   N)r*   r+   r,   Ú__doc__r—  r   r(   r   rl   rl   ©  s   „ ÙEó	Gr(   rl   c                 ó
  — | j                  d«      j                  }t        d«      }t        j                  ||«       t        j
                  |«      }t        |t        «      sJ ‚t        j                  j                  ||«       y )Nr4   )rG   )
r6   r7   rŒ  r   r8   r9   rc   r   re   rf   )r<   r=   rq   Úcs       r   Útest_numpy_subclassr›  ²  sc   € à�{‰{˜:Ó&×.Ñ.€HÜ�‹€AÜ×Ñ�a˜Ô"Ü×Ñ˜(Ó#€AÜ�aœÔ"Ð"Ð"Ü‡J�J×!Ñ! ! QÕ'r(   c                 ó"  — | j                  d«      j                  }d}t        j                  |t	        |«      «       t        j
                  |«      |k(  sJ ‚t        j                  ||«       t        j
                  t	        |«      «      |k(  sJ ‚y )Nr4   é{   )r6   r7   r   r8   r   r9   )r<   r=   Úvalues      r   Útest_pathlibrŸ  ¼  su   € Ø�{‰{˜:Ó&×.Ñ.€HØ€EÜ×Ñ�eœT (›^Ô,Ü×Ñ˜XÓ&¨%Ò/Ð/Ð/Ü×Ñ�e˜XÔ&Ü×ÑœT (›^Ó,°Ò5Ð5Ñ5r(   c                 ó¼  — | j                  d«      j                  }t        j                  ddgddgg«      dd  t        j                  dd¬«      d d …d d…d d …f   fD ]}  }|j
                  j                  rJ ‚|j
                  j                  rJ ‚t        j                  ||«       t        j                  |«      }t        j                  j                  ||«       Œ y )	Nr4   r   rR   rO   rU   )rG   é2   é   ÚF)Úorder)r6   r7   r   Úasfortranarrayr|   r†   Úc_contiguousÚf_contiguousr   r8   r9   re   rf   )r<   r=   rg   Úarray_reloadeds       r   Ú"test_non_contiguous_array_picklingr©  Å  s¿   € à�{‰{˜:Ó&×.Ñ.€Hô
 	×Ñ˜A˜q˜6 A q 6Ð*Ó+¨A¨BÐ/ä
�‰� CÔ(ª¨B¨Q¨B²¨Ñ2óˆð —;‘;×+Ò+Ð+Ð+Ø—;‘;×+Ò+Ð+Ð+Ü×Ñ˜% Ô*Ü%×*Ñ*¨8Ó4ˆÜ
�
‰
×%Ñ% n°eÕ<ñr(   c                 ó  — | j                  d«      j                  }t        j                  d«      }t	        j
                  ||t        j                  ¬«       t	        j                  |«      }t        j                  j                  ||«       y )Nr4   rG   ©Úprotocol)r6   r7   r   Úzerosr   r8   ÚpickleÚHIGHEST_PROTOCOLr9   re   rf   )r<   r=   Ú
test_arrayr¨  s       r   Útest_pickle_highest_protocolr±  ×  sa   € ð �{‰{˜:Ó&×.Ñ.€HÜ—‘˜"“€Jä×Ñ�j (´V×5LÑ5LÕMÜ!×&Ñ& xÓ0€Nä‡J�J×!Ñ! .°*Õ=r(   c                  óÊ  — t        j                  d«      } d}t        j                  t        j                  t        j                  «      }|j                  |«       |j                  d«       t        j                  |«      5 }|j                  «       \  }}|j                  d«      5 }t        j                  | |«       d d d «       |j                  d«      5 }t        j                  |«      }d d d «       t         j                  j                  | «       t        j                   «       }	t        j                  | |	«       |j#                  |	j%                  «       «       |j                  d«      5 }t        j                  |«      }d d d «       t         j                  j                  || «       d d d «       y # 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   y xY w)NrG   )Ú	localhosti90  r   r=  r$  )r   r»   ÚsocketÚAF_INETÚSOCK_STREAMÚbindÚlistenÚcreate_connectionÚacceptÚmakefiler   r8   r9   re   rf   r_  r`  ÚsendÚgetvalue)
r°  Ú_ADDRÚlistenerÚclientÚserverÚclient_addrÚsfÚcfr¨  Úbytes_to_sends
             r   Útest_pickle_in_socketrÆ  æ  s^  € ô —‘˜2“€JØ €EÜ�}‰}œVŸ^™^¬V×-?Ñ-?Ó@€HØ‡M�M�%ÔØ‡O�O�AÔä	×	!Ñ	! %Ô	(¨FØ&Ÿo™oÓ/Ñˆ�à�_‰_˜TÔ" bÜ×Ñ˜j¨"Ô-÷ #ð �_‰_˜TÔ" bÜ)×.Ñ.¨rÓ2ˆN÷ #ô 	�
‰
×%Ñ% n°jÔAô Ÿ
™
›ˆÜ×Ñ˜* mÔ4Ø�‰�M×*Ñ*Ó,Ô-à�_‰_˜TÔ" bÜ)×.Ñ.¨rÓ2ˆN÷ #ô 	�
‰
×%Ñ% n°jÔA÷) 
)Ð	(÷ #Ð"ú÷ #Ð"ú÷ #Ð"ú÷# 
)Ð	(úsU   Â%GÂ&F5Â=GÃGÃ,BGÅ.GÆ(GÆ5F>	Æ:GÇG
	ÇGÇG	ÇGÇG"c                 ó¶  — | j                  d«      j                  }t        j                  }t	        j
                  |d¬«      t	        j                  |d¬«      g}t        j                  ||«       t        j                  |d¬«      }t        |d   t        j                  «      sJ ‚|d   j                  |kD  sJ ‚t        j                  j                  ||«       y )Nú	test.mmapr}   r{   r‚   rƒ   r   )r6   r7   rS   ÚALLOCATIONGRANULARITYr   r­  r|   r   r8   r9   rc   rh   Úoffsetre   rf   )r<   rÀ   rª   rs   Úmemmapss        r   Ú test_load_memmap_with_big_offsetrÌ    s©   € ð �K‰K˜Ó$×,Ñ,€EÜ×%Ñ%€DÜ�8‰8�D Ô(¬"¯'©'°$¸gÔ*FÐ
G€CÜ×Ñ�c˜5Ô!Ü×Ñ °Ô5€GÜ�g˜a‘j¤"§)¡)Ô,Ð,Ð,Ø�1‰:×Ñ˜tÒ#Ð#Ð#Ü‡J�J×!Ñ! # wÕ/r(   c                 ó  ‡‡— d}dŠ G d„ dt         j                  «      Š G ˆˆfd„dt        «      }t        | |«       «       t        |   j
                  ‰k(  sJ ‚t        |   j                  ‰k(  sJ ‚t	        j                  |«       y )Nú	test-nameztest-prefixc                   ó   — e Zd Zy)ú:test_register_compressor.<locals>.BinaryCompressorTestFileN©r*   r+   r,   r   r(   r   ÚBinaryCompressorTestFilerÐ    ó   „ Ør(   rÒ  c                   ó   •— e Zd Zˆ ˆfd„Zy)ú=test_register_compressor.<locals>.BinaryCompressorTestWrapperc                 ó6   •— t        j                  | ‰‰¬«       y )N©rs   Úprefix©r   r—  )r%   rÒ  Úcompressor_prefixs    €€r   r—  zFtest_register_compressor.<locals>.BinaryCompressorTestWrapper.__init__  s   ø€ Ü×&Ñ&ØÐ2Ð;Lör(   N©r*   r+   r,   r—  )rÒ  rÚ  s   €€r   ÚBinaryCompressorTestWrapperrÕ    s   ø„ ö	r(   rÜ  )r_  ÚBufferedIOBaser   r   r   Úfileobj_factoryrØ  Úpop)r<   Úcompressor_namerÜ  rÒ  rÚ  s      @@r   Útest_register_compressorrá    s�   ù€ à!€OØ%Ðô¤2×#4Ñ#4ô ÷Ô&7ô ô ˜Ñ)DÓ)FÔGä˜Ñ(×8Ñ8Ð<TÒTÐTÐTÜ˜Ñ(×/Ñ/Ð3DÒDÐDÐDô ×Ñ�_Õ%r(   Úinvalid_namec                 ó†   — t        t        «      5 }t        | d «       d d d «       j                  d«       y # 1 sw Y   ŒxY w)Nz"Compressor name should be a string)r   rB   r   rK   )râ  rM   s     r   Ú%test_register_compressor_invalid_namerä  .  s3   € ô 
”
Ô	˜wÜ˜L¨$Ô/÷ 
à‡M�MÐ6Õ7÷ 
Ð	úrŠ  c                  óÈ   ‡—  G d„ d«      Š G ˆfd„dt         «      } t        t        «      5 }t        d | «       «       d d d «       j	                  d«       y # 1 sw Y   ŒxY w)Nc                   ó   — e Zd Zy)úCtest_register_compressor_invalid_fileobj.<locals>.InvalidFileObjectNrÑ  r   r(   r   ÚInvalidFileObjectrç  9  rÓ  r(   rè  c                   ó   •— e Zd Zˆ fd„Zy)úJtest_register_compressor_invalid_fileobj.<locals>.InvalidFileObjectWrapperc                 ó6   •— t        j                  | ‰d¬«       y ©Ns   prefixr×  rÙ  )r%   rè  s    €r   r—  zStest_register_compressor_invalid_fileobj.<locals>.InvalidFileObjectWrapper.__init__=  s   ø€ Ü×&Ñ& tÐ1BÈ9ÖUr(   NrÛ  )rè  s   €r   ÚInvalidFileObjectWrapperrê  <  s	   ø„ õ	Vr(   rí  ÚinvalidzQCompressor 'fileobj_factory' attribute should implement the file object interface)r   r   rB   r   rK   )rí  rM   rè  s     @r   Ú(test_register_compressor_invalid_fileobjrï  6  sW   ø€ ÷ñ öVÔ#4ô Vô 
”
Ô	˜wÜ˜IÑ'?Ó'AÔB÷ 
ð ‡M�Mð	$õ÷ 
Ð	ús   ¬AÁA!c                   ó   — e Zd Zd„ Zy)ÚAnotherZlibCompressorWrapperc                 ó<   — t        j                  | t        d¬«       y rì  )r   r—  r
   r$   s    r   r—  z%AnotherZlibCompressorWrapper.__init__J  s   € Ü×"Ñ" 4¬^ÀIÖNr(   NrÛ  r   r(   r   rñ  rñ  I  s   „ óOr(   rñ  c                   ó   — e Zd Zd„ Zy)Ú StandardLibGzipCompressorWrapperc                 óP   — t        j                  | t        j                  d¬«       y rì  )r   r—  r"  r>  r$   s    r   r—  z)StandardLibGzipCompressorWrapper.__init__O  s   € Ü×"Ñ" 4¬T¯]©]À9ÖMr(   NrÛ  r   r(   r   rô  rô  N  s   „ óNr(   rô  c                  ó–  — d} t        | t        «       «       t        t        «      5 }t        | t	        «       «       d d d «       j                  dj                  | «      «       t        | t	        «       d¬«       | t        v sJ ‚t        |    j                  t        j                  k(  sJ ‚t        j                  | «       y # 1 sw Y   Œ…xY w)NrÎ  z#Compressor '{}' already registered.T)Úforce)r   rñ  r   rB   rô  rK   rJ   r   rÞ  r"  r>  rß  )rà  rM   s     r   Ú+test_register_compressor_already_registeredrø  S  s¡   € à!€Oô ˜Ô)EÓ)GÔHä	”
Ô	˜wÜ˜OÔ-MÓ-OÔP÷ 
à‡M�MÐ7×>Ñ>¸ÓOÔPä˜Ô)IÓ)KÐSWÕXàœlÑ*Ð*Ð*Ü˜Ñ(×8Ñ8¼D¿M¹MÒIÐIÐIô ×Ñ�_Õ%÷ 
Ð	ús   ¦B?Â?Cc                 ó¤  — dd l }d}|t        v sJ ‚t        |   j                  |j                  j                  k(  sJ ‚| j                  d«      j                  }d}t        j                  |||¬«       t        |d«      5 }|j                  t        t        «      «      t        k(  sJ ‚	 d d d «       t        j                  |«      |k(  sJ ‚t        j                  ||dz   «       t        |d«      5 }|j                  t        t        «      «      t        k(  sJ ‚	 d d d «       t        j                  |«      |k(  sJ ‚y # 1 sw Y   Œ”xY w# 1 sw Y   Œ0xY w)Nr   rý   r4   ú	test datar5   r$  rÚ   )Ú	lz4.framer   rÞ  ÚframeÚLZ4FrameFiler6   r7   r   r8   r&  r?  r_   r   r9   )r<   rý   Ú
compressorrÀ   r   r  s         r   Útest_lz4_compressionrÿ  h  s  € ó à€JØœÑ%Ð%Ð%Ü˜
Ñ#×3Ñ3°s·y±y×7MÑ7MÒMÐMÐMà�K‰K˜
Ó#×+Ñ+€EØ€DÜ×Ñ�d˜E¨JÕ7ä	ˆe�TÔ	˜aØ�v‰v”cœ+Ó&Ó'¬;Ò6Ð6Ñ6÷ 
ä×Ñ˜UÓ# tÒ+Ð+Ð+ô ×Ñ�d˜E F™NÔ+Ü	ˆe�TÔ	˜aØ�v‰v”cœ+Ó&Ó'¬;Ò6Ð6Ñ6÷ 
ä×Ñ˜UÓ# tÒ+Ð+Ñ+÷ 
Ð	ú÷ 
Ð	ús   Á>(D:Ã.(EÄ:EÅEc                 ó€  — | j                  d«      j                  }d}t        }t        t        «      5 }t        j                  ||d¬«       d d d «       j                  |«       t        t        «      5 }t        j                  ||dz   «       d d d «       |j                  |«       y # 1 sw Y   Œ]xY w# 1 sw Y   Œ'xY w)Nz
test.nolz4rú  rý   r5   rÚ   )r6   r7   r	   r   rB   r   r8   rK   )r<   rÀ   r   ÚmsgrM   s        r   Ú test_lz4_compression_without_lz4r  €  s�   € ð �K‰K˜Ó%×-Ñ-€EØ€DÜ
!€CÜ	”
Ô	˜wÜ×Ñ˜$ °Õ6÷ 
à‡M�M�#Ôä	”
Ô	˜wÜ×Ñ˜$ ¨¡Ô/÷ 
à‡M�M�#Õ÷ 
Ð	ú÷ 
Ð	ús   ³B(Á4B4Â(B1Â4B=r¬  c                 óâ  — | j                  d«      j                  }t        j                  j	                  d«      }t        j                  |||¬«       t        j                  |d¬«      }t        |t        j                  «      sJ ‚t        j                  j                  ||«       |j                  j                  t
        j                  z  dk(  sJ ‚|j                  j                   sJ ‚t        j                  j	                  d«      t        j                  j	                  d«      t        j                  j	                  d«      t        j                  j	                  d«      g}| j                  d«      j                  }t        j                  |||¬«       t        j                  |d¬«      }t#        |«      D ]ˆ  \  }}t        |t        j                  «      sJ ‚t        j                  j                  ||   |«       |j                  j                  t
        j                  z  dk(  sJ ‚|j                  j                   rŒˆJ ‚ t        j$                  dt        j&                  ¬«      t        j$                  d	t        j&                  ¬«      t        j$                  d
t        j&                  ¬«      t        j$                  dt        j&                  ¬«      t        j$                  dt        j&                  ¬«      t        j$                  dt        j&                  ¬«      t        j$                  dt        j&                  ¬«      t        j$                  dt        j&                  ¬«      t        j$                  dt        j&                  ¬«      dœ	}| j                  d«      j                  }t        j                  |||¬«       t        j                  |d¬«      }	|	j)                  «       D ]ˆ  \  }
}t        |t        j                  «      sJ ‚t        j                  j                  ||
   |«       |j                  j                  t
        j                  z  dk(  sJ ‚|j                  j                   rŒˆJ ‚ y )NrÈ  rR   r«  r‚   rƒ   r   z
test1.mmapr{   rO   r±   é   é   é   é   é   é   )	Úa0Úa1Úa2Úa3Úa4Úa5Úa6Úa7Úa8z
test2.mmap)r6   r7   r   rZ   Úrandnr   r8   r9   rc   rh   re   rf   Úctypesr   ÚNUMPY_ARRAY_ALIGNMENT_BYTESr†   Úalignedr]   r»   r}   Úitems)r<   r¬  rÀ   rq   rh   Ú
array_listÚ
l_reloadedÚidxÚ
array_dictÚ
d_reloadedÚkeys              r   Útest_memmap_alignment_paddingr  ”  s  € ð �K‰K˜Ó$×,Ñ,€Eä
�	‰	�‰˜Ó€AÜ×Ñ�a˜¨Õ2Ü×Ñ˜u°Ô4€FÜ�fœbŸi™iÔ(Ð(Ð(Ü‡J�J×!Ñ! ! VÔ,Ø�=‰=×Ñ¤× HÑ HÑHÈAÒMÐMÐMØ�<‰<×ÒÐÐô 	�	‰	�‰˜ÓÜ
�	‰	�‰˜ÓÜ
�	‰	�‰˜ÓÜ
�	‰	�‰˜Óð	€Jð �K‰K˜Ó%×-Ñ-€EÜ×Ñ�j %°(Õ;Ü×"Ñ" 5°CÔ8€Jä  Ö,‰ˆˆVÜ˜&¤"§)¡)Ô,Ð,Ð,Ü
�
‰
×%Ñ% j°¡o°vÔ>Ø�}‰}×!Ñ!¤L×$LÑ$LÑLÐPQÒQÐQÐQØ�|‰|×#Ó#Ð#Ð#ð	 -ô �i‰i˜¤§¡Ô*Ü�i‰i˜¤§¡Ô*Ü�i‰i˜¤§¡Ô*Ü�i‰i˜¤§¡Ô*Ü�i‰i˜¤"§(¡(Ô+Ü�i‰i˜¤"§(¡(Ô+Ü�i‰i˜¤"§(¡(Ô+Ü�i‰i˜¤"§(¡(Ô+Ü�i‰i˜¤"§(¡(Ô+ñ
€Jð �K‰K˜Ó%×-Ñ-€EÜ×Ñ�j %°(Õ;Ü×"Ñ" 5°CÔ8€Jà!×'Ñ'Ö)‰ˆˆVÜ˜&¤"§)¡)Ô,Ð,Ð,Ü
�
‰
×%Ñ% j°¡o°vÔ>Ø�}‰}×!Ñ!¤L×$LÑ$LÑLÐPQÒQÐQÐQØ�|‰|×#Ó#Ð#Ð#ñ	 *r(   r   )†r˜  rP  r:   r"  r_  rS   r`   r®  rZ   rÓ   r´  r  rÝ   rP   Ú
contextlibr   Úpathlibr   r	  ÚImportErrorr7  Újoblibr   r   Újoblib.compressorr   r   r	   r
   r   Újoblib.numpy_pickle_utilsr   r   r   r   Újoblib.testr   Újoblib.test.commonr   r   r   r   r   r   Újoblib.testingr   r   r   ÚtypelistÚ_noneÚappendrj   Ú_typeÚboolÚ_boolr¦   Ú_intÚfloatÚ_floatÚcomplexÚ_complexr™   Ú_stringÚ_tupleÚ_listÚ_dictr_   Ú_builtinr    r"   rŒ   r/   Ú	_instanceÚ_objectr?   rD   rC   rN   rx   r€   rŠ   r�   r•   r    r¯   rÅ   rÑ   rÖ   r÷   r  r  r  r'  rJ   r+  r.  r;  rF  rI  rO  rT  r]  ra  rc  rf  rh  r¨   Úencoder}  r‚  r…  r‰  rd   rŒ  rŽ  rl   r›  rŸ  r©  r±  rÆ  rÌ  rá  rä  rï  rñ  rô  rø  rÿ  r  ÚDEFAULT_PROTOCOLÚ	protocolsr¯  r  r   r(   r   Ú<module>r=     s  ðÙ Fã 
Û Û Û 	Û Û 	Û Û Û 	Û Û 
Û Û Ý Ý ðÛó ÷ 5÷õ ÷ó õ ÷÷ ÷ 6Ñ 5ð €ð 	€Ø ‡��Ô Ø€Ø ‡��Ô ÙˆQ‹€Ø ‡��Ô Ù
ˆ1ƒv€Ø ‡��Ô Ù	ˆq‹€Ø ‡��Ô Ù�1‹:€Ø ‡��Ô Ù
ˆa‹&€Ø ‡��Ô Ø	€Ø ‡��Ô Ø
€Ø ‡��Ô Ø
€Ø ‡��Ô Ø€Ø ‡��Ô ò÷ñ ô
�ô ð
 	‡��	Ô Ø ‡��Ô Ø ‡��	Ô Ù‹H€	Ø ‡��	Ô Ù
‹+€Ø ‡��Ô ñ ˆZ˜!˜Q˜Ó ÙˆX�xÓ ñ!ó !ó !ð!ò)ñ Ð  B©«Ð/Ó0ñ!ó 1ð!ð ÙˆZÒ4Ó5ñ.Gó 6ó ð.Gðb ñ;ó ð;ð ñ)/ó ð)/ðX ñ.ó ð.ð$ ñ	-ó ð	-ð ñó ðð& ØÙˆZ˜$ ˜Ó'ñ/ó (ó ó ð/ð. ñ&ó ð&ð2 ñ;ó ð;ò6	
óX*ðv ñ!,ó ð!,ðH ñ;ó ð;ð0 ñ'4ó ð'4ñT Ð ¨[Ð9Ó:ñ:ó ;ð:ñ Øð	
ð
 Ø6×=Ñ=¸gÓFð	
ð
 Ø2×9Ñ9¸'ÓBð	
ðóñ"ó#ð"ñ Ð ¨Ð 0Ó1ñ8ó 2ð8ð ÙˆZšÓ#ÙˆY˜Ó%ñ!'ó &ó $ó ð!'òHòñ ØØ
Ð!Ð" UÐ,AÐ$BÐCóñó	ðñ$ Øò	óñóðð$ ñ-ó ð-ð< ñ	'ó ð	'ð ñ
5ó ð
5ð ñ
ó ð
ð$ ñó ðñ" Ø
à"à�—‘˜N˜FŸN™N¨1¨dÓ3°dÑ:Ó;×BÑBÀ9ÓMÑMðð
 
#Ð$<Ð=ôñ ÐšyÓ)ñ/ó *óð/ñd ˆ[˜2˜r 2 s¨B°Ð3Ó4ñó 5ðñ ˆZÒ3Ó4ñ"ó 5ð"ñ ˆZ˜!˜R ˜Ó%ñGó &ðGð €>ô8�2—:‘:ô 8ò÷
Gñ Gð ñ(ó ð(ò6ð ñ=ó ð=ð" ñ>ó ð>ð ñBó ðBð> ñ0ó ð0ò&ñ0 ˆ^˜a  R˜[Ó)ñ8ó *ð8òô&OÐ#4ô Oô
NÐ'8ô Nò
&ð* 
ñ,ó 
ð,ð. ñó ðð ×$Ò$Ð%€	Ø	×Ò˜f×5Ò5Ò5Ø×Ñ�V×,Ò,Ô-ð ÙˆZ˜Ó#ñ3$ó $ó ñ3$øðC$ ò ØƒDðús   ÁS? Ó?T
Ô	T
