ó
    ®œ‘hÕQ  ã                  óz  • S r SSKJr  SSKJr  SSKrSSKrSSKrSSKJr  SSKrSSK	r	SSK
r
SSKJr  SSKrSSKrSSKrSSKJr  SSKrSSKrSSKrSSKrSSKJrJr  SS	KJr  SS
KJr  SSKJs  J r!  SSK"r#SSK"J$r$J%r%J&r&J'r'  SSK(J)r*  SSK+J,r,  SSK-J	s  J.r/  SSK0J1r1J2r2  S r3\Rh                  Rk                  SSS\6" S5      \7" S5      \Rp                  " S5      \" S/ SQ5      \7" S5      Rs                  SS5      \7" S5      Rs                  SS5      SSS2   \Rt                  " S5      Rw                  SSS9\Rt                  " S5      Rw                  SSS9\Rt                  " S5      Rw                  SSS9SS2SSS24   /5      S 5       r<S r=S r>S r?SWS  jr@\Rh                  Rk                  S!\R‚                  " \>S"S#9\R‚                  " \#R„                  S$S#9\R‚                  " \R                  " \#R„                  \R†                  S%9S&S#9\R‚                  " \R                  " \#R„                  S'S%9S(S#9\R‚                  " \R                  " \#R„                  S)S%9S*S#9/5      \Rh                  Rk                  S+\#R„                  \>/5      \Rh                  Rk                  S,\@" \," 5       5      5      S- 5       5       5       rDS. rES/ rF\RŽ                  S0 5       rH " S1 S25      rI " S3 S45      rJ\Rh                  Rk                  S5S6/S7\%" / S8Q\KS994S:\#R˜                  " \%" / S8Q\KS99\%" / S;Q\KS99/\R                  " / S<Q5      \R                  " / S<Q5      /5      4/5      S= 5       rMS> rN\Rh                  Rk                  S?/ S@Q5      SA 5       rOSB rP " SC SD\R¢                  5      rRSE rSSF rTSG rUSH rV\Rh                  Rk                  SISJSKSI\R
                  " SLSMSM5      SN/5      SO 5       rWSP rXSQ rY\!R´                  SR 5       r[\Rh                  Rk                  SS\R¸                  \R†                  /5      ST 5       r]SU r^SV r_g)Xa<  
manage legacy pickle tests

How to add pickle tests:

1. Install pandas version intended to output the pickle.

2. Execute "generate_legacy_storage_files.py" to create the pickle.
$ python generate_legacy_storage_files.py <output_dir> pickle

