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
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
Ë
Kñúh¨ãóv—dZddlZddlZddlZddlmZddlZddlZddl    m
Z
ddl m Z m Z mZmZmZmZmZmZddlmZej,ej.ej0ej2ej4ej6ej8ej:ej<ej>ej@ejBe"g Z#gZ$e#D]ÈZ%dD]ÁZ&ejNe%«jQe&«Z'ejRd«jUe'«Z+e$jYejZge'¬    «ejZd
e'¬    «e+e+j]d «e+j]d «j^e+j]d «ddd …ddd …fg«ŒÃŒÊgd¢Z0dd gddgddggdfddgddgddggdfgZ1dddddgd¢fddgfdd d!d"gfd#d$gZ2dd gd%dd&d%d'gddgd(d gfd)d*fd+d,ddgddggdfddgd-dd.d-d/gddgd d(gfd0d1fd2d3ddgddggdfgZ3ejZe1ejNe0«jQd4«¬    «ejZe3ejNe2«jQd4«¬    «ejZe1ejNe0«jQd5«¬    «ejZe3ejNe2«jQd5«¬    «ejhd(d6g¬    «gZ5Gd7„d8e«Z6d9„Z7d:„Z8d;„Z9d<„Z:d=„Z;d>„Z<d?„Z=d@„Z>dA„Z?ej€jƒedB¬C«ej€j„dD„««ZCdE„ZDejNdFd*¬G«ZEejNdHdIgdJdJgd(dKgdLœ«ZFejNdMdNgdJeFgdOœ«ZGejNgdP¢dJgdzdOœ«ZHejNdHdIgdJdJgd(dKgdQdRgdSœ«ZIejNggddTœ«ZJej€j—dUeEeFeGeHeIeJg«dV„«ZLej€jƒejšdWk\dX¬C«ej€jedY¬C«dZ„««ZOd[„ZPd\„ZQej€j—dUejNejNdHej.fdIej2fdMej6fgd*¬G«d]«ejNd^ejNdHdIgd_d_gddgdd`œd]«dafg«ejNdbg«ejNd^ejNejNejNdHdIgd_d_gddgdd`œ«d]f«daf«fg«ejNdHejNejNejNejNdHeRfdIejNdHdIgd_d_gddgdd`œ«fg«d]f«daf«dcf«fg«g«dd„«ZSde„ZTej€jƒedB¬C«df„«ZUej€j—dgdhdg«di„«ZVdj„ZWdk„ZXgdl¢ZYgdm¢ZZdn„Z[do„Z\dp„Z]dq„Z^dr„Z_ds„Z`dt„Zadu„Zbdv„Zcej€jƒe dw¬C«ej€jƒe dx¬C«ej€j„edy¬z«d{„««««Zdd|„Zed}„Zfd~„Zgej€j—dUejNdHdIgehejNdd€di¬‚«gdOœ«ejNeRd€di¬‚«ejNdƒeRd„ffgd€di¬‚«ejNdHdIgehejNdMgejNeRi¬‚«gdOœ«gdOœ«g«ej€jƒe xrejÒjÔd…kd†¬C«d‡„««Zky)ˆa¹D Test the .npy file format.
 
Set up:
 
    >>> import sys
    >>> from io import BytesIO
    >>> from numpy.lib import format
    >>>
    >>> scalars = [
    ...     np.uint8,
    ...     np.int8,
    ...     np.uint16,
    ...     np.int16,
    ...     np.uint32,
    ...     np.int32,
    ...     np.uint64,
    ...     np.int64,
    ...     np.float32,
    ...     np.float64,
    ...     np.complex64,
    ...     np.complex128,
    ...     object,
    ... ]
    >>>
    >>> basic_arrays = []
    >>>
    >>> for scalar in scalars:
    ...     for endian in '<>':
    ...         dtype = np.dtype(scalar).newbyteorder(endian)
    ...         basic = np.arange(15).astype(dtype)
    ...         basic_arrays.extend([
    ...             np.array([], dtype=dtype),
    ...             np.array(10, dtype=dtype),
    ...             basic,
    ...             basic.reshape((3,5)),
    ...             basic.reshape((3,5)).T,
    ...             basic.reshape((3,5))[::-1,::2],
    ...         ])
    ...
    >>>
    >>> Pdescr = [
    ...     ('x', 'i4', (2,)),
    ...     ('y', 'f8', (2, 2)),
    ...     ('z', 'u1')]
    >>>
    >>>
    >>> PbufferT = [
    ...     ([3,2], [[6.,4.],[6.,4.]], 8),
    ...     ([4,3], [[7.,5.],[7.,5.]], 9),
    ...     ]
    >>>
    >>>
    >>> Ndescr = [
    ...     ('x', 'i4', (2,)),
    ...     ('Info', [
    ...         ('value', 'c16'),
    ...         ('y2', 'f8'),
    ...         ('Info2', [
    ...             ('name', 'S2'),
    ...             ('value', 'c16', (2,)),
    ...             ('y3', 'f8', (2,)),
    ...             ('z3', 'u4', (2,))]),
    ...         ('name', 'S2'),
    ...         ('z2', 'b1')]),
    ...     ('color', 'S2'),
    ...     ('info', [
    ...         ('Name', 'U8'),
    ...         ('Value', 'c16')]),
    ...     ('y', 'f8', (2, 2)),
    ...     ('z', 'u1')]
    >>>
    >>>
    >>> NbufferT = [
    ...     ([3,2], (6j, 6., ('nn', [6j,4j], [6.,4.], [1,2]), 'NN', True), 'cc', ('NN', 6j), [[6.,4.],[6.,4.]], 8),
    ...     ([4,3], (7j, 7., ('oo', [7j,5j], [7.,5.], [2,1]), 'OO', False), 'dd', ('OO', 7j), [[7.,5.],[7.,5.]], 9),
    ...     ]
    >>>
    >>>
    >>> record_arrays = [
    ...     np.array(PbufferT, dtype=np.dtype(Pdescr).newbyteorder('<')),
    ...     np.array(NbufferT, dtype=np.dtype(Ndescr).newbyteorder('<')),
    ...     np.array(PbufferT, dtype=np.dtype(Pdescr).newbyteorder('>')),
    ...     np.array(NbufferT, dtype=np.dtype(Ndescr).newbyteorder('>')),
    ... ]
 
Test the magic string writing.
 
    >>> format.magic(1, 0)
    '\x93NUMPY\x01\x00'
    >>> format.magic(0, 0)
    '\x93NUMPY\x00\x00'
    >>> format.magic(255, 255)
    '\x93NUMPY\xff\xff'
    >>> format.magic(2, 5)
    '\x93NUMPY\x02\x05'
 
Test the magic string reading.
 
    >>> format.read_magic(BytesIO(format.magic(1, 0)))
    (1, 0)
    >>> format.read_magic(BytesIO(format.magic(0, 0)))
    (0, 0)
    >>> format.read_magic(BytesIO(format.magic(255, 255)))
    (255, 255)
    >>> format.read_magic(BytesIO(format.magic(2, 5)))
    (2, 5)
 
Test the header writing.
 
    >>> for arr in basic_arrays + record_arrays:
    ...     f = BytesIO()
    ...     format.write_array_header_1_0(f, arr)   # XXX: arr is not a dict, items gets called on it
    ...     print(repr(f.getvalue()))
    ...
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '|u1', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '|u1', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '|u1', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '|i1', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '|i1', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '|i1', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<u2', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<u2', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<u2', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<u2', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<u2', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<u2', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>u2', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>u2', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>u2', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>u2', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>u2', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>u2', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<i2', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<i2', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<i2', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<i2', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<i2', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<i2', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>i2', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>i2', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>i2', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>i2', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>i2', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>i2', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<u4', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<u4', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<u4', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<u4', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<u4', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<u4', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>u4', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>u4', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>u4', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>u4', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>u4', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>u4', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<i4', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<i4', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<i4', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<i4', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<i4', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<i4', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>i4', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>i4', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>i4', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>i4', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>i4', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>i4', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<u8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<u8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<u8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<u8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<u8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<u8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>u8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>u8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>u8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>u8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>u8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>u8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<i8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<i8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<i8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<i8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<i8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<i8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>i8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>i8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>i8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>i8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>i8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>i8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<f4', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<f4', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<f4', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<f4', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<f4', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<f4', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>f4', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>f4', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>f4', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>f4', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>f4', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>f4', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<f8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<f8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<f8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<f8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<f8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<f8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>f8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>f8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>f8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>f8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>f8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>f8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<c8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '<c8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '<c8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '<c8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '<c8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '<c8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '>c8', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': '>c8', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': '>c8', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': '>c8', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': '>c8', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': '>c8', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': '<c16', 'fortran_order': False, 'shape': (0,)}             \n"
    "F\x00{'descr': '<c16', 'fortran_order': False, 'shape': ()}               \n"
    "F\x00{'descr': '<c16', 'fortran_order': False, 'shape': (15,)}            \n"
    "F\x00{'descr': '<c16', 'fortran_order': False, 'shape': (3, 5)}           \n"
    "F\x00{'descr': '<c16', 'fortran_order': True, 'shape': (5, 3)}            \n"
    "F\x00{'descr': '<c16', 'fortran_order': False, 'shape': (3, 3)}           \n"
    "F\x00{'descr': '>c16', 'fortran_order': False, 'shape': (0,)}             \n"
    "F\x00{'descr': '>c16', 'fortran_order': False, 'shape': ()}               \n"
    "F\x00{'descr': '>c16', 'fortran_order': False, 'shape': (15,)}            \n"
    "F\x00{'descr': '>c16', 'fortran_order': False, 'shape': (3, 5)}           \n"
    "F\x00{'descr': '>c16', 'fortran_order': True, 'shape': (5, 3)}            \n"
    "F\x00{'descr': '>c16', 'fortran_order': False, 'shape': (3, 3)}           \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': 'O', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (0,)}              \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': ()}                \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (15,)}             \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (3, 5)}            \n"
    "F\x00{'descr': 'O', 'fortran_order': True, 'shape': (5, 3)}             \n"
    "F\x00{'descr': 'O', 'fortran_order': False, 'shape': (3, 3)}            \n"
    "v\x00{'descr': [('x', '<i4', (2,)), ('y', '<f8', (2, 2)), ('z', '|u1')],\n 'fortran_order': False,\n 'shape': (2,)}         \n"
    "\x16\x02{'descr': [('x', '<i4', (2,)),\n           ('Info',\n            [('value', '<c16'),\n             ('y2', '<f8'),\n             ('Info2',\n              [('name', '|S2'),\n               ('value', '<c16', (2,)),\n               ('y3', '<f8', (2,)),\n               ('z3', '<u4', (2,))]),\n             ('name', '|S2'),\n             ('z2', '|b1')]),\n           ('color', '|S2'),\n           ('info', [('Name', '<U8'), ('Value', '<c16')]),\n           ('y', '<f8', (2, 2)),\n           ('z', '|u1')],\n 'fortran_order': False,\n 'shape': (2,)}      \n"
    "v\x00{'descr': [('x', '>i4', (2,)), ('y', '>f8', (2, 2)), ('z', '|u1')],\n 'fortran_order': False,\n 'shape': (2,)}         \n"
    "\x16\x02{'descr': [('x', '>i4', (2,)),\n           ('Info',\n            [('value', '>c16'),\n             ('y2', '>f8'),\n             ('Info2',\n              [('name', '|S2'),\n               ('value', '>c16', (2,)),\n               ('y3', '>f8', (2,)),\n               ('z3', '>u4', (2,))]),\n             ('name', '|S2'),\n             ('z2', '|b1')]),\n           ('color', '|S2'),\n           ('info', [('Name', '>U8'), ('Value', '>c16')]),\n           ('y', '>f8', (2, 2)),\n           ('z', '|u1')],\n 'fortran_order': False,\n 'shape': (2,)}      \n"
éN)ÚBytesIO)Úformat)ÚIS_64BITÚIS_PYPYÚIS_WASMÚassert_Úassert_array_equalÚ assert_raisesÚassert_raises_regexÚ assert_warns)Úrequires_memoryz<>iÜ©Údtypeé
)éé2éÿÿÿÿé)©ÚxÚi4©r©ÚyÚf8©rr©ÚzÚu1ég@g@éég@g@é    rÚInfo)ÚvalueÚc16)Úy2rÚInfo2)©ÚnameÚS2)r%r&r)Úy3rr)Úz3Úu4rr))Úz2Úb1)Úcolorr+Úinfo)ÚNameÚU8)ÚValuer&rrù@Únny@éÚNNTÚcc)r9r6ù@Úooy@ÚOOFÚdd)r=r;ú<ú>)Úc©z<f8©érc󠇗eZdZdˆfd„    ZˆxZS)ÚBytesIOSRandomSizecóN•—ddl}|jd|«}t‰| |«S)Nrr8)ÚrandomÚrandintÚsuperÚread)ÚselfÚsizerHÚ    __class__s   €úNH:\Change_password\venv_build\Lib\site-packages\numpy/lib/tests/test_format.pyrKzBytesIOSRandomSize.read—s%ø€Û؏~‰~˜a Ó&ˆÜ‰w‰|˜DÓ!Ð!ó©N)Ú__name__Ú
__module__Ú __qualname__rKÚ __classcell__)rNs@rOrFrF–s ø„÷"ñ"rPrFcó¦—t«}tj||«t|j««}tj|d¬«}|S)NT©Ú allow_pickle©rrÚ write_arrayÚgetvalueÚ
read_array©ÚarrÚfÚf2Úarr2s    rOÚ    roundtriprbs@€Ü‹    €AÜ
×ѐq˜#ÔÜ    —‘“Ó    €BÜ × Ñ ˜R¨dÔ 3€DØ €KrPcó¢—t«}tj||«t|j    ««}tj
|«}|SrQ)rrrZrFr[r\r]s    rOÚroundtrip_randsizerd¥s>€Ü‹    €AÜ
×ѐq˜#ÔÜ    ˜AŸJ™J›LÓ    )€BÜ × Ñ ˜RÓ  €DØ €KrPcó¨—t«}tj||«t|j«dd«}tj|«}|S)NrrrYr]s    rOÚroundtrip_truncatedrf­sE€Ü‹    €AÜ
×ѐq˜#Ôä    —‘“˜a Ð#Ó    $€BÜ × Ñ ˜RÓ  €DØ €KrPcó —t||k(«yrQ)r)Úo1Úo2s  rOÚ assert_equal_rjµs€Ü ˆB"‰HÕrPcóV—ttzD]}t|«}t||«ŒyrQ)Ú basic_arraysÚ record_arraysrbr    ©r^ras  rOÚtest_roundtripro¹s)€ÜœmÑ+ò&ˆÜ˜‹~ˆÜ˜3 Õ%ñ&rPcó~—ttzD]-}|jtk7sŒt    |«}t ||«Œ/yrQ)rlrmrÚobjectrdr    rns  rOÚtest_roundtrip_randsizerr¿s6€ÜœmÑ+ò*ˆØ 9‰9œÓ Ü% cÓ*ˆDÜ ˜s DÕ )ñ*rPcól—tD]+}|jtk7sŒttt
|«Œ-yrQ)rlrrqr
Ú
ValueErrorrf©r^s rOÚtest_roundtrip_truncatedrvÆs,€Üò@ˆØ 9‰9œÓ Ü œ*Ô&9¸3Õ ?ñ@rPcóL—|dz }tD]å}|jtk7sŒt|d«5}t    j
||«ddd«t|d«5}|j dtj«|j«ddd«t|d«5}tjt|jdk(rdnd¬    «5t    j|«}ddd«ddd«Œçy#1swYŒ°xYw#1swYŒwxYw#1swYŒ,xYw#1swYŒxYw)
Nza.npyÚwbzrb+rÚrbrz9EOF: reading array header, expected (\d+) bytes got (\d+)zŠFailed to read all data for array\. Expected \(.*?\) = (\d+) elements, could only read (\d+) elements\. \(file seems not fully written\?\)©Úmatch)rlrrqÚopenrrZÚseekÚosÚSEEK_ENDÚtruncateÚpytestÚraisesrtrMr\)Útmp_pathÚpathr^r_Ú_s     rOÚtest_file_truncatedr†Ës €Ø gÑ €DÜò-ˆØ 9‰9œÓ ܐd˜DÓ!ð + QÜ×"Ñ" 1 cÔ*÷ +ôd˜EÓ"ð  aØ—‘rœ2Ÿ;™;Ô'Ø—
‘
” ÷ ôd˜DÓ!ð - QÜ—]‘]Ü🙠Qšñ:ð>ô ñ -ô×)Ñ)¨!Ó,A÷ -÷ -ð -ñ-÷ +ð +ú÷ ð ú÷ -ð -ú÷ -ñ -ús;¯C5Á1DÂ-Dà D Ã"DÃ5C>    ÄD
    Ä D ÄDÄD#    có´—tjdtjttj
