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
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
U
H=®d ‘ã@s¦dZddlmZddlZddlZejddkZerDeefZ    dd„Z
neZ    e Z e Zdd„Z
ejdkrpeZd    d
„Znd d
„Zeed ƒrÖdd lmZzddlmZWn ek
r¾ddlmZYnXdZGdd„deƒZndZddlmZdd„ZddlmZm Z m!Z!m"Z"m#Z#ddl$m%Z%m&Z&dZ'dZ(dZ)dZ*dZ+dZ,dZ-dZ.dZ/dZ0dZ1e2e3fdd„Z4d d!„Z5d"d#„Z6ejd$kr|d+d%d&„Z7nej8Z7Gd'd(„d(eƒZ9Gd)d*„d*eƒZ:dS),z.Fallback pure Python implementation of msgpacké)ÚdatetimeNécCs| ¡S©N)Ú    iteritems©Úd©rúSD:\z\workplace\VsCode\pyvenv\venv\Lib\site-packages\pip/_vendor/msgpack/fallback.pyÚdict_iteritems sr
cCs| ¡Sr)Úitemsrrrr    r
s)éécCs.t|jƒdko,t|jdtƒo,|jd d¡S)Nérz maximum recursion depth exceeded)ÚlenÚargsÚ
isinstanceÚstrÚ
startswith©Úerrr    Ú_is_recursionerrors
ÿýrcCsdS)NTrrrrr    r'sÚpypy_version_info)Ú newlist_hint)Ú BytesBuilder)Ú StringBuilderTc@s&eZdZd    dd„Zdd„Zdd„ZdS)
ÚStringIOócCs,|r tt|ƒƒ|_|j |¡ntƒ|_dSr)rrÚbuilderÚappend©ÚselfÚsrrr    Ú__init__7szStringIO.__init__cCs6t|tƒr| ¡}nt|tƒr&t|ƒ}|j |¡dSr)rÚ
memoryviewÚtobytesÚ    bytearrayÚbytesrrrrrr    Úwrite>s
 
 
 
zStringIO.writecCs
|j ¡Sr)rÚbuild©r rrr    ÚgetvalueEszStringIO.getvalueN)r)Ú__name__Ú
__module__Ú __qualname__r"r'r*rrrr    r6s
rF)ÚBytesIOcCsgSrr)Úsizerrr    Ú<lambda>Mrr0r)Ú
BufferFullÚ    OutOfDataÚ    ExtraDataÚ FormatErrorÚ
StackError)ÚExtTypeÚ    Timestampr ér iÿcCs(||ƒ|kr||ƒ|kS||ƒ|kSdSrr)ÚobjÚtÚtypeÚtuplerrr    Ú_check_type_strictds  r=cCst|ƒ}|jdkrtdƒ‚|S)Nrz$cannot unpack from multi-byte object)r#ÚitemsizeÚ
ValueError)r9Úviewrrr    Ú_get_data_from_bufferks
rAc
Ks’tddt|ƒi|—Ž}| |¡z | ¡}WnJtk
rHtdƒ‚Yn0tk
rv}zt|ƒrdt‚‚W5d}~XYnX|     ¡rŽt
||  ¡ƒ‚|S)aw
    Unpack an object from `packed`.
 
    Raises ``ExtraData`` when *packed* contains extra bytes.
    Raises ``ValueError`` when *packed* is incomplete.
    Raises ``FormatError`` when *packed* is not valid msgpack.
    Raises ``StackError`` when *packed* contains too nested.
    Other exceptions can be raised during unpacking.
 
    See :class:`Unpacker` for options.
    NÚmax_buffer_sizezUnpack failed: incomplete input)N) ÚUnpackerrÚfeedÚ_unpackr2r?ÚRecursionErrorrr5Ú_got_extradatar3Ú_get_extradata)ÚpackedÚkwargsÚunpackerÚretrrrr    Úunpackbrs 
  rM)réécCst |t|ƒ|¡S)z0Explicit type cast for legacy struct.unpack_from)ÚstructÚ unpack_fromr&)ÚfÚbÚorrr    Ú _unpack_fromsrUc@sÈeZdZdZdddddddddddedddddfdd    „Zd