3. Move the created pickle to "data/legacy_pickle/<version>" directory.
é    )Úannotations)ÚarrayN)Úpartial)ÚPath)ÚAny)Úget_lzma_fileÚis_platform_little_endian)Úimport_optional_dependency)Úflatten_buffer)Ú	DataFrameÚIndexÚSeriesÚperiod_range)Úcreate_pickle_data)ÚDayÚMonthEndc                óz  • [        U[        5      (       a  [        R                  " X5        g UR	                  S5      (       a  [        R
                  " X5        g US:X  a1  U[        R                  L a  U [        R                  L d   eg X:X  d   eg [        [        SU S3[        R                  5      nU" X5        g )NÚsp_Ú	timestampÚassert_Ú_equal)
Ú
isinstancer   ÚtmÚassert_index_equalÚ
startswithÚassert_equalÚpdÚNaTÚgetattrÚassert_almost_equal)ÚresultÚexpectedÚtypÚ
comparators       Ú_C:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\pandas/tests/io/test_pickle.pyÚcompare_elementr&   >   s’   € Ü�(œE×"Ñ"Ü
×Ò˜hÔ/Øà
‡~�~�e×ÑÜ
�Š˜Õ)Ø	�Ó	Ø”r—v‘vÒØœRŸV™VÒ#Ð#Ñ#àÓ%Ð%Ñ%äœR 7¨3¨%¨vÐ!6¼×8NÑ8NÓOˆ
Ù�6Õ$ó    Údatas   123s   123456ÚI©é   é   é   ÚB)r-   r,   r,   é   )r-   é   ÚC)ÚorderÚFc                ót  • [        U 5      n[        U 5      R                  S5      nX:X  d   e[        U [        [
        45      (       a  XL d   eg [        U[        5      (       aU  UR                  S:X  d   eUR                  S:X  d   eUR                  (       d   eUR                  UR                  4:X  d   eg g )NÚAr+   r.   )r   Ú
memoryviewÚtobytesr   ÚbytesÚ	bytearrayÚndimÚformatÚ
contiguousÚshapeÚnbytes)r(   r!   r"   s      r%   Útest_flatten_bufferr?   T   s©   € ô" ˜DÓ!€FÜ˜$Ó×'Ñ'¨Ó,€HØÓÐÐÜ�$œ¤	Ð*×+Ñ+ØŠ~Ð‰~Ü	�FœJ×	'Ñ	'Ø�{‰{˜aÓÐÐØ�}‰} Ó#Ð#Ð#Ø× × Ð Ð Ø�|‰| §¡Ð/Ó/Ð/Ñ/ð	 
(r'   c           	     óH  • [        5       (       d  [        R                  " S5        [        [        5      R
                  R                  S5       GHÐ  nU " U5      n[        R                  " U5      nUR                  5        GH™  u  p4UR                  5        GH~  u  pVX#   U   nUS:X  Gam  US:X  Gaf  [        R                  " Xg5        UR                  R                  UR                  R                  :X  d   eUR                  R                  R                  (       a   e[        R                  " US:„  US:„  5        UR                  R                  nU[        S5      -   [        S5      :X  d   eU[        R                   " SS9-   n	[#        U	[        R                   5      (       d   eU	[        R                   " SSS	9:X  d   eU[        R                   " SS
9-   n	[#        U	[        R                   5      (       d   eU	[        R                   " SSS9:X  d   eGM�  US:X  a¡  US:X  a›  [        R$                  " Xg5        [#        UR                  [&        5      (       d   eUR                  ['        5       :X  d   eUR(                  S:X  d   e[        R$                  " UR+                  S5      UR+                  S5      5        GM(  US:X  a  US;   a  [        R                  " Xg5        GMM  US:X  a  US;   a  [        R,                  " Xg5        GMr  [/        XgU5        GM�     GMœ     GMÓ     g )Nz"known failure on non-little endianzdata/legacy_pickle/*/*.p*kl*ÚseriesÚtsr   r+   r,   )Úhours)ÚdaysrC   )Únanoseconds)rD   rE   ÚindexÚperiodÚM)Údt_tzÚcatÚframe)Údt_mixed_tzsÚ
cat_onecolÚcat_and_float)r	   ÚpytestÚskipr   Ú__file__ÚparentÚglobr   Úread_pickleÚitemsr   Úassert_series_equalrF   ÚfreqÚ	normalizer   Ú	Timedeltar   r   r   ÚfreqstrÚshiftÚassert_frame_equalr&   )
ÚdatapathÚlegacy_pickler(   r#   ÚdvÚdtr!   r"   rW   Úress
             r%   Útest_picklesrb   q   se  € Ü$×&Ñ&Ü�ŠÐ8Ô9ô œh›×.Ñ.×3Ñ3Ð4R×SˆÙ  Ó/ˆä�~Š~˜mÓ,ˆà—z‘z—|‰GˆCØ Ÿh™hŸj‘
�Ø™9 R™=�à˜(”? r¨T¤zä×*Ò*¨6Ô<Ø!Ÿ<™<×,Ñ,°·±×0CÑ0CÓCÐCÐCØ%Ÿ|™|×0Ñ0×:×:Ð:Ð:Ü×*Ò*¨6°A©:°xÀ!±|ÔDð "Ÿ<™<×,Ñ,�DØ¤# a£&™=¬C°«FÓ2Ð2Ð2à¤§¢°AÑ!6Ñ6�CÜ% c¬2¯<©<×8Ñ8Ð8Ð8Ø¤"§,¢,°A¸QÑ"?Ó?Ð?Ð?à¤§¢¸!Ñ!<Ñ<�CÜ% c¬2¯<©<×8Ñ8Ð8Ð8Ø¤"§,¢,°AÀ1Ñ"EÓEÐEÓEØ˜G“^¨¨h«Ü×)Ò)¨&Ô;Ü% f§k¡k´8×<Ñ<Ð<Ð<Ø!Ÿ;™;¬(«*Ó4Ð4Ð4Ø!Ÿ>™>¨SÓ0Ð0Ð0Ü×)Ò)¨&¯,©,°q«/¸8¿>¹>È!Ó;L×MØ˜H“_¨Ð/?Ó)?Ü×*Ò*¨6×<Ø˜G“^¨ð /ó )ô
 ×)Ò)¨&×;ä# F°c×:ôI )ô $ò Tr'   c                óz   • [        US5       n[        R                  " XSS9  S S S 5        g ! , (       d  f       g = f©NÚwbéÿÿÿÿ©Úprotocol©ÚopenÚpickleÚdump©ÚobjÚpathÚfhs      r%   Úpython_picklerrq   £   s(   € Ü	ˆd�DÔ	˜RÜ�Š�C bÒ)÷ 
×	Ö	úó   �,¬
:c                óž   • [        U S5       nUR                  S5        [        R                  " U5      sS S S 5        $ ! , (       d  f       g = f)NÚrbr   )rj   Úseekrk   Úload)ro   rp   s     r%   Úpython_unpicklerrw   ¨   s0   € Ü	ˆd�DÔ	˜RØ
�‰�Œ
Ü�{Š{˜2‹÷ 
×	×	ús	   �'>¾
Ac                ó�   • U R                  5        VVVs/ s H   u  pUR                  5         H  nX4PM     M"     snnn$ s  snnnf )zFlatten create_pickle_data)rU   Úvalues)r(   r#   ÚexamplesÚexamples       r%   Úflattenr|   ®   sG   € ð "ŸZ™Zœ\õâ)‰MˆCØ—‘×(ˆGð 
‹á(ñ 	Ù)óð ùô s   •'AÚpickle_writerÚpython)ÚidÚpandas_proto_defaultrg   Úpandas_proto_highestr0   Úpandas_proto_4é   Úpandas_proto_5Úwriterztyp, expectedc                ó  • [         R                  " 5        nU" X5        [        R                  " U5      n[	        XQU 5        [        U5      n[	        XQU 5        [        USS9 nU" X5        UR                  S5        S S S 5        [        USS9 n[        R                  " U5      nUR                  S5        S S S 5        [	        XQU 5        S S S 5        g ! , (       d  f       N]= f! , (       d  f       N4= f! , (       d  f       g = f)Nre   ©Úmoder   rt   )r   Úensure_cleanr   rT   r&   rw   rj   ru   )r#   r"   r}   r…   ro   r!   Úhandles          r%   Útest_round_trip_currentr‹   ·   sÇ   € ô& 
�ŠÔ	˜dá�hÔ%ô —’ Ó%ˆÜ˜¨#Ô.ä! $Ó'ˆÜ˜¨#Ô.ô �$˜TÒ" fÙ�8Ô"Ø�K‰K˜ŒN÷ #ô �$˜TÒ" fÜ—^’^ FÓ+ˆFØ�K‰K˜ŒN÷ #ô 	˜¨#Ô.÷% 
Ð	÷ #Õ"ú÷ #Õ"ú÷ 
Õ	ús<   –AC5Á"CÁ<C5Â(C$Â6C5Ã
C!	ÃC5Ã$
C2	Ã.C5Ã5
Dc                 óv  • [        S[        R                  " S5      R                  S5      -  [	        [        S5      [        S9[	        [        S5       V s/ s H  n SU  3PM
     sn [        S9S9n[        R                  " UR                  [        R                  5      n[        R                  " X5        g s  sn f ©	Nçš™™™™™ñ?éx   ©é   r0   ÚABCD©Údtyper‘   úi-©ÚcolumnsrF   )r   ÚnpÚarangeÚreshaper   ÚlistÚobjectÚranger   Úround_trip_pathlibÚ	to_pickler   rT   r\   ©ÚiÚdfr!   s      r%   Útest_pickle_path_pathlibr£   ß   s‡   € Ü	ØŒb�iŠi˜‹n×$Ñ$ WÓ-Ñ-Ü”d˜6“l¬&Ñ1Ü¤u¨R¤yÓ1¢y !�r˜!˜“X¡yÑ1¼Ñ@ñ
€Bô
 ×"Ò" 2§<¡<´·±Ó@€FÜ×Ò˜"Õ%ùò 2ó   ÁB6c                 óv  • [        S[        R                  " S5      R                  S5      -  [	        [        S5      [        S9[	        [        S5       V s/ s H  n SU  3PM
     sn [        S9S9n[        R                  " UR                  [        R                  5      n[        R                  " X5        g s  sn f r�   )r   r˜   r™   rš   r   r›   rœ   r�   r   Úround_trip_localpathrŸ   r   rT   r\   r    s      r%   Útest_pickle_path_localpathr§   é   s‡   € Ü	ØŒb�iŠi˜‹n×$Ñ$ WÓ-Ñ-Ü”d˜6“l¬&Ñ1Ü¤u¨R¤yÓ1¢y !�r˜!˜“X¡yÑ1¼Ñ@ñ
€Bô
 ×$Ò$ R§\¡\´2·>±>ÓB€FÜ×Ò˜"Õ%ùò 2r¤   c                 ó4   • S[         R                  " 5        S3$ )NÚ__z	__.pickle)ÚuuidÚuuid4© r'   r%   Úget_random_pathr­   ø   s   € à”—
’
“ˆ~˜YÐ'Ð'r'   c                  ó’   • \ rS rSr\R
                  rS rS r\	R                  R                  S/ SQ5      S 5       rS rS rS	 rS
rg)ÚTestCompressionéý   c                ó8  • Uc  [         R                  " X5        g US:X  a  [        R                  " US5      nGOFUS:X  a  [        R
                  " US5      nGO'US:X  a]  [        R                  " US[        R                  S9 nUR                  U[        R                  R                  U5      5        S S S 5        OÄUS:X  at  [        US5       n[        R                  " USS9 nUR                  U[        R                  R                  U5      5      nUR                  Xu5        S S S 5        S S S 5        OJUS	:X  a  [!        5       " US5      nO2US
:X  a  [#        S5      R                  US5      nOSU 3n[%        U5      eUS;  a@  [        US5       nW   UR                  UR'                  5       5        S S S 5        S S S 5        g g ! , (       d  f       NU= f! , (       d  f       N¹= f! , (       d  f       Nw= f! , (       d  f       NK= f! , (       d  f       g = f)NÚgzipÚwÚbz2Úzip©ÚcompressionÚtarrt   r‡   ÚxzÚzstdÚ	zstandardre   zUnrecognized compression type: )rµ   r¸   )ÚshutilÚcopyfiler²   rj   r´   ÚBZ2FileÚzipfileÚZipFileÚZIP_DEFLATEDÚwriteÚosro   ÚbasenameÚtarfileÚ
gettarinfoÚaddfiler   r
   Ú
ValueErrorÚread)	ÚselfÚsrc_pathÚ	dest_pathr·   Úfrp   r¸   ÚtarinfoÚmsgs	            r%   Úcompress_fileÚTestCompression.compress_file   sŸ  € ØÑÜ�OŠO˜HÔ0Øà˜&Ó Ü—	’	˜) SÓ)ŠAØ˜EÓ!Ü—’˜I sÓ+ŠAØ˜EÓ!Ü—’ ¨C¼W×=QÑ=QÒRÐVWØ—‘˜¤"§'¡'×"2Ñ"2°8Ó"<Ô=÷ SÐRà˜EÓ!Ü�h Ô%¨Ü—\’\ )°#Ò6¸#Ø!Ÿn™n¨X´r·w±w×7GÑ7GÈÓ7QÓR�GØ—K‘K Ô,÷ 7÷ &Ð%ð ˜DÓ Ü” 	¨3Ó/‰AØ˜FÓ"Ü*¨;Ó7×<Ñ<¸YÈÓM‰Aà3°K°=ÐAˆCÜ˜S“/Ð!à˜nÓ,Ü�h Ô%¨ÚØ—G‘G˜BŸG™G›IÔ&÷ ÷ &Ð%ð -÷ SÕRú÷ 7Õ6ú÷ &Õ%ú÷ •Qú÷ &Õ%úsU   Â0GÃG)Ã$AGÄ%G)ÆHÆ G:Æ5HÇ
GÇ
G&	Ç"G)Ç)
G7Ç:
H	ÈHÈ
Hc                ó  • UnUS-   nUS-   n[         R                  " U5       n[         R                  " U5       n[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nS	U 3PM
     sn[        S9S
9n	U	R                  XaS9  [         R                  " XaS9 n
[        US5       nUR                  U
R                  5       5        S S S 5        S S S 5        [        R                   " US S9n[         R"                  " Xœ5        S S S 5        S S S 5        g s  snf ! , (       d  f       NW= f! , (       d  f       N`= f! , (       d  f       N>= f! , (       d  f       g = f)Nú.compressedú.rawrŽ   r�   r�   r’   r“   r‘   r•   r–   r¶   re   )r   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rŸ   Údecompress_filerj   rÂ   rÉ   r   rT   r\   )rÊ   r·   r­   ÚbaseÚpath1Úpath2Úp1Úp2r¡   r¢   rÍ   rp   Údf2s                r%   Útest_write_explicitÚ#TestCompression.test_write_explicit  s)  € ØˆØ�}Ñ$ˆØ�v‘ˆä�_Š_˜UÔ# r¬2¯?ª?¸5Ô+AÀRÜØ”b—i’i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ñ9Ü¬u°R¬yÓ9ªy¨!˜r ! ›X©yÑ9ÄÑHñˆBð �L‰L˜ˆLÑ5ô ×#Ò# BÒ@ÀAÜ˜"˜d”^ rØ—H‘H˜QŸV™V›XÔ&÷ $÷ Aô
 —.’. °Ñ6ˆCä×!Ò! "Ô*÷% ,B×#Ð#ùò :÷ $•^ú÷ AÕ@ú÷ ,BÕ+Aú×#Õ#úse   £E>ºAE-ÂEÂ/E-ÃEÃ E	Ã:EÄ3E-Ä5E>ÅE-Å
EÅEÅ
E*Å&E-Å-
E;	Å7E>Å>
Fr·   )Ú ÚNoneÚbadÚ7zc                óÐ  • [         R                  " [        SS9   [        R                  " U5       n[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nS	U 3PM
     sn[        S9S
9nUR                  X1S9  S S S 5        S S S 5        g s  snf ! , (       d  f       N= f! , (       d  f       g = f)NzUnrecognized compression type©ÚmatchrŽ   r�   r�   r’   r“   r‘   r•   r–   r¶   )rO   ÚraisesrÈ   r   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rŸ   )rÊ   r·   r­   ro   r¡   r¢   s         r%   Útest_write_explicit_badÚ'TestCompression.test_write_explicit_bad7  s«   € ä�]Š]œ:Ð-LÓMÜ—’ Ô1°TÜØœ"Ÿ)š) C›.×0Ñ0°Ó9Ñ9Ü!¤$ v£,´fÑ=Ü´5¸´9Ó =²9¨a 2 a S£±9Ñ =ÄVÑLñ�ð
 —‘˜T�Ñ;÷ 2÷ NÐMùò
 !>÷	 2Õ1ú÷ NÕMús5   šC±ACÂCÂCÂ0CÃCÃ
C	ÃCÃ
C%c                ór  • UnX1-   nUS-   nU R                   R                  UR                  5       5      n[        R                  " U5       n[        R                  " U5       n[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       V	s/ s H  n	SU	 3PM
     sn	[        S9S	9n
U
R                  U5        [        R                  " XvS
9 n[        US5       nUR!                  UR#                  5       5        S S S 5        S S S 5        [$        R&                  " US S
9n[        R(                  " X­5        S S S 5        S S S 5        g s  sn	f ! , (       d  f       NW= f! , (       d  f       N`= f! , (       d  f       N>= f! , (       d  f       g = f)NrÔ   rŽ   r�   r�   r’   r“   r‘   r•   r–   r¶   re   )Ú_extension_to_compressionÚgetÚlowerr   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rŸ   rÕ   rj   rÂ   rÉ   r   rT   r\   )rÊ   Úcompression_extr­   rÖ   r×   rØ   r·   rÙ   rÚ   r¡   r¢   rÍ   rp   rÛ   s                 r%   Útest_write_inferÚ TestCompression.test_write_inferB  sD  € ØˆØÑ&ˆØ�v‘ˆØ×4Ñ4×8Ñ8¸×9NÑ9NÓ9PÓQˆä�_Š_˜UÔ# r¬2¯?ª?¸5Ô+AÀRÜØ”b—i’i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ñ9Ü¬u°R¬yÓ9ªy¨!˜r ! ›X©yÑ9ÄÑHñˆBð �L‰L˜Ôô ×#Ò# BÒ@ÀAÜ˜"˜d”^ rØ—H‘H˜QŸV™V›XÔ&÷ $÷ Aô
 —.’. °Ñ6ˆCä×!Ò! "Ô*÷% ,B×#Ð#ùò :÷ $•^ú÷ AÕ@ú÷ ,BÕ+Aú×#Õ#úsg   ÁF(Á"AFÂ7E0Ã1FÃ7FÄ E5	Ä$FÄ,3FÅF(Å0FÅ5
FÅ?FÆ
FÆFÆ
F%	Æ!F(Æ(
F6c                óX  • UnUS-   nUS-   n[         R                  " U5       n[         R                  " U5       n[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nS	U 3PM
     sn[        S9S
9n	U	R                  US S9  U R                  XgUS9  [        R                  " XqS9n
[         R                  " Xš5        S S S 5        S S S 5        g s  snf ! , (       d  f       N= f! , (       d  f       g = f)NrÔ   rÓ   rŽ   r�   r�   r’   r“   r‘   r•   r–   r¶   )r   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rŸ   rÐ   r   rT   r\   )rÊ   r·   r­   rÖ   r×   rØ   rÙ   rÚ   r¡   r¢   rÛ   s              r%   Útest_read_explicitÚ"TestCompression.test_read_explicit\  sò   € ØˆØ�v‘ˆØ�}Ñ$ˆä�_Š_˜UÔ# r¬2¯?ª?¸5Ô+AÀRÜØ”b—i’i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ñ9Ü¬u°R¬yÓ9ªy¨!˜r ! ›X©yÑ9ÄÑHñˆBð �L‰L˜¨ˆLÑ.ð ×Ñ˜r°;ÐÑ?ô —.’. Ñ=ˆCÜ×!Ò! "Ô*÷ ,B×#Ð#ùò :÷	 ,BÕ+Aú×#Õ#ús6   £DºAD
ÂDÂAD
Ã4DÄD
Ä

D	ÄDÄ
D)c                ó¬  • UnUS-   nX1-   nU R                   R                  UR                  5       5      n[        R                  " U5       n[        R                  " U5       n[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       V	s/ s H  n	SU	 3PM
     sn	[        S9S	9n
U
R                  US S
9  U R                  XxUS
9  [        R                   " U5      n[        R"                  " X«5        S S S 5        S S S 5        g s  sn	f ! , (       d  f       N= f! , (       d  f       g = f)NrÔ   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   rT   r\   )rÊ   rì   r­   rÖ   r×   rØ   r·   rÙ   rÚ   r¡   r¢   rÛ   s               r%   Útest_read_inferÚTestCompression.test_read_inferr  s  € ØˆØ�v‘ˆØÑ&ˆØ×4Ñ4×8Ñ8¸×9NÑ9NÓ9PÓQˆä�_Š_˜UÔ# r¬2¯?ª?¸5Ô+AÀRÜØ”b—i’i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ñ9Ü¬u°R¬yÓ9ªy¨!˜r ! ›X©yÑ9ÄÑHñˆBð �L‰L˜¨ˆLÑ.ð ×Ñ˜r°;ÐÑ?ô —.’. Ó$ˆCÜ×!Ò! "Ô*÷ ,B×#Ð#ùò :÷	 ,BÕ+Aú×#Õ#ús8   ÁEÁ"AD4Â7D/ÃAD4ÄEÄ/D4Ä4
E	Ä>EÅ
Er¬   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__ÚicomÚextension_to_compressionré   rÐ   rÜ   rO   ÚmarkÚparametrizeræ   rí   rð   ró   Ú__static_attributes__r¬   r'   r%   r¯   r¯   ý   sN   † Ø $× =Ñ =Ðò'ò<+ð2 ‡[�[×Ñ˜]Ò,EÓFñ<ó Gð<ò+ò4+õ,+r'   r¯   c                  ó\   • \ rS rSr\R
                  R                  S/ SQ5      S 5       rSrg)ÚTestProtocoli�  rh   )rf   r   r+   r,   c                óÂ  • [         R                  " U5       n[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9nUR                  X1S	9  [        R                  " U5      n[         R                  " XV5        S S S 5        g s  snf ! , (       d  f       g = f)
NrŽ   r�   r�   r’   r“   r‘   r•   r–   rg   )r   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rŸ   r   rT   r\   )rÊ   rh   r­   ro   r¡   r¢   rÛ   s          r%   Ú	test_readÚTestProtocol.test_read�  s¨   € ä�_Š_˜_Ô-°ÜØ”b—i’i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ñ9Ü¬u°R¬yÓ9ªy¨!˜r ! ›X©yÑ9ÄÑHñˆBð
 �L‰L˜ˆLÑ1Ü—.’. Ó&ˆCÜ×!Ò! "Ô*÷ .Ð-ùò :÷	 .Õ-ús   —ACÁ,CÁ;ACÃCÃ
Cr¬   N)	rõ   rö   r÷   rø   rO   rû   rü   r  rý   r¬   r'   r%   rÿ   rÿ   �  s%   † Ø‡[�[×Ñ˜ZªÓ7ñ	+ó 8ó	+r'   rÿ   Úpickle_fileÚexcolsztest_py27.pkl)ÚaÚbÚcr“   ztest_mi_py27.pkl)r5   r.   r1   )r   r+   r,   c                óˆ   • U " SSSU5      n[         R                  " U5      n[        R                  " UR                  U5        g )NÚior(   rk   )r   rT   r   r   r—   )r]   r  r  ro   r¢   s        r%   Útest_unicode_decode_errorr
  �  s8   € ñ& �D˜& (¨KÓ8€DÜ	�Š˜Ó	€Bô ×Ò˜"Ÿ*™* fÕ-r'   c                 ó^  • [         R                  " 5        n [        S[        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9n[        U S	5       nUR                  U5        S S S 5        [        U S
5       n[        R                  " U5      nS S S 5        [         R                  " UW5        S S S 5        g s  snf ! , (       d  f       N^= f! , (       d  f       ND= f! , (       d  f       g = f)NrŽ   r�   r�   r’   r“   r‘   r•   r–   re   rt   )r   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rj   rŸ   r   rT   r\   )ro   r¡   r¢   rp   r!   s        r%   Útest_pickle_buffer_roundtripr  ¼  sÖ   € Ü	�ŠÔ	˜dÜØ”"—)’)˜C“.×(Ñ(¨Ó1Ñ1Üœ$˜v›,¬fÑ5Ü¬5°¬9Ó5ª9 a˜2˜a˜S›©9Ñ5¼VÑDñ
ˆô
 �$˜Ô Ø�L‰L˜Ô÷ ä�$˜Ô Ü—^’^ BÓ'ˆF÷ ä
×Ò˜b &Ô)÷ 
Ð	ùò 6çÕúçÕú÷ 
Õ	úsN   –ADÁ+C7Á:DÂC<Â$DÂ8DÃDÃ7DÃ<
D
	ÄDÄ
D	ÄDÄ
D,Úmockurl)zhttp://url.comzftp://test.comzhttp://gzip.comc                ó  ^^• S n " S S5      m[         R                  " 5        mUU4S jn[        S[        R                  " S5      R                  S5      -  [        [        S5      [        S	9[        [        S
5       Vs/ s H  nSU 3PM
     sn[        S	9S9nU" UT5        U R                  SU5        [        R                  " U5      n[         R                  " XV5        S S S 5        g s  snf ! , (       d  f       g = f)Nc                óz   • [        US5       n[        R                  " XSS9  S S S 5        g ! , (       d  f       g = frd   ri   rm   s      r%   rq   Ú3test_pickle_generalurl_read.<locals>.python_picklerÓ  s(   € Ü�$˜Ô Ü�KŠK˜¨"Ò-÷ ×Öúrr   c                  ó6   • \ rS rSrS	S jrS rS rS rS rSr	g)
Ú5test_pickle_generalurl_read.<locals>.MockReadResponsei×  c                óX   • [        US5      U l        SU;   a
  SS0U l        g SS0U l        g )Nrt   r²   zContent-EncodingrÞ   )rj   ÚfileÚheaders)rÊ   ro   s     r%   Ú__init__Ú>test_pickle_generalurl_read.<locals>.MockReadResponse.__init__Ø  s/   € Ü˜T 4Ó(ˆDŒIØ˜‹~Ø 2°FÐ;�•à 2°BÐ7�•r'   c                ó   • U $ ©Nr¬   ©rÊ   s    r%   Ú	__enter__Ú?test_pickle_generalurl_read.<locals>.MockReadResponse.__enter__ß  s   € ØˆKr'   c                ó$   • U R                  5         g r  )Úclose)rÊ   Úargss     r%   Ú__exit__Ú>test_pickle_generalurl_read.<locals>.MockReadResponse.__exit__â  s   € Ø�J‰J�Lr'   c                ó6   • U R                   R                  5       $ r  )r  rÉ   r  s    r%   rÉ   Ú:test_pickle_generalurl_read.<locals>.MockReadResponse.readå  s   € Ø—9‘9—>‘>Ó#Ð#r'   c                ó6   • U R                   R                  5       $ r  )r  r  r  s    r%   r  Ú;test_pickle_generalurl_read.<locals>.MockReadResponse.closeè  s   € Ø—9‘9—?‘?Ó$Ð$r'   )r  r  N©Úreturnrß   )
rõ   rö   r÷   rø   r  r  r   rÉ   r  rý   r¬   r'   r%   ÚMockReadResponser  ×  s   † ô	8ò	ò	ò	$õ	%r'   r(  c                 ó   >• T" T5      $ r  r¬   )r  Úkwargsr(  ro   s     €€r%   Úmock_urlopen_readÚ6test_pickle_generalurl_read.<locals>.mock_urlopen_readí  s   ø€ Ù# DÓ)Ð)r'   rŽ   r�   r�   r’   r“   r‘   r•   r–   zurllib.request.urlopen)r   r‰   r   r˜   r™   rš   r   r›   rœ   r�   Úsetattrr   rT   r\   )	Úmonkeypatchr  rq   r+  r¡   r¢   r!   r(  ro   s	          @@r%   Útest_pickle_generalurl_readr/  Ï  sÍ   ù€ ò.÷%ñ %ô( 
�ŠÔ	˜dö	*ô Ø”"—)’)˜C“.×(Ñ(¨Ó1Ñ1Üœ$˜v›,¬fÑ5Ü¬5°¬9Ó5ª9 a˜2˜a˜S›©9Ñ5¼VÑDñ
ˆñ
 	�r˜4Ô Ø×ÑÐ4Ð6GÔHÜ—’ Ó(ˆÜ
×Ò˜bÔ)÷ 
Ð	ùò 6÷ 
Õ	ús   ¥AC1ÂC,ÂAC1Ã,C1Ã1
C?c                 óô  • [         R                  " S5        [        R                  " 5          Sn [	        S[
        R                  " S5      R                  S5      -  [        [        S5      [        S9[        [        S5       Vs/ s H  nS	U 3PM
     sn[        S9S
9nUR                  U 5        [        R                  " U 5      n[        R                  " X#5        S S S 5        g s  snf ! , (       d  f       g = f)NÚfsspeczmemory://mockfilerŽ   r�   r�   r’   r“   r‘   r•   r–   )rO   Úimportorskipr   r‰   r   r˜   r™   rš   r   r›   rœ   r�   rŸ   r   rT   r\   )r  r¡   r¢   r!   s       r%   Útest_pickle_fsspec_roundtripr3  û  sµ   € Ü
×Ò˜Ô!Ü	�ŠÕ	Ø%ˆÜØ”"—)’)˜C“.×(Ñ(¨Ó1Ñ1Üœ$˜v›,¬fÑ5Ü¬5°¬9Ó5ª9 a˜2˜a˜S›©9Ñ5¼VÑDñ
ˆð
 	�‰�WÔÜ—’ Ó(ˆÜ
×Ò˜bÔ)÷ 
Ð	ùò
 6÷ 
Õ	ús   ¬AC)ÂC$ÂA	C)Ã$C)Ã)
C7c                  ó   • \ rS rSrSS jrSrg)ÚMyTzi	  c                ó   • g r  r¬   r  s    r%   r  ÚMyTz.__init__
  s   € Ør'   r¬   Nr&  )rõ   rö   r÷   rø   r  rý   r¬   r'   r%   r5  r5  	  s   † ÷r'   r5  c                 óÌ   • [        [        S9[        5       4n [        R                  " U 5      n[        R
                  " US   U S   5        [        US   [        5      (       d   eg )Nr“   r   r+   )r   rœ   r5  r   Úround_trip_picklerV   r   )r"   r!   s     r%   Útest_read_pickle_with_subclassr:    sR   € äœFÑ#¤T£VÐ+€HÜ×!Ò! (Ó+€Fä×Ò˜6 !™9 h¨q¡kÔ2Ü�f˜Q‘i¤×&Ñ&Ð&Ñ&r'   c                ó²  • [        S[        R                  " S5      R                  S5      -  [	        [        S5      [        S9[	        [        S5       Vs/ s H  nSU 3PM
     sn[        S9S9n[        R                  " 5        nUR                  X0S	9  [        U5      R                  5       nS
S
S
5        [        R                  " 5       nUR                  XPS	9  UR                  S5        UR!                  5       W:X  d  U S;   d   e["        R$                  " XPS	9nUR                  S5        [        R&                  " X&5        g
s  snf ! , (       d  f       N = f)zY
Read/write from binary file-objects w/wo compression.

GH 26237, GH 29054, and GH 29570
rŽ   r�   r�   r’   r“   r‘   r•   r–   r¶   Nr   )r²   rµ   r¸   )r   r˜   r™   rš   r   r›   rœ   r�   r   r‰   rŸ   r   Ú
read_bytesr	  ÚBytesIOru   Úgetvaluer   rT   r\   )r·   r¡   r¢   ro   Ú	referenceÚbufferÚread_dfs          r%   Ú%test_pickle_binary_object_compressionrB    s	  € ô 
ØŒb�iŠi˜‹n×$Ñ$ WÓ-Ñ-Ü”d˜6“l¬&Ñ1Ü¤u¨R¤yÓ1¢y !�r˜!˜“X¡yÑ1¼Ñ@ñ
€Bô 
�ŠÔ	˜dØ
�‰�TˆÑ3Ü˜“J×)Ñ)Ó+ˆ	÷ 
ô
 �ZŠZ‹\€FØ‡L�L�€LÑ1Ø
‡K�K�„Nð �?‰?Ó 	Ó)¨[Ð<RÓ-RÐRÐRô �nŠn˜VÑ=€GØ
‡K�K�„NÜ×Ò˜"Õ&ùò' 2÷ 
Õ	ús   ÁEÂ)EÅ
Ec                óz   • U nUnS nU" U5        U" UR                   5        U" U5        U" UR                   5        g )Nc                ó\   • [         R                  " U 5      n[         R                  " X5        g r  )r   r9  r\   )rK   Ú	unpickleds     r%   Ú_test_roundtripÚDtest_pickle_dataframe_with_multilevel_index.<locals>._test_roundtrip=  s    € Ü×(Ò(¨Ó/ˆ	Ü
×Ò˜eÕ/r'   )ÚT)Ú/multiindex_year_month_day_dataframe_random_dataÚ multiindex_dataframe_random_dataÚymdrK   rF  s        r%   Ú+test_pickle_dataframe_with_multilevel_indexrL  6  s=   € ð :€CØ,€Eò0ñ �EÔÙ�E—G‘GÔÙ�CÔÙ�C—E‘EÕr'   c                 ó   • [        SSSS9n [        [        R                  R	                  S5      R                  [        U 5      5      U 5      n[        R                  " U5      nUR                  R                  S:X  d   eg )Nz1/1/2011z1/1/2012rH   )rW   r,   )r   r   r˜   ÚrandomÚdefault_rngÚstandard_normalÚlenr   r9  rF   rZ   )ÚprngrB   Únew_tss      r%   Ú"test_pickle_timeseries_periodindexrT  G  sb   € ä˜
 J°SÑ9€DÜ	”—	‘	×%Ñ% aÓ(×8Ñ8¼¸T»ÓCÀTÓ	J€BÜ×!Ò! "Ó%€FØ�<‰<×Ñ 3Ó&Ð&Ñ&r'   Únamei	  g     Hˆ@iÑ  é   )r+   r,   c           	     ó¦   • [         R                  " [        [        R                  " S[        R
                  S9U S95      nUR                  U :X  d   eg )Né
   r“   )rU  )r   r9  r   r˜   r™   Úfloat64rU  )rU  rE  s     r%   Útest_pickle_preserve_namerZ  O  s=   € ô ×$Ò$¤V¬B¯IªI°bÄÇ
Á
Ñ,KÐRVÑ%WÓX€IØ�>‰>˜TÓ!Ð!Ñ!r'   c                ó\   • [         R                  " U 5      n[         R                  " X5        g r  ©r   r9  rV   )Údatetime_seriesÚunp_tss     r%   Útest_pickle_datetimesr_  W  s    € Ü×!Ò! /Ó2€FÜ×Ò˜6Õ3r'   c                ó\   • [         R                  " U 5      n[         R                  " X5        g r  r\  )Ústring_seriesÚ
unp_seriess     r%   Útest_pickle_stringsrc  \  s    € Ü×%Ò% mÓ4€JÜ×Ò˜:Õ5r'   c                 ól  • [        [        S5      5      R                  S5      R                  S/   n [        R
                  " U 5      nUR                  R                  S   R                  S:X  d   eUR                  R                  S   R                  S:X  d   e[        R                  " US/   U 5        g )NÚabcÚcategoryr   r+   )r+   T)r   r›   ÚastypeÚilocr   r9  Ú_mgrÚblocksr:   r=   rV   )Úserra   s     r%   Ú test_pickle_preserves_block_ndimrl  a  s”   € ô ”�e“Ó
×
$Ñ
$ ZÓ
0×
5Ñ
5°q°cÑ
:€CÜ
×
Ò
˜sÓ
#€Cà�8‰8�?‰?˜1Ñ×"Ñ" aÓ'Ð'Ð'Ø�8‰8�?‰?˜1Ñ×#Ñ# tÓ+Ð+Ð+ô ×Ò˜3 ˜v™;¨Õ,r'   rh   c                óÖ   • [        [        S5      5      n[        R                  " [	        UR
                  XS9[	        [        R                  US95      n[        R                  " X#5        g )Ni † )rh   r·   r¶   )	r   r�   r   rž   r   rŸ   r   rT   r\   )rh   r·   r¢   r!   s       r%   Ú%test_pickle_big_dataframe_compressionrn  n  sN   € ô 
”5˜“=Ó	!€BÜ×"Ò"Ü�—‘ xÑIÜ”—‘¨KÑ8ó€Fô ×Ò˜"Õ%r'   c                ó  • U " [        [        5      R                  SSSS5      n[        US5       n[        R
                  " U5      nS S S 5        [        / / S9n[        R                  " WU5        g ! , (       d  f       N0= f)Nr(   r^   z1.2.4zempty_frame_v1_2_4-GH#42345.pklrt   )rF   r—   )	r   rQ   rR   rj   rk   rv   r   r   r\   )r]   ro   Úfdr¢   r"   s        r%   Ú#test_pickle_frame_v124_unpickle_130rq  y  sl   € áÜŒX‹×ÑØØØØ)ó€Dô 
ˆd�DÔ	˜RÜ�[Š[˜‹_ˆ÷ 
ô ˜r¨2Ñ.€HÜ×Ò˜"˜hÕ'÷	 
Õ	ús   °A1Á1
A?c                 óÚ   • [        S/ SQ05      n Sn[        R                  " [        US9   [        R
                  " 5       nU R                  US5        S S S 5        g ! , (       d  f       g = f)Nr  r*   zpStarting with pandas version 3.0 all arguments of to_pickle except for the argument 'path' will be keyword-only.rã   Úinfer)r   r   Úassert_produces_warningÚFutureWarningr	  r=  rŸ   )r¢   rÏ   r@  s      r%   Ú test_pickle_pos_args_deprecationrv  ‰  sR   € ä	�CšÐ#Ó	$€Bð	1ð ô 
×	#Ò	#¤M¸Ó	=Ü—’“ˆØ
�‰�V˜WÔ%÷ 
>×	=Ö	=ús   «(AÁ
A*)r(   Údictr'  zlist[tuple[str, Any]])`Ú__doc__Ú
__future__r   r   r´   ÚdatetimeÚ	functoolsr   r²   r	  rÃ   Úpathlibr   rk   r¼   rÅ   Útypingr   rª   r¿   Únumpyr˜   rO   Úpandas.compatr   r	   Úpandas.compat._optionalr
   Úpandas.compat.compressorsr   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsÚtdÚpandasr   r   r   r   r   Úpandas._testingÚ_testingr   Ú-pandas.tests.io.generate_legacy_storage_filesr   Úpandas.io.commonÚcommonrù   Úpandas.tseries.offsetsr   r   r&   rû   rü   r9   r6   ÚPickleBufferÚcastr™   rš   r?   rb   rq   rw   r|   ÚparamrŸ   ÚHIGHEST_PROTOCOLr‹   r£   r§   Úfixturer­   r¯   rÿ   rœ   Ú
MultiIndexr
  r  r/  r3  Útzinfor5  r:  rB  rL  rT  rZ  r_  rc  Úskip_array_manager_invalid_testrl  ÚDEFAULT_PROTOCOLrn  rq  rv  r¬   r'   r%   Ú<module>r–     s;  ðñõ #å Û 
Û Û Ý Û Û 	Û 	Ý Û Û Û Ý Û Û ã Û ÷õ ?Ý 4ß )Ð )ã ÷ó õ Ý Lç Ð ÷ò%ð, ‡�×ÑØ
àØÙ�&ÓÙ�6ÓØ×Ò˜FÓ#Ùˆc’9ÓÙ�9Ó×"Ñ" 3¨Ó/Ù�9Ó×"Ñ" 3¨Ó/±°!°Ñ4Ø
�	Š	�"‹×Ñ˜f¨CÐÐ0Ø
�	Š	�"‹×Ñ˜f¨CÐÐ0Ø
�	Š	�"‹×Ñ˜f¨CÐÐ0²±C°a°C°Ñ8ðóñ 
0ó!ð 
0ò/;òd*ò
ôð ‡�×ÑØà�Š�^¨Ñ1Ø�Š�R—\‘\Ð&<Ñ=Ø�ŠØ×Ò˜bŸl™l°V×5LÑ5LÑMØ%ñ	
ð 	�Š�Y×&Ò& r§|¡|¸aÑ@ÐEUÑVØ�ŠØ×Ò˜bŸl™l°QÑ7Øñ	
ðóð  ‡�×Ñ˜ B§L¡L°.Ð#AÓBØ‡�×Ñ˜©'Ñ2DÓ2FÓ*GÓHñ/ó Ió Có!ð$/ò,&ò&ð ‡�ñ(ó ð(÷J+ñ J+÷d+ñ +ð ‡�×ÑØ�HÐà	™%¢°vÑ>Ð?àØ�MŠMáš/°Ñ8Ùš/°Ñ8ðð —’š)Ó$ b§h¢hªyÓ&9Ð:óð		
ðóñ .ó!ð .ò*ð& ‡�×ÑØÒFóñ&*óð&*òR*ôˆ8�?‰?ô ò
'ò'ò>ò"'ð ‡�×ÑØ
ˆS�%˜ ×!2Ò!2°4¸¸RÓ!@À&ÐIóñ"óð"ò
4ò
6ð
 ×#Ñ#ñ	-ó $ð	-ð ‡�×Ñ˜ f×&=Ñ&=¸v×?VÑ?VÐ%WÓXñ&ó Yð&ò(ó 	&r'   