dzf«¬«}t |«}t||«y)Nr8r)ÚnpÚonesrÚstrrÚ BUFFER_SIZErbr    )Ú long_str_arrÚ long_str_arr2s  rOÚ test_long_strrŽäs?€ä—7‘7˜1¤B§H¡H¬c´6×3EÑ3EÈÑ3IÐ-JÓ$KÔL€LܘlÓ+€Mܐ| ]Õ3rPzmemmap doesn't work correctly)Úreasoncó~—tttz«D]\}}|jjrŒt
j j|d|›d«}t
j j|d|›d«}t|d«5}tj||«ddd«|jjxr|jj }tj|d|j|j|¬«}||d<|j!«t|d«5}|j#«}ddd«t|d«5}|j#«}    ddd«t%    «tj|d    ¬
«}|j!«Œ‚y#1swYŒüxYw#1swYŒqxYw#1swYŒXxYw) NÚnormalz.npyÚmemmaprxúw+)ÚmoderÚshapeÚ fortran_order.ryÚr)r”)Ú    enumeraterlrmrÚ    hasobjectr~r„Újoinr|rrZÚflagsÚ f_contiguousÚ c_contiguousÚ open_memmapr•ÚflushrKrj)
ÚtmpdirÚir^ÚnfnÚmfnÚfpr–ÚmaÚ normal_bytesÚ memmap_bytess
          rOÚtest_memmap_roundtripr¨ësv€ôœL¬=Ñ8Ó9󉈈3Ø 9‰9× Ò à äg‰gl‰l˜6 V¨A¨3¨dÐ#3Ó4ˆÜg‰gl‰l˜6 V¨A¨3¨dÐ#3Ó4ˆÜ #t‹_ð    ( Ü × Ñ ˜r 3Ô '÷    (ð I‰I× "Ñ "Ò A¨3¯9©9×+AÑ+AÐ'Að    ä × Ñ  ¨$°c·i±iØ&)§i¡i¸}ôNˆàˆˆ3‰Ø
