1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
Ë
oñúhÕQãóÌ—dZddlmZddlmZddlZddlZddlZddlmZddlZddl    Z    ddl
Z
ddl m Z ddl Z ddlZddlZddlmZddlZddlZddlZddlZddlmZmZdd    lmZdd
lmZddlmcm Z!ddl"Z#dd l"m$Z$m%Z%m&Z&m'Z'ddl(m)Z*dd l+m,Z,ddl-m    cm.Z/dd l0m1Z1m2Z2d„Z3ejhjkddde6d«e7d«e jpd«edgd¢«e7d«jsdd«e7d«jsdd«ddd…ejtd«jwdd¬«ejtd«jwdd¬«ejtd«jwdd¬«dd…ddd…fg «d„«Z<d„Z=d„Z>d„Z?dWd „Z@ejhjkd!ej‚e>d"¬#«ej‚e#j„d$¬#«ej‚eje#j„e j†¬%«d&¬#«ej‚eje#j„d'¬%«d(¬#«ej‚eje#j„d)¬%«d*¬#«g«ejhjkd+e#j„e>g«ejhjkd,e@e,«««d-„«««ZDd.„ZEd/„ZFejŽd0„«ZHGd1„d2«ZIGd3„d4«ZJejhjkd5d6gd7e%gd8¢eK¬9«fd:e#j˜e%gd8¢eK¬9«e%gd;¢eK¬9«gejgd<¢«ejgd<¢«g«fg«d=„«ZMd>„ZNejhjkd?gd@¢«dA„«ZOdB„ZPGdC„dDej¢«ZRdE„ZSdF„ZTdG„ZUdH„ZVejhjkdIdJdKdIej
dLdMdM«dNg«dO„«ZWdP„ZXdQ„ZYe!j´dR„«Z[ejhjkdSe j¸e j†g«dT„«Z]dU„Z^dV„Z_y)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ób—t|t«rtj||«y|j    d«rtj
||«y|dk(r/|t jur|t jus
J‚||k(sJ‚yyttd|›dtj«}|||«y)NÚsp_Ú    timestampÚassert_Ú_equal)
Ú
isinstancer ÚtmÚassert_index_equalÚ
startswithÚ assert_equalÚpdÚNaTÚgetattrÚassert_almost_equal)ÚresultÚexpectedÚtypÚ
comparators    úNH:\Change_password\venv_build\Lib\site-packages\pandas/tests/io/test_pickle.pyÚcompare_elementr&>s›€Ü(œEÔ"Ü
×јh¨Ô/Øà
‡~~eÔÜ
‰˜ Õ)Ø      Ò    Ø ”r—v‘vÑ ØœRŸV™VÑ#Ð #Ð#à˜XÒ%Ð %Ñ%ð$ôœR 7¨3¨%¨vÐ!6¼×8NÑ8NÓOˆ
ِ6˜8Õ$óÚdatas123s123456ÚI©éééÚB)r-r,r,é )r-éÚC)ÚorderÚFcóP—t|«}t|«jd«}||k(sJ‚t|tt
f«r||usJ‚yt|t«rM|j dk(sJ‚|jdk(sJ‚|jsJ‚|j|jfk(sJ‚yy)NÚAr+r.) r Ú
memoryviewÚtobytesrÚbytesÚ    bytearrayÚndimÚformatÚ
contiguousÚshapeÚnbytes)r(r!r"s   r%Útest_flatten_bufferr?Ts§€ô"˜DÓ !€Fܘ$Ó×'Ñ'¨Ó,€HØ XÒ ÐРܐ$œ¤    Ð*Ô+ؘ‰~Љ~Ü    FœJÔ    '؏{‰{˜aÒÐÐØ}‰} Ò#Ð#Ð#Ø× Ò Ð Ð Ø|‰| § ¡ Ð/Ò/Ð/Ñ/ð    
(r'c    óò—t«stjd«tt«j
j d«D]¬}||«}tj|«}|j«D]x\}}|j«D]^\}}|||}|dk(r_|dk(rYtj||«|jj|jjk(sJ‚|jjjrJ‚tj|dkD|dkD«|jj}|td«ztd«k(sJ‚|tj d¬«z}    t#|    tj «sJ‚|    tj dd¬    «k(sJ‚|tj d¬
«z}    t#|    tj «sJ‚|    tj dd¬ «k(rŒrJ‚|d k(r—|d k(r’tj$||«t#|jt&«sJ‚|jt'«k(sJ‚|j(dk(sJ‚tj$|j+d«|j+d««Œ|dk(r|dvrtj||«Œ1|dk(r|dvrtj,||«ŒRt/|||«ŒaŒ{Œ¯y)Nz"known failure on non-little endianzdata/legacy_pickle/*/*.p*kl*ÚseriesÚtsrr+r,)Úhours)ÚdaysrC)Ú nanoseconds)rDrEÚ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Ú    TimedeltarrrÚfreqstrÚshiftÚassert_frame_equalr&)
ÚdatapathÚ legacy_pickler(r#ÚdvÚdtr!r"rWÚress
          r%Ú test_picklesrbqsw€Ü $Ô &܏ ‰ Ð8Ô9ôœh›×.Ñ.×3Ñ3Ð4RÓSó*;ˆ Ù  Ó/ˆ ä~‰~˜mÓ,ˆà—z‘z“|ó%    ;‰GˆCØ Ÿh™h›jó$ ;‘
FØ ™9 R™=à˜(“? r¨T£zä×*Ñ*¨6°8Ô<Ø!Ÿ<™<×,Ñ,°·±×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ؤ"§,¡,°A¸QÔ"?Ò?Ð?Ð?ध¡¸!Ô!<Ñ<CÜ% c¬2¯<©<Ô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°8Ö<ؘG’^¨ð/ñ)ô
×)Ñ)¨&°(Ö;ä# F¨H°cÖ:òI$ ;ò%    ;ñ *;r'cóv—t|d«5}tj||d¬«ddd«y#1swYyxYw©NÚwbéÿÿÿÿ©Úprotocol©ÚopenÚpickleÚdump©ÚobjÚpathÚfhs   r%Úpython_picklerrq£s3€Ü     ˆdDÓ    ð*˜R܏ ‰ C˜ bÕ)÷*÷*ñ*úó/¯8có’—t|d«5}|jd«tj|«cddd«S#1swYyxYw)NÚrbr)rjÚseekrkÚload)rorps  r%Úpython_unpicklerrw¨s9€Ü     ˆdDÓ    ð˜RØ
‰Œ
܏{‰{˜2‹÷÷òús    &=½Acóˆ—|j«Dcgc]\}}|j«D]}||f‘ŒŒ c}}}Scc}}}w)zFlatten create_pickle_data)rUÚvalues)r(r#ÚexamplesÚexamples    r%Úflattenr|®sS€ð"ŸZ™Z›\÷ ð á ˆCØ—‘Ó(ò ð ð
ˆgŠð Øô ðùô s•#=Ú pickle_writerÚpython)ÚidÚpandas_proto_defaultrgÚpandas_proto_highestr0Úpandas_proto_4éÚpandas_proto_5Úwriterz typ, expectedcóþ—tj«5}|||«tj|«}t    |||«t |«}t    |||«t |d¬«5}|||«|jd«ddd«t |d¬«5}tj|«}|jd«ddd«t    |||«ddd«y#1swYŒ[xYw#1swYŒ+xYw#1swYyxYw)Nre©Úmoderrt)rÚ ensure_cleanrrTr&rwrjru)r#r"r}r…ror!Úhandles       r%Útest_round_trip_currentr‹·sè€ô&
‰Ó    ð/˜dáh Ô%ô—‘ Ó%ˆÜ˜ ¨#Ô.ä! $Ó'ˆÜ˜ ¨#Ô.ô$˜TÔ "ð     fÙ 8˜TÔ "Ø K‰K˜ŒN÷    ô$˜TÔ "ð     fÜ—^‘^ FÓ+ˆFØ K‰K˜ŒN÷    ô    ˜ ¨#Ô.÷%/ð/÷    ð    ú÷    ð    ú÷/ð/ús<•AC3Á&CÂC3Â'C'Â=C3ÃC$    Ã C3Ã'C0    Ã,C3Ã3C<c ó~—tdtjd«jd«zt    t d«t ¬«t    td«Dcgc]}d|›‘Œ    c}t ¬«¬«}tj|jtj«}tj||«ycc}w©    N皙™™™™ñ?éx©ér0ÚABCD©Údtyper‘úi-©ÚcolumnsrF)r ÚnpÚarangeÚreshaper ÚlistÚobjectÚrangerÚround_trip_pathlibÚ    to_picklerrTr\©ÚiÚdfr!s   r%Útest_pickle_path_pathlibr£ßs…€Ü    Ø Œbi‰i˜‹n×$Ñ$ WÓ-Ñ-Ü”d˜6“l¬&Ô1ܤu¨R£yÖ1 !r˜!˜’XÒ1¼Ô@ô
€Bô
× "Ñ " 2§<¡<´·±Ó @€FÜ×ј"˜fÕ%ùò2óÁ B:c ó~—tdtjd«jd«zt    t d«t ¬«t    td«Dcgc]}d|›‘Œ    c}t ¬«¬«}tj|jtj«}tj||«ycc}wr)r r˜r™ršr r›rœrrÚround_trip_localpathrŸrrTr\r s   r%Útest_pickle_path_localpathr§és…€Ü    Ø Œbi‰i˜‹n×$Ñ$ WÓ-Ñ-Ü”d˜6“l¬&Ô1ܤu¨R£yÖ1 !r˜!˜’XÒ1¼Ô@ô
€Bô
× $Ñ $ R§\¡\´2·>±>Ó B€FÜ×ј"˜fÕ%ùò2r¤có2—dtj«›dS)NÚ__z    __.pickle)ÚuuidÚuuid4©r'r%Úget_random_pathr­øs€à ”—
‘
“ ˆ~˜YÐ 'Ð'r'cóŠ—eZdZejZd„Zd„Zejjdgd¢«d„«Z d„Z d„Z d„Zy    )
ÚTestCompressioncóú—|€tj||«y|dk(rtj|d«}nE|dk(rt    j
|d«}n(|dk(r_t j|dt j¬«5}|j|tjj|««ddd«nÄ|dk(rwt|d«5}tj|d¬«5}|j|tjj|««}|j||«ddd«ddd«nH|d    k(rt!«|d«}n1|d
k(rt#d «j|d «}nd |›}t%|«‚|dvr@t|d«5}5|j|j'««ddd«ddd«yy#1swYŒNxYw#1swYŒ«xYw#1swYŒfxYw#1swYŒ7xYw#1swYyxYw)NÚgzipÚwÚbz2Úzip©Ú compressionÚtarrtr‡ÚxzÚzstdÚ    zstandardrezUnrecognized compression type: )r´r·)ÚshutilÚcopyfiler±rjr³ÚBZ2FileÚzipfileÚZipFileÚ ZIP_DEFLATEDÚwriteÚosroÚbasenameÚtarfileÚ
gettarinfoÚaddfilerr
Ú
ValueErrorÚread)    ÚselfÚsrc_pathÚ    dest_pathr¶Úfrpr·ÚtarinfoÚmsgs             r%Ú compress_filezTestCompression.compress_filesÍ€Ø Ð Ü O‰O˜H iÔ 0Ø à ˜&Ò  Ü—    ‘    ˜) SÓ)ŠAØ ˜EÒ !Ü— ‘ ˜I sÓ+ŠAØ ˜EÒ !Ü—‘ ¨C¼W×=QÑ=QÔRð >ÐVWØ—‘˜¤"§'¡'×"2Ñ"2°8Ó"<Ô=÷ >ð >à ˜EÒ !ܐh Ó%ð -¨Ü—\‘\ )°#Ô6ð-¸#Ø!Ÿn™n¨X´r·w±w×7GÑ7GÈÓ7QÓRGØ—K‘K ¨Ô,÷-÷ -ð -ð˜DÒ  Ø” “     ¨3Ó/‰AØ ˜FÒ "Ü*¨;Ó7×<Ñ<¸YÈÓM‰Aà3°K°=ÐAˆCܘS“/Ð !à ˜nÑ ,ܐh Ó%ð '¨Øñ'Ø—G‘G˜BŸG™G›IÔ&÷'÷ 'ð 'ð -÷ >ð >ú÷-ð-ú÷ -ð -ú÷'ð'ú÷ 'ð 'úsUÁ?0Gà   GÃ!AG Ä#GÆ G1Æ G%Æ/G1ÇG
Ç G    ÇGÇG"Ç%G.    Ç*G1Ç1G:c ó—|}|dz}|dz}tj|«5}tj|«5}tdtjd«j d«zt td«t¬«t td«Dcgc]}d    |›‘Œ    c}t¬«¬
«}    |    j||¬ «tj||¬ «5}
t|d «5} | j|
j««ddd«ddd«tj |d¬ «} tj"|    | «ddd«ddd«ycc}w#1swYŒTxYw#1swYŒXxYw#1swYŒ/xYw#1swYyxYw) Nú .compressedú.rawrŽrrr’r“r‘r•r–rµre)rr‰r r˜r™ršr r›rœrrŸÚdecompress_filerjrÁrÈrrTr\) rÉr¶r­ÚbaseÚpath1Úpath2Úp1Úp2r¡r¢rÌrpÚdf2s              r%Útest_write_explicitz#TestCompression.test_write_explicitsJ€ØˆØ}Ñ$ˆØv‘ ˆä _‰_˜UÓ #ð    + r¬2¯?©?¸5Ó+Að    +ÀRÜØ”b—i‘i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ô9ܬu°R«yÖ9¨!˜r ! šXÒ9ÄÔHôˆBð L‰L˜¨ˆLÔ 5ô×#Ñ# B°KÔ@ð 'ÀAܘ"˜d“^ð' rØ—H‘H˜QŸV™V›XÔ&÷'÷ 'ô
—.‘. °Ô6ˆCä × !Ñ ! " cÔ *÷%    +÷    +ð    +ùò:÷'ð'ú÷ 'ð 'ú÷    +ð    +ú÷    +ð    +úse¢E;¸AE/ EÂ<E/à E#Ã$ E    ÄE#Ä 5E/ÅE;ÅE/ÅE  ÅE#Å#E, Å(E/Å/E8    Å4E;Å;Fr¶)ÚÚNoneÚbadÚ7zc óЗtjtd¬«5tj|«5}t dt jd«jd«zttd«t¬«ttd«Dcgc]}d    |›‘Œ    c}t¬«¬
«}|j||¬ «ddd«ddd«ycc}w#1swYŒxYw#1swYyxYw) NzUnrecognized compression type©ÚmatchrŽrrr’r“r‘r•r–rµ)rOÚraisesrÇrr‰r r˜r™ršr r›rœrrŸ)rÉr¶r­ror¡r¢s      r%Útest_write_explicit_badz'TestCompression.test_write_explicit_bad7s·€ä ]‰]œ:Ð-LÔ Mñ    <Ü—‘ Ó1ð <°TÜØœ"Ÿ)™) C›.×0Ñ0°Ó9Ñ9Ü!¤$ v£,´fÔ=Ü´5¸³9Ö =¨a 2 a S¢Ò =ÄVÔLôð
— ‘ ˜T¨{ Ô;÷  <÷    <ð    <ùò
!>÷     <ð <ú÷    <ð    <ús5œC²AC     C Â%CÂ:Cà CÃC    ÃCÃC%c ó\—|}||z}|dz}|jj|j««}tj|«5}tj|«5}t dt jd«jd«zttd«t¬«ttd«D    cgc]}    d|    ›‘Œ    c}    t¬«¬    «}
|
j|«tj||¬
«5} t|d «5} | j!| j#««ddd«ddd«t%j&|d¬
«} tj(|
| «ddd«ddd«ycc}    w#1swYŒTxYw#1swYŒXxYw#1swYŒ/xYw#1swYyxYw) NrÒrŽrrr’r“r‘r•r–rµre)Ú_extension_to_compressionÚgetÚlowerrr‰r r˜r™ršr r›rœrrŸrÓrjrÁrÈrrTr\)rÉÚcompression_extr­rÔrÕrÖr¶r×rØr¡r¢rÌrprÙs              r%Útest_write_inferz TestCompression.test_write_inferBse€ØˆØÑ&ˆØ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¨!˜r ! šXÒ9ÄÔHôˆBð L‰L˜Ô ô×#Ñ# B°KÔ@ð 'ÀAܘ"˜d“^ð' rØ—H‘H˜QŸV™V›XÔ&÷'÷ 'ô
—.‘. °Ô6ˆCä × !Ñ ! " cÔ *÷%    +÷    +ð    +ùò:÷'ð'ú÷ 'ð 'ú÷    +ð    +ú÷    +ð    +úsgÁ F"Á!AFÂ8 E9Ã:FÃ> F
Ä  E>    Ä+F
Ä35FÅ(F"Å9FÅ>F ÆF
F ÆFÆF    ÆF"Æ"F+c ó^—|}|dz}|dz}tj|«5}tj|«5}tdtjd«j d«zt td«t¬«t td«Dcgc]}d    |›‘Œ    c}t¬«¬
«}    |    j|d¬ «|j|||¬ «tj||¬ «}
tj|    |
«ddd«ddd«ycc}w#1swYŒxYw#1swYyxYw) NrÒrÑrŽrrr’r“r‘r•r–rµ)rr‰r r˜r™ršr r›rœrrŸrÏrrTr\) rÉr¶r­rÔrÕrÖr×rØr¡r¢rÙs            r%Útest_read_explicitz"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¨!˜r ! šXÒ9ÄÔHôˆBð L‰L˜¨ˆLÔ .ð × Ñ ˜r 2°;Ð Ô ?ô—.‘. °Ô=ˆCÜ × !Ñ ! " cÔ *÷    +÷    +ð    +ùò:÷        +ð    +ú÷    +ð    +ús6¢D#¸AD DÂA&DÄD#ÄDÄD     ÄD#Ä#D,c ó¬—|}|dz}||z}|jj|j««}tj|«5}tj|«5}t dt jd«jd«zttd«t¬«ttd«D    cgc]}    d|    ›‘Œ    c}    t¬«¬    «}
|
j|d¬
«|j|||¬
«tj |«} tj"|
| «ddd«ddd«ycc}    w#1swYŒxYw#1swYyxYw) NrÒrŽrrr’r“r‘r•r–rµ)rårærçrr‰r r˜r™ršr r›rœrrŸrÏrrTr\) rÉrèr­rÔrÕrÖr¶r×rØr¡r¢rÙs             r%Útest_read_inferzTestCompression.test_read_inferrs#€ØˆØ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¨!˜r ! šXÒ9ÄÔHôˆBð L‰L˜¨ˆLÔ .ð × Ñ ˜r 2°;Ð Ô ?ô—.‘. Ó$ˆCÜ × !Ñ ! " cÔ *÷    +÷    +ð    +ùò:÷        +ð    +ú÷    +ð    +ús8Á E
Á!AD>Â8 D9ÃA$D>Ä(E
Ä9D>Ä>E    ÅE
EN)Ú__name__Ú
__module__Ú __qualname__ÚicomÚextension_to_compressionrårÏrÚrOÚmarkÚ parametrizerãrérërír¬r'r%r¯r¯ýsN„Ø $× =Ñ =Ðò'ò<+ð2 ‡[[×ј]Ò,EÓFñ<óGð<ò+ò4+ó,+r'r¯cóT—eZdZejj dgd¢«d„«Zy)Ú TestProtocolrh)rfrr+r,c óÆ—tj|«5}tdtjd«j d«zt td«t¬«t td«Dcgc]}d|›‘Œ    c}t¬«¬«}|j||¬    «tj|«}tj||«ddd«ycc}w#1swYyxYw)
NrŽrrr’r“r‘r•r–rg)rr‰r r˜r™ršr r›rœrrŸrrTr\)rÉrhr­ror¡r¢rÙs       r%Ú    test_readzTestProtocol.test_reads±€ä _‰_˜_Ó -ð    +°ÜØ”b—i‘i “n×,Ñ,¨WÓ5Ñ5Üœd 6›l´&Ô9ܬu°R«yÖ9¨!˜r ! šXÒ9ÄÔHôˆBð
L‰L˜¨ˆLÔ 1Ü—.‘. Ó&ˆCÜ × !Ñ ! " cÔ *÷    +ð    +ùò:÷        +ð    +ús–ACÁ- CÁ9ACÃCÃC N)rîrïrðrOrórôrør¬r'r%rörös%„Ø ‡[[×јZªÓ7ñ    +ó8ñ    +r'röÚ pickle_fileÚexcolsz test_py27.pkl)ÚaÚbÚcr“ztest_mi_py27.pkl)r5r.r1)rr+r,có„—|ddd|«}tj|«}tj|j|«y)NÚior(rk)rrTrrr—)r]rùrúror¢s     r%Útest_unicode_decode_errorrs8€ñ& D˜& (¨KÓ 8€DÜ     ‰˜Ó    €Bô×ј"Ÿ*™* fÕ-r'c óD—tj«5}tdtjd«j d«zt td«t¬«t td«Dcgc]}d|›‘Œ    c}t¬«¬«}t|d    «5}|j|«ddd«t|d
«5}tj|«}ddd«tj|«ddd«ycc}w#1swYŒWxYw#1swYŒ9xYw#1swYyxYw) NrŽrrr’r“r‘r•r–rert)rr‰r r˜r™ršr r›rœrrjrŸrrTr\)ror¡r¢rpr!s     r%Útest_pickle_buffer_roundtripr¼sí€Ü     ‰Ó    ð
*˜dÜ Ø ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ 1Üœ$˜v›,¬fÔ5ܬ5°«9Ö5 a˜2˜a˜SšÒ5¼VÔDô
ˆô
$˜Ó ð     Ø L‰L˜Ô ÷    ä $˜Ó ð    ( Ü—^‘^ BÓ'ˆF÷    (ä
×јb &Ô)÷
*ð
*ùò6÷    ð    ú÷    (ð    (ú÷
*ð
*úsN•ADÁ, C9Á8DÂC>Â(DÂ<D
ÃDÃ9DÃ>D    ÄDÄ
D    ÄDÄDÚmockurl)zhttp://url.comzftp://test.comzhttp://gzip.comc óþ‡‡—d„}Gd„d«Štj«5Šˆˆfd„}tdtjd«j d«zt td«t¬    «t td
«Dcgc]}d |›‘Œ    c}t¬    «¬ «}||‰«|jd |«tj|«}tj||«ddd«ycc}w#1swYyxYw)Ncóv—t|d«5}tj||d¬«ddd«y#1swYyxYwrdrirms   r%rqz3test_pickle_generalurl_read.<locals>.python_picklerÓs3€Ü $˜Ó ð    . Ü K‰K˜˜R¨"Õ -÷    .÷    .ñ    .úrrcó,—eZdZdd„Zd„Zd„Zd„Zd„Zy)ú5test_pickle_generalurl_read.<locals>.MockReadResponsecóT—t|d«|_d|vr
ddi|_yddi|_y)Nrtr±zContent-EncodingrÛ)rjÚfileÚheaders)rÉros  r%Ú__init__z>test_pickle_generalurl_read.<locals>.MockReadResponse.__init__Øs/€Ü˜T 4Ó(ˆDŒIؘ‰~Ø 2°FÐ;• à 2°BÐ7• r'có—|S©Nr¬©rÉs r%Ú    __enter__z?test_pickle_generalurl_read.<locals>.MockReadResponse.__enter__ßs€ØˆKr'có$—|j«yr )Úclose)rÉÚargss  r%Ú__exit__z>test_pickle_generalurl_read.<locals>.MockReadResponse.__exit__âs €Ø J‰JLr'có6—|jj«Sr )r    rÈrs r%rÈz:test_pickle_generalurl_read.<locals>.MockReadResponse.readås€Ø—9‘9—>‘>Ó#Ð #r'có6—|jj«Sr )r    rrs r%rz;test_pickle_generalurl_read.<locals>.MockReadResponse.closeès€Ø—9‘9—?‘?Ó$Ð $r'N©ÚreturnrÜ)rîrïrðr rrrÈrr¬r'r%ÚMockReadResponser×s„ó    8ò    ò    ò    $ó    %r'rcó•—‰‰«Sr r¬)rÚkwargsrros  €€r%Úmock_urlopen_readz6test_pickle_generalurl_read.<locals>.mock_urlopen_readísø€Ù# DÓ)Ð )r'rŽrrr’r“r‘r•r–zurllib.request.urlopen)rr‰r r˜r™ršr r›rœrÚsetattrrrTr\)    Ú monkeypatchrrqrr¡r¢r!rros           @@r%Útest_pickle_generalurl_readrÏsÔù€ò.÷%ñ%ô(
‰Ó    ð *˜dõ    *ôØ ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ 1Üœ$˜v›,¬fÔ5ܬ5°«9Ö5 a˜2˜a˜SšÒ5¼VÔDô
ˆñ
    r˜4Ô Ø×ÑÐ4Ð6GÔHÜ—‘ Ó(ˆÜ
×јb &Ô)÷ *ð *ùò6÷ *ð *ús¤AC3 C. AC3Ã.C3Ã3C<c óî—tjd«tj«5d}t    dt j d«jd«zttd«t¬«ttd«Dcgc]}d    |›‘Œ    c}t¬«¬
«}|j|«tj|«}tj||«ddd«ycc}w#1swYyxYw) NÚfsspeczmemory://mockfilerŽrrr’r“r‘r•r–)rOÚ importorskiprr‰r r˜r™ršr r›rœrrŸrrTr\)rr¡r¢r!s    r%Útest_pickle_fsspec_roundtripr"ûs¼€Ü
×јÔ!Ü     ‰Ó    ñ    *Ø%ˆÜ Ø ”"—)‘)˜C“.×(Ñ(¨Ó1Ñ 1Üœ$˜v›,¬fÔ5ܬ5°«9Ö5 a˜2˜a˜SšÒ5¼VÔDô
ˆð
      ‰ WÔÜ—‘ Ó(ˆÜ
×јb &Ô)÷    *ð    *ùò
6÷     *ð    *úsªAC+Â C&ÂAC+Ã&C+Ã+C4có—eZdZdd„Zy)ÚMyTzcó—yr r¬rs r%r z MyTz.__init__
s€Ø r'Nr)rîrïrðr r¬r'r%r$r$    s„ô r'r$cóėtt¬«t«f}tj|«}tj
|d|d«t |dt«sJ‚y)Nr“rr+)rrœr$rÚround_trip_picklerVr)r"r!s  r%Útest_read_pickle_with_subclassr(sO€äœFÔ#¤T£VÐ+€HÜ × !Ñ ! (Ó +€Fä×ј6 !™9 h¨q¡kÔ2Ü f˜Q‘i¤Ô &Ð&Ñ &r'c ó¾—tdtjd«jd«zt    t d«t ¬«t    td«Dcgc]}d|›‘Œ    c}t ¬«¬«}tj«5}|j||¬    «t|«j«}d
d
d
«tj«}|j||¬    «|jd «|j!«k(s|d vsJ‚t#j$||¬    «}|jd «tj&||«y
cc}w#1swYŒžxYw) ze
    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rr‰rŸrÚ