d „Zd d „Zdd„Zdd„Z    dd„Z
dd„Z dd„Z e fdd„Ze fdd„Zdd„Zdd„ZeZd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„ZdS)*rCaÁ Streaming unpacker.
 
    Arguments:
 
    :param file_like:
        File-like object having `.read(n)` method.
        If specified, unpacker reads serialized data from it and :meth:`feed()` is not usable.
 
    :param int read_size:
        Used as `file_like.read(read_size)`. (default: `min(16*1024, max_buffer_size)`)
 
    :param bool use_list:
        If true, unpack msgpack array to Python list.
        Otherwise, unpack to Python tuple. (default: True)
 
    :param bool raw:
        If true, unpack msgpack raw to Python bytes.
        Otherwise, unpack to Python str by decoding with UTF-8 encoding (default).
 
    :param int timestamp:
        Control how timestamp type is unpacked:
 
            0 - Timestamp
            1 - float  (Seconds from the EPOCH)
            2 - int  (Nanoseconds from the EPOCH)
            3 - datetime.datetime  (UTC).  Python 2 is not supported.
 
    :param bool strict_map_key:
        If true (default), only str or bytes are accepted for map (dict) keys.
 
    :param callable object_hook:
        When specified, it should be callable.
        Unpacker calls it with a dict argument after unpacking msgpack map.
        (See also simplejson)
 
    :param callable object_pairs_hook:
        When specified, it should be callable.
        Unpacker calls it with a list of key-value pairs after unpacking msgpack map.
        (See also simplejson)
 
    :param str unicode_errors:
        The error handler for decoding unicode. (default: 'strict')
        This option should be used only when you have msgpack data which
        contains invalid UTF-8 string.
 
    :param int max_buffer_size:
        Limits size of data waiting unpacked.  0 means 2**32-1.
        The default value is 100*1024*1024 (100MiB).
        Raises `BufferFull` exception when it is insufficient.
        You should set this parameter when unpacking data from untrusted source.
 
    :param int max_str_len:
        Deprecated, use *max_buffer_size* instead.
        Limits max length of str. (default: max_buffer_size)
 
    :param int max_bin_len:
        Deprecated, use *max_buffer_size* instead.
        Limits max length of bin. (default: max_buffer_size)
 
    :param int max_array_len:
        Limits max length of array.
        (default: max_buffer_size)
 
    :param int max_map_len:
        Limits max length of map.
        (default: max_buffer_size//2)
 
    :param int max_ext_len:
        Deprecated, use *max_buffer_size* instead.
        Limits max size of ext type.  (default: max_buffer_size)
 
    Example of streaming deserialize from file-like object::
 
        unpacker = Unpacker(file_like)
        for o in unpacker:
            process(o)
 
    Example of streaming deserialize from socket::
 
        unpacker = Unpacker(max_buffer_size)
        while True:
            buf = sock.recv(1024**2)
            if not buf:
                break
            unpacker.feed(buf)
            for o in unpacker:
                process(o)
 
    Raises ``ExtraData`` when *packed* contains extra bytes.
    Raises ``OutOfData`` when *packed* is incomplete.
    Raises ``FormatError`` when *packed* is not valid msgpack.
    Raises ``StackError`` when *packed* contains too nested.
    Other exceptions can be raised during unpacking.
    NrTFi@éÿÿÿÿcCsÆ|
dkr d}
|dkrd|_nt|jƒs.tdƒ‚||_d|_tƒ|_d|_d|_| sVd} | dkrb| } |dkrn| }|dkrz| }|dkrŠ| d}|dkr–| }| |_    ||j    kr®t
d    ƒ‚|p¼t |j    d
ƒ|_ t |ƒ|_t |ƒ|_|
|_||_d|krôd ksþnt
d ƒ‚||_|    |_||_||_| |_| |_||_||_||_||_d|_|    dk    r\t|    ƒs\td ƒ‚|dk    rxt|ƒsxtdƒ‚|dk    r”t|ƒs”tdƒ‚|dk    r°|dk    r°tdƒ‚t| ƒsÂtdƒ‚dS)NÚstrictTz!`file_like.read` must be callableFriÿÿÿrVrz.read_size must be smaller than max_buffer_sizei@r ztimestamp must be 0..3z`list_hook` is not callablez`object_hook` is not callablez#`object_pairs_hook` is not callablez8object_pairs_hook and object_hook are mutually exclusivez`ext_hook` is not callable)Ú_feedingÚcallableÚreadÚ    TypeErrorÚ    file_liker%Ú_bufferÚ_buff_iÚ_buf_checkpointÚ_max_buffer_sizer?ÚminÚ
_read_sizeÚboolÚ_rawÚ_strict_map_keyÚ_unicode_errorsÚ    _use_listÚ
_timestampÚ
_list_hookÚ _object_hookÚ_object_pairs_hookÚ    _ext_hookÚ _max_str_lenÚ _max_bin_lenÚ_max_array_lenÚ _max_map_lenÚ _max_ext_lenÚ_stream_offset)r r\Ú    read_sizeÚuse_listÚrawÚ    timestampÚstrict_map_keyÚ object_hookÚobject_pairs_hookÚ    list_hookÚunicode_errorsrBÚext_hookÚ max_str_lenÚ max_bin_lenÚ max_array_lenÚ max_map_lenÚ max_ext_lenrrr    r"øsp
    
 
 