‰Œ
ô#t‹_ð    % ØŸ7™7›9ˆL÷    %ä #t‹_ð    % ØŸ7™7›9ˆL÷    %äl LÔ1ô× Ñ  ¨#Ô .ˆØ
‰Ž
ñ5÷    (ð    (ú÷    %ð    %ú÷    %ð    %ús$    FÄ&F'Å F3ÆF$    Æ'F0    Æ3F<    có(—tjjdd«}tjj |d«}tj ||¬«tj|«5}|d}ddd«t|«y#1swYŒxYw)NéÈzcompressed.npzrur^)    rˆrHÚrandr~r„ršÚsavez_compressedÚloadr    )r r^Únpz_fileÚnpzÚarr1s     rOÚtest_compressed_roundtripr± sq€Ü
)‰).‰.˜˜cÓ
"€C܏w‰w|‰|˜FÐ$4Ó5€HÜ×ј cÕ*Ü     ‰Ó    ð˜cؐ5‰zˆ÷äs˜DÕ!÷ðús Á-BÂBz
i1, i4, i1)ÚalignÚaÚbré)ÚnamesÚformatsÚoffsetsrAÚd)r¶r·)r³Úr´ÚaaÚbb)r¶r·r¸Útitles)r¶r·ÚitemsizeÚdtcóD—tjd|«}td«D]
}|dz||<Œ tjj |d«}tj ||¬«tj|«5}|d}ddd«t|«y#1swYŒxYw)Nr rDz aligned.npzrur^)    rˆÚzerosÚranger~r„ršÚsavezr­r    )r r¿r^r¡r®r¯r°s       rOÚtest_load_padded_dtyperÄ#s‰€ä
(‰(1b‹/€CÜ 1‹XòˆØQ‘ˆˆAŠðäw‰w|‰|˜F MÓ2€H܇HHˆX˜3ÕÜ     ‰Ó    ð˜cؐ5‰zˆ÷äs˜DÕ!÷ðús Á;BÂB)r é z see gh-23988z!Emscripten NODEFS has a buggy dupcóT—d}tjjtjjt«d|«}t j td¬«5tj|«}ddd«ttjd««y#1swYŒ)xYw)Nzwin64python2.npyÚdatazReading.*this warning\.rzr) r~r„ršÚdirnameÚ__file__rÚwarnsÚ UserWarningrˆr­r    r‰)Úfnamer„rÇs   rOÚ%test_python2_python3_interoperabilityrÍ/so€ð €EÜ 7‰7<‰<œŸ™Ÿ™¬Ó1°6¸5Ó A€DÜ    ‰”kÐ)CÔ    Dñ܏w‰wt‹}ˆ÷ätœRŸW™W Q›ZÕ(÷ðús Á BÂB'c    óª—tjjtjjt«d«}t j dtddgt¬«}dD]é}tjj||«}dD]Ñ}t j|d|¬«}|jd    «r|d
}|j«n|}|d k(ra|jd «rPtt|d t««t!|dd|dd«t!|dj#|«|d«Œªtt|d t$««t!||«ŒÓ|jd «sŒ |jd    «rˆt j|d¬«}t't(|j*d
«|j«t j|ddd ¬«}t't,|j*d
«|j«Œ¦t't(t
j|d¬«t't,t
j|ddd ¬«Œìy)NrÇu優良s不良r)zpy2-np0-objarr.npyúpy2-objarr.npyúpy2-objarr.npzzpy3-objarr.npyzpy3-objarr.npz)ÚbytesÚlatin1T©rXÚencodingz.npzrrÒÚpy2r rrWF)rXÚ fix_importsrÔ)r~r„ršrÈrÉrˆÚarrayrÂrqr­ÚendswithÚcloseÚ
startswithrÚ
isinstancerŠr    ÚencoderÑr
Ú UnicodeErrorÚ __getitem__Ú ImportError)Údata_dirÚexpectedrÌr„rÔÚdata_frÇs       rOÚtest_pickle_python2_python3rã9sÌ€ôw‰w|‰|œBŸG™GŸO™O¬HÓ5°vÓ>€Häx‰x˜œu nØ4ð6ä$ô&€Hð6ó#1ˆäw‰w|‰|˜H eÓ,ˆà+ò    3ˆHÜ—W‘W˜T°¸xÔHˆF؏~‰~˜fÔ%ؘc‘{Ø— ‘ •àà˜8Ò#¨×(8Ñ(8¸Ô(?Üœ
 4¨¡7¬CÓ0Ô1Ü" 4¨¨ 9¨h°s¸¨mÔ<ä" 4¨¡8§?¡?°8Ó#<¸hÀr¹lÕKäœ
 4¨¡7¬EÓ2Ô3Ü" 4¨Õ2ð    3ð" × Ñ ˜EÖ "؏~‰~˜fÔ%Ü—w‘w˜t°$Ô7Üœl¨D×,<Ñ,<¸cÔBØ—