read_bytesrÿÚBytesIOruÚgetvaluerrTr\)r¶r¡r¢roÚ    referenceÚbufferÚread_dfs       r%Ú%test_pickle_binary_object_compressionr0s€ô
Ø Œbi‰i˜‹n×$Ñ$ WÓ-Ñ-Ü”d˜6“l¬&Ô1ܤu¨R£yÖ1 !r˜!˜’XÒ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Ü×ј"˜gÕ&ùò'2÷,ð,úsÁ E    -EÅEcóz—|}|}d„}||«||j«||«||j«y)NcóZ—tj|«}tj||«yr )rr'r\)rKÚ    unpickleds  r%Ú_test_roundtripzDtest_pickle_dataframe_with_multilevel_index.<locals>._test_roundtrip=s"€Ü×(Ñ(¨Ó/ˆ    Ü
×јe YÕ/r')ÚT)Ú/multiindex_year_month_day_dataframe_random_dataÚ multiindex_dataframe_random_dataÚymdrKr4s     r%Ú+test_pickle_dataframe_with_multilevel_indexr96s=€ð :€CØ ,€Eò0ñEÔِE—G‘GÔِCÔِC—E‘EÕr'có—tddd¬«}ttjj    d«j t |««|«}tj|«}|jjdk(sJ‚y)Nz1/1/2011z1/1/2012rH)rWr,) rrr˜ÚrandomÚ default_rngÚstandard_normalÚlenrr'rFrZ)ÚprngrBÚnew_tss   r%Ú"test_pickle_timeseries_periodindexrAGsb€ä ˜
 J°SÔ 9€DÜ    ”—    ‘    ×%Ñ% aÓ(×8Ñ8¼¸T»ÓCÀTÓ    J€BÜ × !Ñ ! "Ó %€FØ <‰<× Ñ  3Ò &Ð&Ñ &r'Únamei    gHˆ@iÑé )r+r,có¬—tjttjdtj
¬«|¬««}|j |k(sJ‚y)Né
r“)rB)rr'rr˜r™Úfloat64rB)rBr3s  r%Útest_pickle_preserve_namerGOs=€ô×$Ñ$¤V¬B¯I©I°bÄÇ
Á
Ô,KÐRVÔ%WÓX€IØ >‰>˜TÒ !Ð!Ñ !r'cóZ—tj|«}tj||«yr ©rr'rV)Údatetime_seriesÚunp_tss  r%Útest_pickle_datetimesrLWs"€Ü × !Ñ ! /Ó 2€FÜ×ј6 ?Õ3r'cóZ—tj|«}tj||«yr rI)Ú string_seriesÚ
unp_seriess  r%Útest_pickle_stringsrP\s"€Ü×%Ñ% mÓ4€JÜ×ј: }Õ5r'cód—ttd««jd«jdg}t    j
|«}|j jdjdk(sJ‚|j jdjdk(sJ‚t    j|dg|«y)NÚabcÚcategoryrr+)r+T) rr›ÚastypeÚilocrr'Ú_mgrÚblocksr:r=rV)Úserras  r%Ú test_pickle_preserves_block_ndimrYas”€ô ”e“Ó
$ ZÓ
5°q°cÑ
:€CÜ
×
˜sÓ
#€Cà 8‰8?‰?˜1Ñ × "Ñ " aÒ 'Ð'Ð 'Ø 8‰8?‰?˜1Ñ × #Ñ # tÒ +Ð+Ð +ô×ј3 ˜v™;¨Õ,r'rhcóâ—ttd««}tjt    |j
||¬«t    t j|¬««}tj||«y)Ni †)rhr¶rµ)    r rrržrrŸrrTr\)rhr¶r¢r!s    r%Ú%test_pickle_big_dataframe_compressionr[nsR€ô
”5˜“=Ó    !€BÜ × "Ñ "ܐ— ‘  x¸[ÔIÜ”—‘¨KÔ8ó€Fô×ј"˜fÕ%r'cóü—|tt«jdddd«}t|d«5}t    j
|«}ddd«t gg¬«}tj|«y#1swYŒ-xYw)Nr(r^z1.2.4zempty_frame_v1_2_4-GH#42345.pklrt)rFr—)    rrQrRrjrkrvr rr\)r]roÚfdr¢r"s     r%Ú#test_pickle_frame_v124_unpickle_130r^yss€á Ü ŒX‹×ÑØØØØ)ó  €Dô
ˆdDÓ    ð˜RÜ [‰[˜‹_ˆ÷ô˜r¨2Ô.€HÜ×ј"˜hÕ'÷    ðús °A2Á2A;cóҗtdgd¢i«}d}tjt|¬«5t    j
«}|j |d«ddd«y#1swYyxYw)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_deprecationrc‰s[€ä    CšÐ#Ó    $€Bð    1ðô
×    #Ñ    #¤M¸Ô    =ñ&Ü—‘“ˆØ
 ‰ V˜WÔ%÷&÷&ñ&ús ­'AÁA&)r(Údictrzlist[tuple[str, Any]])`Ú__doc__Ú
__future__rrr³ÚdatetimeÚ    functoolsrr±rÿrÂÚpathlibrrkr»rÄÚtypingrrªr¾Únumpyr˜rOÚ pandas.compatrr    Úpandas.compat._optionalr
Úpandas.compat.compressorsr Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsÚtdÚpandasrr r rrÚpandas._testingÚ_testingrÚ-pandas.tests.io.generate_legacy_storage_filesrÚpandas.io.commonÚcommonrñÚpandas.tseries.offsetsrrr&rórôr9r6Ú PickleBufferÚcastr™ršr?rbrqrwr|ÚparamrŸÚHIGHEST_PROTOCOLr‹r£r§Úfixturer­r¯rörœÚ
MultiIndexrrrr"Útzinfor$r(r0r9rArGrLrPÚskip_array_manager_invalid_testrYÚDEFAULT_PROTOCOLr[r^rcr¬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—\‘\Ð&<Ô=؈ ‰ Ø ˆI× Ñ ˜bŸl™l°V×5LÑ5LÔ MØ%ô    
ð    ˆ ‰ Ð&Y×&Ñ& r§|¡|¸aÔ@ÐEUÔV؈ ‰ Ø ˆI× Ñ ˜bŸl™l°QÔ 7Øô    
ð ó𠇁×ј B§L¡L°.Ð#AÓB؇×ј©'Ñ2DÓ2FÓ*GÓHñ/óIóCó!ð$/ò,&ò&ð‡ñ(óð(÷J+ñJ+÷d +ñ +ð‡×ÑØHÐà    ™%¢°vÔ>Ð?à Ø ˆBM‰Máš/°Ô8Ùš/°Ô8ð𐗑š)Ó$ h b§h¡hªyÓ&9Ð:ó  ð        
ð óñ .ó!ð .ò *ð&‡×ÑØ ÒFóñ&*óð&*òR *ô ˆ8?‰?ô ò
'ò'ò>ò"'ð‡×ÑØ
ˆS%˜Ð!2 ×!2Ñ!2°4¸¸RÓ!@À&Ð Ióñ"óð"ò
4ò
6ð
×#Ñ#ñ    -ó$ð    -ð‡×ј f×&=Ñ&=¸v×?VÑ?VÐ%WÓXñ&óYð&ò (ó     &r'