ÿ
zUnpacker.__init__cCsr|js
t‚t|ƒ}t|jƒ|jt|ƒ|jkr4t‚|jdkrb|jd|j…=|j|j8_d|_|j     |¡dS©Nr)
rXÚAssertionErrorrArr]r^r`r1r_Úextend)r Ú
next_bytesr@rrr    rDUs
 
z Unpacker.feedcCs"|j|j|j7_|j|_dS)z+ Gets rid of the used parts of the buffer. N)rrr^r_r)rrr    Ú_consumedszUnpacker._consumecCs|jt|jƒkSr)r^rr]r)rrr    rGiszUnpacker._got_extradatacCs|j|jd…Sr)r]r^r)rrr    rHlszUnpacker._get_extradatacCs| |¡}| ¡|Sr)Ú_readr†©r ÚnrLrrr    Ú
read_bytesos
zUnpacker.read_bytescCs,| |¡|j}|||_|j|||…Sr)Ú_reserver^r])r r‰Úirrr    r‡ts
 
zUnpacker._readcCsØt|jƒ|j|}|dkr dS|jr2|j|_t‚|jdkr`|jd|j…=|j|j8_d|_| }|dkr¶t|j|ƒ}|j     |¡}|sŒq¶t
|t ƒsšt ‚|j|7_|t|ƒ8}qft|jƒ||jkrÔd|_t‚dSr‚) rr]r^rXr_r2Úmaxrbr\rZrr&rƒ)r r‰Ú remain_bytesÚ to_read_bytesÚ    read_datarrr    r‹{s,
  zUnpacker._reservecCs&
t}d}d}| d¡|j|j}|jd7_|d@dkrD|}    nØ|d@dkr`d|dA}    n¼|d@dkrž|d@}t}||jkrtd    ||jƒ‚| |¡}    n~|d
@d krÒ|d @}t}||j    krÎtd ||j    ƒ‚    nJ|d
@dkr
|d @}t
}||j k
rtd||j ƒ‚    n|dkrd}    n|dkr.d}nî|dkr@d}nÜ|dkržt }| d¡|j|j}|jd7_||j krtd||j fƒ‚| |¡}n~|dkrt }| d¡td|j|jƒd}|jd7_||j krötd||j fƒ‚| |¡}n|dkrjt }| d¡td|j|jƒd}|jd7_||j kr\td||j fƒ‚| |¡}n²|dkrÐt}| d¡td|j|jƒ\}}|jd7_||jkrÂtd||jfƒ‚| |¡}nL|dkr6t}| d ¡td!|j|jƒ\}}|jd 7_||jkr(td||jfƒ‚| |¡}næ|d"krœt}| d#¡td$|j|jƒ\}}|jd#7_||jkrŽtd||jfƒ‚| |¡}n€|d%krÖ| d¡td&|j|jƒd}|jd7_nF|d'kr| d(¡td)|j|jƒd}|jd(7_n |d*krB| d¡|j|j}|jd7_nÚ|d+kr|| d¡td|j|jƒd}|jd7_n |d,kr¶| d¡td|j|jƒd}|jd7_nf|d-krð| d(¡td.|j|jƒd}|jd(7_n,|d/kr*| d¡td0|j|jƒd}|jd7_nò|d1krd| d¡td2|j|jƒd}|jd7_n¸|d3krž| d¡td4|j|jƒd}|jd7_n~|d5krØ| d(¡td6|j|jƒd}|jd(7_nD|d7kr4t}|jdkrtdd|jfƒ‚| d¡td8|j|jƒ\}}|jd7_nè|d9krt}|jdkr`tdd|jfƒ‚| d ¡td:|j|jƒ\}}|jd 7_nŒ|d;krìt}|jdkr¼tdd|jfƒ‚| d#¡td<|j|jƒ\}}|jd#7_n0|d=krHt}|jd(krtdd(|jfƒ‚| d>¡td?|j|jƒ\}}|jd>7_nÔ|d@kr¤t}|jdAkrttddA|jfƒ‚| dB¡tdC|j|jƒ\}}|jdB7_nx|dDkrþt}| d¡|j|j}|jd7_||jkrðtd    ||jƒ‚| |¡}n|dEkr^t}| d¡td|j|jƒ\}|jd7_||jkrPtd    ||jƒ‚| |¡}n¾|dFkr¾t}| d¡td|j|jƒ\}|jd7_||jkr°td    ||jƒ‚| |¡}n^|dGk    rt}| d¡td|j|jƒ\}|jd7_||j    k
rtd ||j    ƒ‚n|dHk    rht}| d¡td|j|jƒ\}|jd7_||j    k
rtd ||j    ƒ‚n´|dIk    r¼| d¡td|j|jƒ\}|jd7_||j k    r¶td||j ƒ‚t
}n`|dJk
r| d¡td|j|jƒ\}|jd7_||j k
r
td||j ƒ‚t
}n tdK|ƒ‚|||fS)LNrré€éàrVéÿé éz%s exceeds max_str_len(%s)éðééz%s exceeds max_array_len(%s)z%s exceeds max_map_len(%s)éÀéÂFéÃTéÄz%s exceeds max_bin_len(%s)éÅrú>HéÆr8ú>IéÇÚBbz%s exceeds max_ext_len(%s)éÈr z>HbéÉr z>IbéÊz>féËéz>déÌéÍéÎéÏz>QéÐrSéÑz>héÒz>iéÓz>qéÔÚb1séÕÚb2séÖÚb4sé×é    Úb8séØééÚb16séÙéÚéÛéÜéÝéÞéßzUnknown header: 0x%x)ÚTYPE_IMMEDIATEr‹r]r^ÚTYPE_RAWrmr?r‡Ú
TYPE_ARRAYroÚTYPE_MAPrpÚTYPE_BINrnrUÚTYPE_EXTrqr4)r ÚexecuteÚtypr‰r9rSÚLrrr    Ú _read_header›s¢
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  zUnpacker._read_headerc
sˆˆ |¡\}}}|tkr,|tkr(tdƒ‚|S|tkrH|tkrDtdƒ‚|S|tkrÀ|tkrtt|ƒD]}ˆ t¡q`dSt    |ƒ}t|ƒD]}| 
ˆ t ¡¡q„ˆj dk    r®ˆ  |¡}ˆj r¸|St|ƒS|tkr´|tkrøt|ƒD]}ˆ t¡ˆ t¡qÚdSˆjdk    r"ˆ ‡fdd„t|ƒDƒ¡}nŽi}t|ƒD]j}ˆ t ¡}ˆjrjt|ƒttfkrjtdtt|ƒƒƒ‚tsˆt|ƒtkrˆt |¡}ˆ t ¡||<q.ˆjdk    r°ˆ |¡}|S|tkrÂdS|tkrðˆjrÞt|ƒ}n| dˆj¡}|S|tkrt|ƒS|tkrv|dkrft  t|ƒ¡}    ˆj!dkr8|     "¡Sˆj!d    krL|     #¡Sˆj!d
kr`|     $¡S|    Snˆ %|t|ƒ¡S|t&ks„t'‚|S) NzExpected arrayz Expected mapc3s"|]}ˆ t¡ˆ t¡fVqdSr)rEÚ EX_CONSTRUCT)Ú.0Ú_r)rr    Ú    <genexpr>sÿz#Unpacker._unpack.<locals>.<genexpr>z%s is not allowed for map keyÚutf_8rVrrr )(rÍÚEX_READ_ARRAY_HEADERrÆr?ÚEX_READ_MAP_HEADERrÇÚEX_SKIPÚxrangerErrrÎrirgr<rkrer;Úunicoder&rÚPY2ÚsysÚinternrjrÅrdÚdecoderfrÈrÉr7Ú
from_bytesrhÚto_unixÚ to_unix_nanoÚ to_datetimerlrÄrƒ)
r rÊrËr‰r9rŒrLrÐÚkeyÚtsrr)r    rEos‚   
 
 
 
  þ
 
ÿ
 
 
 
 
 
 
 
   zUnpacker._unpackcCs|Srrr)rrr    Ú__iter__¼szUnpacker.__iter__cCsTz| t¡}| ¡|WStk
r8| ¡t‚Yntk
rNt‚YnXdSr)rErÎr†r2Ú StopIterationrFr5©r rLrrr    Ú__next__¿s
zUnpacker.__next__cCs| t¡| ¡dSr)rErÕr†r)rrr    ÚskipÌs
z Unpacker.skipcCs4z| t¡}Wntk
r&t‚YnX| ¡|Sr)rErÎrFr5r†rärrr    ÚunpackÐs 
zUnpacker.unpackcCs| t¡}| ¡|Sr)rErÓr†rärrr    Úread_array_headerØs
zUnpacker.read_array_headercCs| t¡}| ¡|Sr)rErÔr†rärrr    Úread_map_headerÝs
zUnpacker.read_map_headercCs|jSr)rrr)rrr    Útellâsz Unpacker.tell)r+r,r-Ú__doc__r6r"rDr†rGrHrŠr‡r‹rÎrÍrErâråÚnextrærçrèrérêrrrr    rC˜sJaî
]  U M rCc@s–eZdZdZd#dd„Zeeefdd„Zd    d
„Z    d d „Z
d d„Z dd„Z dd„Z dd„Zdd„Zefdd„Zdd„Zdd„Zdd„Zdd „Zd!d"„ZdS)$ÚPackerag
    MessagePack Packer
 
    Usage:
 
        packer = Packer()
        astream.write(packer.pack(a))
        astream.write(packer.pack(b))
 
    Packer's constructor has some keyword arguments:
 
    :param callable default:
        Convert user type to builtin type that Packer supports.
        See also simplejson's document.
 
    :param bool use_single_float:
        Use single precision float type for float. (default: False)
 
    :param bool autoreset:
        Reset buffer after each pack and return its content as `bytes`. (default: True).
        If set this to false, use `bytes()` to get content and `.reset()` to clear buffer.
 
    :param bool use_bin_type:
        Use bin type introduced in msgpack spec 2.0 for bytes.
        It also enables str8 type for unicode. (default: True)
 
    :param bool strict_types:
        If set to true, types will be checked to be exact. Derived classes
        from serializable types will not be serialized and will be
        treated as unsupported type and forwarded to default.
        Additionally tuples will not be serialized as lists.
        This is useful when trying to implement accurate serialization
        for python types.
 
    :param bool datetime:
        If set to true, datetime with tzinfo is packed into Timestamp type.
        Note that the tzinfo is stripped in the timestamp.
        You can get UTC datetime with `timestamp=3` option of the Unpacker.
        (Python 2 is not supported).
 
    :param str unicode_errors:
        The error handler for encoding unicode. (default: 'strict')
        DO NOT USE THIS!!  This option is kept for very specific usage.
    NFTcCsf||_||_||_||_tƒ|_tr0|r0tdƒ‚t|ƒ|_    |p@d|_
|dk    r\t |ƒs\t dƒ‚||_ dS)Nz%datetime is not supported in Python 2rWzdefault must be callable)Ú _strict_typesÚ
_use_floatÚ
_autoresetÚ _use_bin_typerr]rØr?rcÚ    _datetimerfrYr[Ú_default)r ÚdefaultÚuse_single_floatÚ    autoresetÚ use_bin_typeÚ strict_typesrr{rrr    r"s
 
 
zPacker.__init__c Cs°d}|jr|}t}nttf}|dkr,tdƒ‚|dkr@|j d¡S||tƒrf|rZ|j d¡S|j d¡S||tƒr€d|kr†dkržnn|j t     d|¡¡Sd    |kr²dkrÊnn|j t     d
|¡¡Sd|krÞd krønn|j t     d d |¡¡Sd|krdkr*nn|j t     dd|¡¡Sd |krBdkr\nn|j t     dd|¡¡Sd|krtdkrŽnn|j t     dd|¡¡Sd|kr¦dkrÀnn|j t     dd|¡¡Sd|krØdkrònn|j t     dd|¡¡Sd|kr
dkr$nn|j t     dd|¡¡Sd |kr<dkrVnn|j t     d!d"|¡¡S|sx|j
dk    rx| 
|¡}d#}qt d$ƒ‚||t t fƒrÊt|ƒ}|d%kr´td&t|ƒjƒ‚| |¡|j |¡S||tƒr| d'|j¡}t|ƒ}|d%krþtd(ƒ‚| |¡|j |¡S||tƒrVt|ƒ|j}|d%kr@td)ƒ‚| |¡|j |¡S||tƒr–|jr€|j t     d*d+|¡¡S|j t     d,d-|¡¡S||ttfƒrê||tƒrÀd.}| ¡}    n |j}|j}    t|t ƒsÜt!‚t|    t ƒsìt!‚t|    ƒ}
|
d/kr |j d0¡nº|
d1kr$|j d2¡n¢|
d3kr<|j d4¡nŠ|
d5krT|j d6¡nr|
d7krl|j d8¡nZ|
d krŽ|j t     d9d:|
¡¡n8|
dkr°|j t     dd;|
¡¡n|j t     dd<|
¡¡|j t     d
|¡¡|j |    ¡dS|||ƒr0t|ƒ}| "|¡t#|ƒD]} | $|| |d/¡qdS||t%ƒrV| &t|ƒt'|ƒ|d/¡S|j(rz||t)ƒrzt *|¡}d/}q|sœ|j
dk    rœ| 
|¡}d/}qt+d=|fƒ‚qdS)>NFrzrecursion limit exceededóÀóÃóÂr‘ÚBiàÿÿÿrSr“ÚBBr¨i€ÿÿÿz>Bbr¬éÿÿú>BHr©i€ÿÿz>Bhr­ìÿÿú>BIrªi€z>Bir®lÿÿÿÿz>BQr«lûÿÿÿz>Bqr¯TzInteger value out of rangeìz%s is too largezutf-8zString is too largezMemoryview is too largez>Bfr¥z>Bdr¦rVróÔróÕr8óÖr§ó×rºóØú>BBr¡r£r¤zCannot serialize %r),rîÚlistr<r?r]r'rcÚ    int_typesrPÚpackróÚ OverflowErrorr&r%rr;r+Ú_pack_bin_headerr×ÚencoderfÚ_pack_raw_headerr#r>Úfloatrïr6r7Úto_bytesÚcodeÚdatarÚintrƒÚ_pack_array_headerrÖÚ_packÚdictÚ_pack_map_pairsr
ròÚ    _DateTimeÚ from_datetimer[) r r9Ú
nest_limitÚcheckÚcheck_type_strictÚ default_usedÚ
list_typesr‰rrrÌrŒrrr    r,sÜ 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  ÿ
 
z Packer._packcCsFz| |¡Wntƒ|_‚YnX|jrB|j ¡}tƒ|_|SdSr)rrr]rðr*)r r9rLrrr    r ¦s
z Packer.packcCs0| t|ƒ|¡|jr,|j ¡}tƒ|_|SdSr)rrrðr]r*r)r ÚpairsrLrrr    Úpack_map_pairs±s
 
zPacker.pack_map_pairscCs6|dkr t‚| |¡|jr2|j ¡}tƒ|_|SdS©Nr)r?rrðr]r*rrˆrrr    Úpack_array_header¸s
 
zPacker.pack_array_headercCs6|dkr t‚| |¡|jr2|j ¡}tƒ|_|SdSr")r?Ú_pack_map_headerrðr]r*rrˆrrr    Úpack_map_headerÁs
 
zPacker.pack_map_headercCsJt|tƒstdƒ‚d|kr&dks0ntdƒ‚t|tƒsBtdƒ‚t|ƒ}|dkrZtdƒ‚|dkrp|j d    ¡n¶|d
kr†|j d ¡n |d krœ|j d ¡nŠ|dkr²|j d¡nt|dkrÈ|j d¡n^|dkrê|j dt     d|¡¡n<|dkr|j dt     d|¡¡n|j dt     d|¡¡|j t     d|¡¡|j |¡dS)Nztypecode must have int type.réztypecode should be 0-127zdata must have bytes typerzToo large datarrrrr8rr§rrºrr“óÇrürþóÈržóÉr )
rrr[r?r&rr]r'rPr )r ÚtypecoderrÌrrr    Ú pack_ext_typeÊs4
 
 
zPacker.pack_ext_typecCsh|dkr |j t dd|¡¡S|dkr>|j t dd|¡¡S|dkr\|j t dd    |¡¡Std
ƒ‚dS) Nr˜rür—rþrÿrÀrrrÁzArray is too large©r]r'rPr r?©r r‰rrr    rçszPacker._pack_array_headercCsh|dkr |j t dd|¡¡S|dkr>|j t dd|¡¡S|dkr\|j t dd    |¡¡Std
ƒ‚dS) Nr˜rür‘rþrÿrÂrrrÃzDict is too larger,r-rrr    r$ðszPacker._pack_map_headercCs<| |¡|D](\}}| ||d¡| ||d¡qdS)Nr)r$r)r r‰r rÚkÚvrrr    rùs
 zPacker._pack_map_pairscCs”|dkr"|j t dd|¡¡nn|jrH|dkrH|j t dd|¡¡nH|dkrh|j t dd    |¡¡n(|d
krˆ|j t d d |¡¡ntd ƒ‚dS)Nr•rür”r“rr½rþrÿr¾rrr¿zRaw is too large)r]r'rPr rñr?r-rrr    rÿszPacker._pack_raw_headercCsv|js| |¡S|dkr.|j t dd|¡¡S|dkrL|j t dd|¡¡S|dkrj|j t dd    |¡¡Std
ƒ‚dS) Nr“rrœrþrÿrrrrŸzBin is too large)rñrr]r'rPr r?r-rrr    r  s
zPacker._pack_bin_headercCs
|j ¡S)z/Return internal buffer contents as bytes object)r]r*r)rrr    r&sz Packer.bytescCs tƒ|_dS)zYReset internal buffer.
 
        This method is useful only when autoreset=False.
        N)rr]r)rrr    Úresetsz Packer.resetcCs"tstrt| ¡ƒS|j ¡SdS)zReturn view of internal buffer.N)ÚUSING_STRINGBUILDERrØr#r&r]Ú    getbufferr)rrr    r2"s zPacker.getbuffer)NFTTFFN)r+r,r-rër"ÚDEFAULT_RECURSE_LIMITrr=rr r!r#r%r+rr$rrr r&r0r2rrrr    ríæs4/ø
û
z                    rí)r);rërrrÙrPÚ version_inforØrÚlongr
r
rr×ÚrangerÖÚ RuntimeErrorrFrÚhasattrZ__pypy__rZ__pypy__.buildersrrÚ ImportErrorr1ÚobjectrÚior.Ú
exceptionsr1r2r3r4r5Úextr6r7rÕrÎrÓrÔrÄrÆrÇrÅrÈrÉr3r;r<r=rArMrUrQrCrírrrr    Ú<module>sf 
 
 
 
 
    R