‘
” Ü—w‘w˜t°$ÀEØ(0ô2äœk¨4×+;Ñ+;¸SÔAØ—
‘
– äœl¬B¯G©G°TØ+/õ1äœk¬2¯7©7°DØ+/¸UØ'/÷1ñC#1rPc    ó’—tjjtjjt«d«}tjj|d«}t t tj|dd¬«tjj|d«}tj|dd¬«5}t t |jd«ddd«tjj|d«}t t tj|tjdgt¬    «d¬
«y#1swYŒfxYw) NrÇrÏFrÒrÓrÐrzpickle-disabled.npyrrW) r~r„ršrÈrÉr
rtrˆr­rÞÚsaver×rq)r ràr„r_s    rOÚtest_pickle_disallowræhs؀܏w‰w|‰|œBŸG™GŸO™O¬HÓ5°vÓ>€Hä 7‰7<‰<˜Ð"2Ó 3€DÜ”*œbŸg™g tØ$¨xõ9ô 7‰7<‰<˜Ð"2Ó 3€DÜ     ‰ E°HÔ    =ð6ÀÜ”j !§-¡-°Ô5÷6ô 7‰7<‰<˜Р5Ó 6€DÜ”*œbŸg™g t¬R¯X©X°t°fÄFÔ-KØ$ö&÷    6ð6ús Â<D=Ä=E)r rÚi1)r¶r·r¸r¾)r")rrBrrCcó´—tj|j«}t||«t    j
d|«}t |«}t||«y)Nr )rÚdescr_to_dtypeÚdescrrjrˆrÁrbr    )r¿Údt1r°ras    rOÚtest_descr_to_dtyperìwsE€ôb ×
 §¡Ó
)€Cܐ#rÔÜ 8‰8Ar‹?€DÜ T‹?€Dܐt˜TÕ"rPcóø—t«}td«Dcgc]}d|zdztf‘Œ}}tjd|¬«}t j ||d¬«tjd¬    «5}tjd
d t«t j ||«t|d jtu«ddd«|jd «|j«}tt|«t
j zd k(«|jd «t j"|d ¬«}t%||«t't(t
j ||d«ycc}w#1swYŒ­xYw)Néôú%dédéèr©rr©ÚversionT©ÚrecordÚalwaysrºré@ ©Úmax_header_size©r8r)rrÂÚfloatrˆr‰rrZÚwarningsÚcatch_warningsÚfilterwarningsrËrÚcategoryr}ÚreadlineÚlenÚ ARRAY_ALIGNr\r    r
rt)r_r¡r¿r¹ÚwÚheaderÚns       rOÚtest_version_2_0r®s$€Ü‹    €Aä-2°3«ZÖ    8¨ˆD1‰H˜Ñ œUÒ
#Р   8€BР   8Ü
‰˜BÔ€Aä
×ѐq˜! VÕ,Ü    ×     Ñ     ¨Ô    -ð.°Ü×Ñ ¨"¬kÔ:Ü×ј1˜aԠܐ!‘— ‘ ¤Ð,Ô-÷.ð ‡FFˆ1„IØ Z‰Z‹\€FÜ ŒC‹Kœ&×,Ñ,Ñ ,°Ñ 1Ô2à‡FFˆ1„IÜ×ј!¨VÔ4€Aܐq˜!Ôô”*œf×0Ñ0°!°Q¸Õ?ùò'
9÷.ð.ús˜E+Á4AE0Å0E9c    óØ—td«Dcgc]}d|zdztf‘Œ}}tjd|¬«}tj
j |d«}tj
j |d«}tttj|d|j|jd    ¬
«tj|d|j|jd ¬
«}||d <|j«tj|d d¬«}t||«tj d¬«5}tj"ddt$«tj|d|j|jd¬
«}t'|dj(t$u«||d <|j«ddd«tj|d d¬«}t||«ycc}w#1swYŒ3xYw)Nrîrïrðrñrzversion2_01.npyzversion2_02.npyr“rû)r”rr•rôrò.r—rø)r”rúTrõr÷rºr)rÂrürˆr‰r~r„ršr
rtrržrr•rŸr    rýrþrÿrËrr)r r¡r¿r¹Útf1Útf2r¥rs        rOÚtest_version_2_0_memmapr Çs…€ô.3°3«ZÖ    8¨ˆD1‰H˜Ñ œUÒ
#Р   8€BР   8Ü
‰˜BÔ€AÜ
'‰',‰,vÐ0Ó
1€CÜ
'‰',‰,vÐ0Ó
1€Cô”*œf×0Ñ0°#¸DÈÏÉØ"#§'¡'°6õ;ô
×    Ñ    ˜C d°!·'±'Ø"#§'¡'°6ô
;€Bà€B€sG؇HH„JÜ    ×    Ñ    ˜C c¸6Ô    B€Bܐr˜1Ôä    ×     Ñ     ¨Ô    -ð°Ü×Ñ ¨"¬kÔ:Ü × Ñ  ¨$°a·g±gØ&'§g¡g°tô=ˆä!‘— ‘ ¤Ð,Ô-؈ˆ3‰Ø
‰Œ
÷ ô
×    Ñ    ˜C c¸6Ô    B€Bär˜1Õùò5
9÷ ðúsŽGÄ1A=G Ç G)Ú    mmap_moder—có¸—tjj|d«}tjdddzdz¬«}t j td¬«5tj||«ddd«t jtd    ¬«5tj||¬
«ddd«t jtd    ¬«5tj||d ¬ «ddd«tj||d ¬«}t||«tj||d¬ «}t||«y#1swYŒÉxYw#1swYŒšxYw#1swYŒjxYw)Nzlarge_header.npyr8úi,é'r¡rú .*format 2.0rzú Header.*large)r é N)r rúT)r rXé ¿) r~r„ršrˆr×rrÊrËrår‚rtr­r    )r r r_r^Úress     rOÚtest_huge_headerræs€ä
‰ ‰ VÐ/Ó0€AÜ
(‰(1˜D 5™L¨3Ñ.Ô
/€Cä    ‰”k¨Ô    8ñÜ
‰3Œ÷ô
‰”z¨Ô    9ñ(Ü
‰˜YÕ'÷(ô
‰”z¨Ô    9ñ?Ü
‰˜Y¸Õ>÷?ô '‰'!˜y°tÔ
<€Cܐs˜CÔ ä
'‰'!˜y¸&Ô
A€Cܐs˜CÕ ÷ðú÷(ð(ú÷?ð?ús$ÁD8ÂEÃEÄ8EÅE ÅEcóÈ—tjj|d«}tjdddzdz¬«}t j td¬«5tj||¬    «ddd«t jtd
¬«5tj|«d ddd«t jtd
¬«5tj|d ¬ «d ddd«tj|d¬«d }t||«tj|d¬ «d }t||«y#1swYŒÐxYw#1swYŒ xYw#1swYŒnxYw)Nzlarge_header.npzr8rrr¡rrrzrurr^rrùTrWr) r~r„ršrˆr×rrÊrËrÃr‚rtr­r    )r r_r^rs    rOÚtest_huge_header_npzrús€Ü
‰ ‰ VÐ/Ó0€AÜ
(‰(1˜D 5™L¨3Ñ.Ô
/€Cä    ‰”k¨Ô    8ñÜ
‰˜Õ÷ô
‰”z¨Ô    9ñÜ
‰‹
5Ò÷ô
‰”z¨Ô    9ñ1Ü
‰ 5Ô)¨%Ò0÷1ô '‰'! $Ô
'¨Ñ
.€Cܐs˜CÔ ä
'‰'! VÔ
,¨UÑ
3€Cܐs˜CÕ ÷ðú÷ðú÷1ð1ús$ÁEÂE ÃEÅE    Å EÅE!cóæ—t«}tjd«}tj||d¬«tj||«tj||d¬«tj||«tj||d¬«tj||«gd¢}|D]3}t t d«5tj|||¬«ddd«Œ5y#1swYŒ@xYw)Nr8rûrórò))r8r8)rr)rr8r)éÿrz we only support format version.*)rrˆÚarangerrZr rt)r_r^Ú bad_versionsrôs    rOÚtest_write_versionrs΀Ü‹    €AÜ
)‰)A‹,€Cä
×ѐq˜# vÕ.Ü
×ѐq˜#Ôä
×ѐq˜# tÕ,Ü
×ѐq˜#Ôä
×ѐq˜# vÕ.Ü
×ѐq˜#Ôò€Lð ò8ˆÜ  ¤Ø!CóEñ    8ä × Ñ ˜q #¨wÕ 7÷    8ð    8ñ8÷    8ð    8ús ÃC'Ã'C0    )s“NUMPYs“NUMPYs“NUMPYs“NUMPYs“NUMPYs“NUMPYÿÿ)s’NUMPYsNUMPYs“numpys“MATLBs“NUMPYs“NUMPYrPcó:—t«}t«}tjdt¬«}t    j
||d¬«t    j
||d¬«|j d«|j d«t    j|«}t    j|«}t|dk(«t|dk(«t|j«tjk(«t|j«tjk(«y)N©r rµrrûróròr) rrˆr‰rürrZr}Ú
read_magicrÚtellÚ    MAGIC_LEN)Ús1Ús2r^Úversion1Úversion2s     rOÚtest_read_magicr&;sƀܠ   ‹€BÜ    ‹€Bä
'‰'&¤Ô
&€Cä
×ѐr˜3¨Õ/Ü
×ѐr˜3¨Õ/à‡GGˆA„J؇GGˆA„Jä× Ñ  Ó$€HÜ× Ñ  Ó$€Hä ˆH˜Ñ ÔÜ ˆH˜Ñ Ôä ˆBG‰G‹Iœ×)Ñ)Ñ )Ô*Ü ˆBG‰G‹Iœ×)Ñ)Ñ )Õ*rPcón—tD],}t|«}tttj
|«Œ.yrQ)Úmalformed_magicrr
rtrr\©Úmagicr_s  rOÚtest_read_magic_bad_magicr+Ps,€Ü ò8ˆÜ E‹NˆÜ”j¤&×"3Ñ"3°QÕ7ñ8rPcó|—ttzD],}t|«}ttt
j |«Œ.yrQ)Úbad_version_magicr(rr
rtrr\r)s  rOÚtest_read_version_1_0_bad_magicr.Vs1€Ü"¤_Ñ4ò8ˆÜ E‹NˆÜ”j¤&×"3Ñ"3°QÕ7ñ8rPcó—tttjdd«tttjdd«tttjdd«tttjdd«y)Nrr8é)r
rtrr*©rPrOÚtest_bad_magic_argsr2\sJ€Ü”*œfŸl™l¨B°Ô2Ü”*œfŸl™l¨C°Ô3Ü”*œfŸl™l¨A¨rÔ2Ü”*œfŸl™l¨A¨sÕ3rPcóº—t«}ddddœ}tj||«t«}ddzdfg|d<tttj||«y)Nr1Fz<i8©r•r–rêÁxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxr0rê)rrÚwrite_array_header_1_0r
rt©Úsr¹s  rOÚtest_large_headerr9csU€Ü‹    €AØ u°uÑ=€AÜ
×!Ñ! ! QÔ'ä‹    €Aؘs‘? EÐ*Ð+€A€gJÜ”*œf×;Ñ;¸QÀÕBrPcóx—t«}tjdt¬«}t    j
||d¬«|j tj«t    j|«\}}}t|j«tjzdk(«t|||fddtfk(«y)NrrrûrórF) rrˆr‰rürrZr}r!Úread_array_header_1_0rr r©r8r^r•Úfortranrs     rOÚtest_read_array_header_1_0r>mó€Ü‹    €Aä
'‰'&¤Ô
&€CÜ
×ѐq˜# vÕ.à‡FFŒ6× Ñ ÔÜ"×8Ñ8¸Ó;Ñ€Eˆ7Eä ˆAF‰F‹H”v×)Ñ)Ñ )¨QÑ .Ô/Ü ˆUG˜UÐ #¨°´uÐ'=Ñ =Õ>rPcóx—t«}tjdt¬«}t    j
||d¬«|j tj«t    j|«\}}}t|j«tjzdk(«t|||fddtfk(«y)NrrròrórF) rrˆr‰rürrZr}r!Úread_array_header_2_0rr rr<s     rOÚtest_read_array_header_2_0rBzr?rPcóÞ—t«}tttj|«td«}tttj|«td«}tttj|«td«}tttj|«dddddœ}t«}tj
||«tttj|«y)    Nó1ss@“NUMPY6{'descr': 'x', 'shape': (1, 2), }                    
©r8rFrr)r•r–rêÚextrakey)rr
rtrr;r6r7s  rOÚtest_bad_headerrG‡s·€ä‹    €AÜ”*œf×:Ñ:¸AÔ>ܐ‹ €AÜ”*œf×:Ñ:¸AÔ>ô     Ó€AÜ”*œf×:Ñ:¸AÔ>ô
    ð    "ó    €Aô”*œf×:Ñ:¸AÔ>àØØØñ    €Aô    ‹    €AÜ
×!Ñ! ! QÔ'Ü”*œf×:Ñ:¸AÕ>rPcó–—tjdk(stjdk(rtjd«tj
j |d«}    ddl}|jddd|g«t|d
«5}|jd «tjd «}tj||«ddd«t|d «5}|jd «tj|«}ddd«t!«y#t$rtjd    «YŒ¹wxYw#1swYŒuxYw#1swYŒFxYw)NÚwin32Úcygwinz)Unknown if Windows has sparse filesystemsÚ sparse_filerr€z-sÚ
5368709120zCould not create 5GB large filerxlrDry)ÚsysÚplatformrÚskipr~r„ršÚ
subprocessÚ
check_callÚ    Exceptionr|r}rˆrrår­r    )r Útf_nameÚspr_r¹r—s      rOÚtest_large_file_supportrU¤s€Ü  ‰ ˜Ò¤3§<¡<°8Ò#;܏ ‰ Ð?Ô@äg‰gl‰l˜6 =Ó1€Gð7ó     Ø
 ‰ z 4¨°wÐ?Ô@ô
ˆgtÓ    ð Ø    ‰ˆzÔÜ I‰Ia‹LˆÜ
‰1Œ ÷ô
 
ˆgtÓ    ð Ø    ‰ˆzÔÜ G‰GA‹Jˆ÷ôq˜!Õøô ò7܏ ‰ Ð5Ö6ð7ú÷ðú÷
ðús*ÁDÂ=D3Ã'D?ÄD0Ä/D0Ä3D<Ä?Ez flaky on PyPyztest requires 64-bit systeml)Ú
free_bytescóâ—d}    tj|tj¬«}t jj|d«}t|d«5}tj|¬«ddd«~t|d«5}tj|«d}ddd«j|k(sJ‚y#t$rt    j
d«YŒ¬wxYw#1swYŒmxYw#1swYŒKxYw)    N)i@rrzCould not create large fileÚ large_archiverxruryr^) rˆÚemptyÚuint8Ú MemoryErrorrrOr~r„ršr|rÃr­r•)r r•r³rÌr_Únew_as      rOÚtest_large_archiver]½sрð €Eð3Ü H‰HU¤"§(¡(Ô +ˆô G‰GL‰L˜ Ó 1€Eä     ˆeTÓ    ð˜aÜ
‰˜Õ÷ð    
ä     ˆeTÓ    ð"˜aÜ—‘˜“
˜5Ñ!ˆ÷"ð ;‰;˜%Ò ÐÑ øô ò3܏ ‰ Ð1Ö2ð3ú÷
ðú÷
"ð"ús)„%B5ÁCÂC%Â5CÃCÃC"Ã%C.cóėtjj|d«}tj|«tj
|«5}    ddd«y#1swYyxYw)Nz nothing.npz)r~r„ršrˆrÃr­)r rÌÚnpss   rOÚtest_empty_npzr`×sF€ä G‰GL‰L˜ Ó /€E܇HHˆU„OÜ     ‰‹ð ˜3Ø ÷ ÷ ñ ús Á AÁAcóB—tjgd¢dtfdtfg¬«}tjj |d«}t |d«5}tj||d¬«ddd«t |d    «5}tj|«}ddd«t|«t |d«5}tt«5tj||d¬«ddd«ddd«y#1swYŒ…xYw#1swYŒgxYw#1swYŒ*xYw#1swYyxYw)
N)©r8r rErbrEÚintu整形rz unicode.npyrx)r rróry) rˆr×rcr~r„ršr|rrZr\r    r rË)r r^rÌr_ras     rOÚtest_unicode_field_namesrdßs€ä
(‰(òð
”ˆ Ø    GÌÐMðô  €Cô G‰GL‰L˜ Ó /€EÜ     ˆeTÓ    ð3˜aÜ×ј1˜c¨6Õ2÷3ä     ˆeTÓ    ð$˜aÜ× Ñ  Ó#ˆ÷$äs˜DÔ!ô
ˆeTÓ    ð5˜aÜ œ+Ó &ñ    5Ü × Ñ ˜q #¨tÕ 4÷    5÷5ð5÷3ð3ú÷$ð$ú÷     5ð    5ú÷5ð5ús<ÁC1ÂC=Â7DÃD    àDÃ1C:Ã=DÄ    D    ÄDÄDc óh—gd¢gd¢gd¢gd¢fD]œ\}}}ttj«Dcgc]}d|z‘Œ    c}D]i}t«}tj||rd|fn|df|t j d|ztfg«dœ«t|j««|k(rŒiJ‚Œžycc}w)    N)Féé€)FééÀ)Trhrg)Térirrú r4)
rÂrÚGROWTH_AXIS_MAX_DIGITSrr6rˆrrcrr[)Úis_fortran_arrayÚ dtype_spaceÚexpected_header_lengthr¡rMr¤s      rOÚtest_header_growth_axisrpös¿€âÒ*ªOº_ðBò @Ñ=И+Ð'=ô%*¬&×*GÑ*GÓ$HÖI˜qR˜“UÒIò    @ˆDÜ“ˆBÜ × )Ñ )¨"Ù&6˜!˜T™¸TÀ1¸IØ!1ÜŸ™ C¨+Ñ$5´sÐ#;Ð"<Ó=ñ/ô ô r—{‘{“}Ó%Ð)?Ó?Ð ?Ð?ñ    @ñ @ùòJs± B/ÚS3ÚsomeÚstuff)ÚmetadataÚsubarrayr)ér r!zPyPy bug in error formattingcóª—tjd|¬«}t«}tt«5tj
||«ddd«|j d«tj|«}ddlm    }t||«||j«|jusJ‚||j«|jusJ‚y#1swYŒ‚xYw)Nrrr)Ú drop_metadata) rˆr‰rr rËrår}r­Únumpy.lib._utils_implrxr    r)r¿r^Úbufrarxs     rOÚtest_metadata_dtyper{s£€ô '‰'"˜BÔ
€CÜ
‹)€CÜ    ”kÓ    "ñÜ
‰SÔ÷à‡HHˆQ„Kô 7‰73‹<€Då3ܐs˜DÔ!Ù ˜Ÿ™Ó #¨3¯9©9Ñ 4Ð4Ð 4Ù ˜Ÿ™Ó $¨¯
©
Ñ 2Ð2Ñ 2÷ðús ±C    à   C)lÚ__doc__r~rMrýÚiorrÚnumpyrˆÚ    numpy.librÚ numpy.testingrrrrr    r
r r Únumpy.testing._private.utilsr rZÚint8Úuint16Úint16Úuint32Úint32Úuint64Úint64Úfloat32Úfloat64Ú    complex64Ú
complex128rqÚscalarsrlÚscalarÚendianrÚ newbyteorderrÚastypeÚbasicÚextendr×ÚreshapeÚTÚPdescrÚPbufferTÚNdescrÚNbufferTrÁrmrFrbrdrfrjrorrrvr†rŽÚmarkÚskipifÚslowr¨r±rëÚdt2Údt3Údt4Údt5Údt6Ú parametrizerÄÚ version_infoÚxfailrÍrãrærcrìrr rrrr-r(r&r+r.r2r9r>rBrGrUr]r`rdrprüÚimplementationrôr{r1rPrOú<module>r¦s7    ðñRóf
Û
ÛÝã ãÝ÷    ÷    ó    õ9ð‡HH؇GG؇II؇HH؇II؇HH؇II؇HH؇JJ؇JJ؇LL؇MMØ
ð €ð€ Øò €FØò ˆØ—‘˜Ó ×-Ñ-¨fÓ5ˆØ—    ‘    ˜$“×&Ñ& uÓ-ˆØ×Ñà ˆBH‰HR˜uÔ %à ˆBH‰HR˜uÔ %à à M‰M˜(Ó #à M‰M˜(Ó #× %Ñ %à M‰M˜(Ó #¡D b D©#¨A¨# IÑ .ð 
õ      ñ ð ò6
€ðˆ€Vˆr2ˆh˜˜R˜Ð ! 1Ð%؈€Vˆr2ˆh˜˜R˜Ð ! 1Ð%ð €ð(Ø ØØØ    ò ð    !ð
    Øð    ð    ðØ ØØðððØð#
€ð.ˆ€Vˆb"t˜b "˜X¨¨B x°!°Q°Ð8¸$ÀÐ EØ    ˆ:˜˜R˜ 2 r (Ð+¨Qð0àˆ€Vˆb"t˜b "˜X¨¨B x°!°Q°Ð8¸$ÀÐ FØ    ˆ:˜˜R˜ 2 r (Ð+¨Qð0ð  €ð €B‡HHˆX˜X˜RŸX™X fÓ-×:Ñ:¸3Ó?Ô@Ø €B‡HHˆX˜X˜RŸX™X fÓ-×:Ñ:¸3Ó?Ô@Ø €B‡HHˆX˜X˜RŸX™X fÓ-×:Ñ:¸3Ó?Ô@Ø €B‡HHˆX˜X˜RŸX™X fÓ-×:Ñ:¸3Ó?Ô@Ø €B‡HHˆQÐ1Ð2Ô3ð € ô"˜ô"òòòòò&ò *ò@ò
-ò24ð‡×ѐGÐ$CÐÓD؇×ÑñóóEðò<"ð€b‡hhˆ| 4Ô(€à€b‡hh˜#˜s˜°°t° ؘq˜6ñ#ó$€ð€b‡hh˜#˜s˜°°s° Ñ<Ó=€à€b‡hhš°T°F¸Q±JÑ?Ó@€à€b‡hh˜#˜s˜°°t° ؘq˜6¨d°D¨\ñ;ó<€ð€b‡hh˜¨¸Ñ:Ó;€à‡×ј  S¨#¨s°C¸Ð=Ó>ñ"ó?ð"ð‡×ѐC×$Ñ$¨Ñ/¸ÐÓG؇×ѐ7Ð#FÐÓGñ)óHóHð)ò,1ò^ &ð‡×Ñ˜Ø €B‡HHˆXˆRX‰X˜˜RŸW™W~ؘRŸX™XØ˜RŸX™Xðð $ô%ðó    ð
 €B‡HHˆsHB—H‘H¨¨S zØ*.°¨Ø*+¨Q¨Ø*+ñð
ó ð ð ðóð €B‡HHððóð €B‡HHˆsHB—H‘H؈‰Ø ˆBH‰H  S˜zØ"&¨ Ø"# Q Ø"#ñ%ó &ð ð ó    ð     ð    
ó     ð     ð
 
ó
 ð €B‡HHØ     ˆhˆbh‰hØ ˆBH‰Hؐ—‘ؐB—H‘Hؘc˜
ؘh˜bŸh™h°#°s°Ø48¸$°<Ø45°q°6Ø45ñ(7ó8ð9ðóðð    ó    ðð ó ð ð
ó ð     ð
ó ð;/ ó/ñ`#óa/ð`#ò@ð2‡×ѐGÐ$CÐÓDñóEðð<‡×ј s¨D kÓ2ñ!ó3ð!ò&!ò(8ò6Ðò€ò+ò*8ò 8ò 4òCò
?ò
?ò?ò:ð2‡×ѐG OÐÓ4؇×јLÐ)FÐÓG؇×ÑÙ˜IÔ&ñ ó'óóHó5ð ò, ò5ò. @ð‡×Ñ˜Ø €B‡HH˜˜Sz°°x°r·x±xÀØ! 7Ð+ô8-ð0.ñ/ó0à €B‡HHˆS˜F GÐ,Ô-Ø €B‡HHˆz˜C ˜;Ð'Ð (°F¸GÐ3DÔEà €B‡HH˜˜SzØ ˆxˆrx‰x 3 %°X°R·X±X¸cÈBÔ5OÐ4PÑQÓRð/ñóð      ó    ð‡×ѐGÒG × 2Ñ 2× :Ñ :¸iÑ GØ-ðó/ñ3ó/ó    ñ3rP