+
    X°³j°¡  ã                   ó¸  € R t ^ RIt^ RIt^ RIt^ RIHt ^ RIt^ RIt^ RI	H
t
 ^ RIHtHtHtHtHtHt ^ RIHt ]P(                  ]P*                  ]P,                  ]P.                  ]P0                  ]P2                  ]P4                  ]P6                  ]P8                  ]P:                  ]P<                  ]P>                  ] .t!. t"]! FÌ  t#R FÃ  t$]PJ                  ! ]#4      PM                  ]$4      t%]PN                  ! R4      PQ                  ]%4      t)]"PU                  ]PV                  ! . ]%R7      ]PV                  ! ^
]%R7      ])])PY                  Ra4      ])PY                  Ra4      PZ                  ])PY                  Ra4      RRRb1R	3,          .4       KÅ  	  KÎ  	  . RgOt.^^.RR.RR..^3^^.RR.RR..^	3.t/RdRRhRiR. RkO3RjRl.3RmRRnRo.3ReRf.t0^^.RRRRR.RR.^^.3RR3RRpRR.RR..^3^^.RRRRR.RR.^^.3RR3RRqRR.RR..^	3.t1]PV                  ! ]/]PJ                  ! ].4      PM                  R4      R7      ]PV                  ! ]1]PJ                  ! ]04      PM                  R4      R7      ]PV                  ! ]/]PJ                  ! ].4      PM                  R 4      R7      ]PV                  ! ]1]PJ                  ! ]04      PM                  R 4      R7      ]Pd                  ! ^Rs.R7      .t3 ! R" R#]4      t4R$ t5R% t6R& t7R' t8R( t9R) t:R* t;R+ t<R, t=]P|                  P                  ]R-R.7      ]P|                  P€                  R/ 4       4       tAR0 tB]PJ                  ! R1RR27      tC]PJ                  ! R3R4R5.R6RR.R7^^./4      tD]PJ                  ! R3R!R8.R6R]D./4      tE]PJ                  ! R3. RtOR6R.^,          /4      tF]PJ                  ! R3R4R5.R6RR.R7^^.R9R:R;./4      tG]PJ                  ! R3. R6. R<^/4      tH]P|                  P“                  R=]C]D]E]F]G]H.4      R> 4       tJ]P|                  P—                  R?4      R@ 4       tLRA tM]P|                  P“                  R=]PJ                  ! R4]P*                  3R5]P.                  3R!]P2                  3.RR27      ]PJ                  ! R
]PJ                  ! R3R4R5.R6RBRB.R7^ ^.R<^/Ru34      Rv3.4      ]PJ                  ! Rw.4      ]PJ                  ! R
]PJ                  ! ]PJ                  ! ]PJ                  ! R3R4R5.R6RBRB.R7^ ^.R<^/4      Ru34      Rv34      3.4      ]PJ                  ! R4]PJ                  ! ]PJ                  ! ]PJ                  ! ]PJ                  ! R4]N3R5]PJ                  ! R3R4R5.R6RBRB.R7^ ^.R<^/4      3.4      Ru34      Rv34      Rr34      3.4      .4      RC 4       tORD tP]P|                  P                  ]R-R.7      RE 4       tQ]P|                  P“                  RFRGR.4      RH 4       tRRI tSRJ tT. RxOtU. RyOtVRK tWRL tXRM tYRN tZRO t[RP t\RQ t]RR t^RS t_]P|                  P                  ]'       * RTR.7      ]P|                  P€                  ]! RzRU7      ]P|                  PÁ                  RVR.7      RW 4       4       4       4       taRX tbRY tcRZ td]P|                  P“                  R=]PJ                  ! R3R4R5.R6]e]PJ                  ! R[R\R]/R^7      ./4      ]PJ                  ! ]NR\R]/R^7      ]PJ                  ! R_]NRc33.R\R]/R^7      ]PJ                  ! R3R4R5.R6]e]PJ                  ! R3R!.R6]PJ                  ! ]N/ R^7      ./4      ./4      .4      R` 4       tfR# ){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()
    ...     # XXX: arr is not a dict, items gets called on it
    ...     format.write_array_header_1_0(f, arr)
    ...     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_WASMÚassert_Úassert_array_equalÚassert_raisesÚassert_raises_regex)Úrequires_memoryz<>iÜ  ©Údtype:NNé   ÚxÚi4g      @g      @g      @g      @ÚInfoÚInfo2Úinfoù              @Únny              @ÚNNTÚccù              @Úooy              @ÚOOFÚddÚ<Ú>Úcc                   ó6   a a€ ] tR tRt oRV 3R lltRtVtV ;t# )ÚBytesIOSRandomSizei”  c                óN   <€ ^ RI pVP                  ^V4      p\        SV `  V4      # )é    N)ÚrandomÚrandintÚsuperÚread)ÚselfÚsizer"   Ú	__class__s   && €Ú\/home/luca/screen-checking/.venv/lib/python3.14/site-packages/numpy/lib/tests/test_format.pyr%   ÚBytesIOSRandomSize.read•  s%   ø€ ÛØ�~‰~˜a Ó&ˆÜ‰w‰|˜DÓ!Ð!ó    © ©N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r%   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r(   Ú__classdict__s   @@r)   r   r   ”  s   ù‡ € ÷"÷ "r+   r   c                 ó¨   € \        4       p\        P                  ! W4       \        VP                  4       4      p\        P                  ! VR R7      pV# )T©Úallow_pickle©r   r   Úwrite_arrayÚgetvalueÚ
read_array©ÚarrÚfÚf2Úarr2s   &   r)   Ú	roundtriprB   ›  s>   € Ü‹	€AÜ
×Ò�qÔÜ	�—‘“Ó	€BÜ×Ò˜R¨dÔ3€DØ€Kr+   c                 ó¤   € \        4       p\        P                  ! W4       \        VP	                  4       4      p\        P
                  ! V4      pV# r-   )r   r   r:   r   r;   r<   r=   s   &   r)   Úroundtrip_randsizerD   £  s<   € Ü‹	€AÜ
×Ò�qÔÜ	˜AŸJ™J›LÓ	)€BÜ×Ò˜RÓ €DØ€Kr+   c                 óª   € \        4       p\        P                  ! W4       \        VP                  4       ^ R 4      p\        P                  ! V4      pV# )r!   éÿÿÿÿr9   r=   s   &   r)   Úroundtrip_truncatedrG   «  sC   € Ü‹	€AÜ
×Ò�qÔä	�—‘“˜a Ð#Ó	$€BÜ×Ò˜RÓ €DØ€Kr+   c                 ó    € \        W8H  4       R # r-   )r   )Úo1Úo2s   &&r)   Úassert_equal_rK   ³  s   € ÜˆB‰HÖr+   c                  ób   € \         \        ,            F  p \        V 4      p\        W4       K  	  R # r-   )Úbasic_arraysÚrecord_arraysrB   r   ©r>   rA   s     r)   Útest_roundtriprP   ·  s%   € Üœm×+Ð+ˆÜ˜‹~ˆÜ˜3Ö%ó ,r+   c                  ó�   € \         \        ,            F0  p V P                  \        8w  g   K  \	        V 4      p\        W4       K2  	  R # r-   )rM   rN   r   ÚobjectrD   r   rO   s     r)   Útest_roundtrip_randsizerS   ½  s2   € Üœm×+Ð+ˆØ�9‰9œÖÜ% cÓ*ˆDÜ˜sÖ)ó ,r+   c                  óx   € \          F/  p V P                  \        8w  g   K  \        \        \
        V 4       K1  	  R # r-   )rM   r   rR   r   Ú
ValueErrorrG   ©r>   s    r)   Útest_roundtrip_truncatedrW   Ä  s%   € ßˆØ�9‰9œÖÜœ*Ô&9¸3Ö?ó r+   c           
      óæ  € V R ,          p\          EF  pVP                  \        8w  g   K  \        VR4      ;_uu_ 4       p\        P
                  ! W24       RRR4       \        VR4      ;_uu_ 4       pVP                  R\        P                  4       VP                  4        RRR4       \        VR4      ;_uu_ 4       p\        P                  ! \        VP                  ^ 8X  d   RMRR7      ;_uu_ 4        \        P                  ! V4      pRRR4       RRR4       EK  	  R#   + '       g   i     L×; i  + '       g   i     L�; i  + '       g   i     LE; i  + '       g   i     EK`  ; i)	za.npyÚwbNzrb+Úrbz9EOF: 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\?\)©ÚmatchrF   )rM   r   rR   Úopenr   r:   ÚseekÚosÚSEEK_ENDÚtruncateÚpytestÚraisesrU   r'   r<   )Útmp_pathÚpathr>   r?   Ú_s   &    r)   Útest_file_truncatedrg   É  sù   € Ø�gÕ€Dßˆ|ˆØ�9‰9œÖÜ�d˜D×!Ô! QÜ×"Ò" 1Ô*÷ "ô �d˜E×"Ô" aØ—‘�rœ2Ÿ;™;Ô'Ø—
‘
”÷ #ô �d˜D×!Ô! QÜ—]’]Üð Ÿ™ Qœñ:ð>÷ö ô ×)Ò)¨!Ó,�A÷÷ "Ò!ó ç!×!ú÷ #×"ú÷÷ ú÷ "×!Ñ!ús;   ¿D%Á21D8Â?8EÃ7EÄEÄ%D5Ä8EÅEÅEÅE0c                  óÀ   € \         P                  ! ^\         P                  ! \        \        P
                  ^,           34      R7      p \        V 4      p\        W4       R# )é   r   N)ÚnpÚonesr   Ústrr   ÚBUFFER_SIZErB   r   )Úlong_str_arrÚlong_str_arr2s     r)   Útest_long_strrp   â  s=   € ä—7’7˜1¤B§H¢H¬c´6×3EÑ3EÈÕ3IÐ-JÓ$KÔL€LÜ˜lÓ+€MÜ�|Ö3r+   zmemmap doesn't work correctly)Úreasonc           	      ó
  € \        \        \        ,           4       EF©  w  rVP                  P                  '       d   K$  \
        P                  P                  V R V R24      p\
        P                  P                  V RV R24      p\        VR4      ;_uu_ 4       p\        P                  ! WR4       RRR4       VP                  P                  ;'       d    VP                  P                  '       * p\        P                  ! VRVP                  VP                  VR7      pW'R&   VP!                  4        \        VR4      ;_uu_ 4       pVP#                  4       pRRR4       \        VR4      ;_uu_ 4       pVP#                  4       p	RRR4       \%        XX	4       \        P                  ! VR	R
7      pVP!                  4        EK¬  	  R#   + '       g   i     EL"; i  + '       g   i     LŒ; i  + '       g   i     Lr; i)Únormalz.npyÚmemmaprY   Núw+)Úmoder   ÚshapeÚfortran_order.rZ   Úr)rv   )Ú	enumeraterM   rN   r   Ú	hasobjectr_   re   Újoinr]   r   r:   ÚflagsÚf_contiguousÚc_contiguousÚopen_memmaprw   Úflushr%   rK   )
ÚtmpdirÚir>   ÚnfnÚmfnÚfprx   ÚmaÚnormal_bytesÚmemmap_bytess
   &         r)   Útest_memmap_roundtriprŠ   é  s_  € ô œL¬=Õ8×9‰ˆØ�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Ô'÷ ð �I‰I×"Ñ"×AÐ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$   ÂGÅ
GÅ7G2ÇGÇG/Ç2Hc                 óR  € \         P                  P                  ^È^È4      p\        P                  P                  V R4      p\         P                  ! W!R7       \         P                  ! V4      ;_uu_ 4       pVR,          pRRR4       \        VX4       R#   + '       g   i     L; i)éÈ   zcompressed.npzrV   r>   N)	rj   r"   Úrandr_   re   r|   Úsavez_compressedÚloadr   )r‚   r>   Únpz_fileÚnpzÚarr1s   &    r)   Útest_compressed_roundtripr“   	  sk   € Ü
�)‰)�.‰.˜˜cÓ
"€CÜ�w‰w�|‰|˜FÐ$4Ó5€HÜ×Ò˜Õ*Ü	�Š�×	Ô	˜cØ�5�zˆ÷ 
ä�s˜DÖ!÷ 
×	ús   Á6
BÂB&	z
i1, i4, i1)ÚalignÚnamesÚaÚbÚformatsÚoffsetsÚdÚtitlesÚaaÚbbÚitemsizeÚdtc                 óz  € \         P                  ! ^V4      p\        ^4       F  pV^,           W#&   K  	  \        P                  P                  V R4      p\         P                  ! WBR7       \         P                  ! V4      ;_uu_ 4       pVR,          pRRR4       \        VX4       R#   + '       g   i     L; i)é   zaligned.npzrV   r>   N)	rj   ÚzerosÚranger_   re   r|   Úsavezr�   r   )r‚   rŸ   r>   rƒ   r�   r‘   r’   s   &&     r)   Útest_load_padded_dtyper¥   !  s|   € ä
�(Š(�1�b‹/€CÜ�1ŽXˆØ�Q•ˆ‹ñ ä�w‰w�|‰|˜F MÓ2€HÜ‡H‚HˆXÕÜ	�Š�×	Ô	˜cØ�5�zˆ÷ 
ä�s˜DÖ!÷ 
×	ús   Â

B*Â*B:	zJignore:.*align should be passed:numpy.exceptions.VisibleDeprecationWarningc            
      ó  € \         P                  P                  \         P                  P                  \        4      R 4      p \
        P                  ! R\        RR.\        R7      pR EF  p\         P                  P                  W4      pR Fõ  p\
        P                  ! VRVR7      pVP                  R4      '       d   VR	,          pVP                  4        MTpVR8X  du   VP                  R
4      '       d^   \        \        V^,          \        4      4       \!        VRR VRR 4       \!        VR,          P#                  V4      VR,          4       KÊ  \        \        V^,          \$        4      4       \!        Wa4       K÷  	  VP                  R
4      '       g   EK8  VP                  R4      '       dŒ   \
        P                  ! VRR7      p\'        \(        VP*                  R	4       VP                  4        \
        P                  ! VRRRR7      p\'        \,        VP*                  R	4       VP                  4        EKÚ  \'        \(        \
        P                  VRR7       \'        \,        \
        P                  VRRRR7       EK!  	  R# )ÚdataNu   å„ªè‰¯s   ä¸�è‰¯r   Úlatin1T©r8   Úencodingz.npzr   Úpy2r7   F)r8   Úfix_importsrª   )zpy2-np0-objarr.npyúpy2-objarr.npyúpy2-objarr.npzzpy3-objarr.npyzpy3-objarr.npz)Úbytesr¨   rF   )r_   re   r|   ÚdirnameÚ__file__rj   Úarrayr£   rR   r�   ÚendswithÚcloseÚ
startswithr   Ú
isinstancerl   r   Úencoder¯   r   ÚUnicodeErrorÚ__getitem__ÚImportError)Údata_dirÚexpectedÚfnamere   rª   Údata_fr§   s          r)   Útest_pickle_python2_python3r¿   -  sÏ  € ô
 �w‰w�|‰|œBŸG™GŸO™O¬HÓ5°vÓ>€Hä�xŠx˜œu nØ4ð6ä$ô&€Hô6ˆä�w‰w�|‰|˜HÓ,ˆã+ˆ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ñ ,ð" ×Ñ˜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ð 1óC6r+   c           
      ó¶  € \         P                  P                  \         P                  P                  \        4      R 4      p\         P                  P                  VR4      p\        \        \        P                  VRRR7       \         P                  P                  VR4      p\        P                  ! VRRR7      ;_uu_ 4       p\        \        VP                  R4       RRR4       \         P                  P                  V R4      p\        \        \        P                  V\        P                  ! R.\        R	7      RR
7       R#   + '       g   i     Lo; i)r§   r­   Fr¨   r©   r®   r   Nzpickle-disabled.npyr   r7   )r_   re   r|   r°   r±   r   rU   rj   r�   r¹   Úsaver²   rR   )r‚   r»   re   r?   s   &   r)   Útest_pickle_disallowrÂ   ^  sÔ   € Ü�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×	=Õ	=ÀÜ”j !§-¡-°Ô5÷ 
>ô �7‰7�<‰<˜Ð 5Ó6€DÜ”*œbŸg™g t¬R¯XªX°t°fÄFÔ-KØ$÷&÷	 
>×	=ús   ÃEÅE	Úi1c                 ó¶   € \         P                  ! V P                  4      p\        W4       \        P
                  ! ^V 4      p\        V4      p\        W#4       R# )r¡   N)r   Údescr_to_dtypeÚdescrrK   rj   r¢   rB   r   )rŸ   Údt1r’   rA   s   &   r)   Útest_descr_to_dtyperÈ   m  sA   € ôd ×
Ò
 §¡Ó
)€CÜ�#ÔÜ�8Š8�A�r‹?€DÜ�T‹?€DÜ�tÖ"r+   c                  ó2  € \        4       p \        R 4       Uu. uF  q ^d,          \        3NK  	  pp\        P                  ! RVR7      p\
        P                  ! WRR7       \        P                  ! RR7      ;_uu_ 4       p\        P                  ! RR\        4       \
        P                  ! W4       \        V^ ,          P                  \        J 4       RRR4       V P                  ^ 4       V P                  4       p\        \        V4      \
        P                   ,          ^ 8H  4       V P                  ^ 4       \
        P"                  ! V R	R
7      p\%        W64       \'        \(        \
        P                  WR4       R# u upi   + '       g   i     L¸; i)éô  éè  r   ©ÚversionT©ÚrecordÚalwaysÚ Né@ ©Úmax_header_size©r   r!   ©ri   r!   )r   r£   Úfloatrj   rk   r   r:   ÚwarningsÚcatch_warningsÚfilterwarningsÚUserWarningr   Úcategoryr^   ÚreadlineÚlenÚARRAY_ALIGNr<   r   r   rU   )r?   rƒ   rŸ   rš   ÚwÚheaderÚns          r)   Útest_version_2_0rã   ¥  s  € Ü‹	€Aä).¨s¬Ó	4© AˆS�C�<œÓ
©€BÐ	4Ü
�Š�˜BÔ€Aä
×Ò�q VÕ,Ü	×	 Ò	 ¨×	-Õ	-°Ü×Ò ¨"¬kÔ:Ü×Ò˜1Ô Ü��!•—‘¤Ð,Ô-÷ 
.ð ‡F�Fˆ1„IØ�Z‰Z‹\€FÜŒC�‹Kœ&×,Ñ,Õ,°Ñ1Ô2à‡F�Fˆ1„IÜ×Ò˜!¨VÔ4€AÜ�qÔô ”*œf×0Ñ0°!¸Ö?ùò' 
5÷ 
.×	-ús   ˜FÂAFÆF	c           
      ó  € \        R 4       Uu. uF  q ^d,          \        3NK  	  pp\        P                  ! RVR7      p\        P
                  P                  V R4      p\        P
                  P                  V R4      p\        \        \        P                  VRVP                  VP                  RR7       \        P                  ! VRVP                  VP                  RR7      pW6R&   VP                  4        \        P                  ! VRR	R
7      p\        Wc4       \        P                   ! RR7      ;_uu_ 4       p\        P"                  ! RR\$        4       \        P                  ! VRVP                  VP                  RR7      p\'        V^ ,          P(                  \$        J 4       W6R&   VP                  4        RRR4       \        P                  ! VRR	R
7      p\        Wc4       R# u upi   + '       g   i     L;; i)rÊ   rË   r   zversion2_01.npyzversion2_02.npyru   )rv   r   rw   rÍ   .ry   rÒ   )rv   rÔ   TrÎ   rÐ   rÑ   NrÖ   rÕ   )r£   r×   rj   rk   r_   re   r|   r   rU   r   r€   r   rw   r�   r   rØ   rÙ   rÚ   rÛ   r   rÜ   )r‚   rƒ   rŸ   rš   Útf1Útf2r‡   rà   s   &       r)   Útest_version_2_0_memmaprç   ¾  su  € ô */¨s¬Ó	4© AˆS�C�<œÓ
©€BÐ	4Ü
�Š�˜BÔ€AÜ
�'‰'�,‰,�vÐ0Ó
1€CÜ
�'‰'�,‰,�vÐ0Ó
1€Cô ”*œf×0Ñ0°#¸DÈÏÉØ"#§'¡'°6õ;ô 
×	Ò	˜C d°!·'±'Ø"#§'¡'°6ô
;€Bà€s�GØ‡H�H„JÜ	×	Ò	˜C c¸6Ô	B€BÜ�rÔä	×	 Ò	 ¨×	-Õ	-°Ü×Ò ¨"¬kÔ:Ü×Ò ¨$°a·g±gØ&'§g¡g°tô=ˆä��!•—‘¤Ð,Ô-Øˆ3‰Ø
�‰Œ
÷ 
.ô 
×	Ò	˜C c¸6Ô	B€Bä�rÖùò5 
5÷  
.×	-ús   ŽG.Ä>BG3Ç3H	Ú	mmap_modery   c                 ó(  € \         P                  P                  V R 4      p\        P                  ! ^RR,          R,           R7      p\
        P                  ! \        RR7      ;_uu_ 4        \        P                  ! W#4       RRR4       \
        P                  ! \        RR7      ;_uu_ 4        \        P                  ! W!R	7       RRR4       \
        P                  ! \        RR7      ;_uu_ 4        \        P                  ! W!R
R7       RRR4       \        P                  ! W!RR7      p\        WC4       \        P                  ! W!RR7      p\        WC4       R#   + '       g   i     Lá; i  + '       g   i     L°; i  + '       g   i     L~; i)zlarge_header.npyúi,é'  rƒ   r   ú.*format 2.0r[   NúHeader.*large)rè   é N  )rè   rÔ   T)rè   r8   é ¿ )r_   re   r|   rj   r²   rb   ÚwarnsrÛ   rÁ   rc   rU   r�   r   )r‚   rè   r?   r>   Úress   &&   r)   Útest_huge_headerrò   Ý  sè   € ä
�‰�‰�VÐ/Ó0€AÜ
�(Š(�1˜D 5�L¨3Õ.Ô
/€Cä	�Š”k¨×	8Ö	8Ü
�Š�Œ÷ 
9ô 
�Š”z¨×	9Ö	9Ü
�Š�Õ'÷ 
:ô 
�Š”z¨×	9Ö	9Ü
�Š�¸Õ>÷ 
:ô �'Š'�!°tÔ
<€CÜ�sÔ ä
�'Š'�!¸&Ô
A€CÜ�sÖ ÷ 
9×	8ú÷ 
:×	9ú÷ 
:×	9ús$   Á+EÂ.E.Ã2FÅE+	Å.E>	ÆF	c                 ó`  € \         P                  P                  V R 4      p\        P                  ! ^RR,          R,           R7      p\
        P                  ! \        RR7      ;_uu_ 4        \        P                  ! WR7       RRR4       \
        P                  ! \        R	R7      ;_uu_ 4        \        P                  ! V4      R
,           RRR4       \
        P                  ! \        R	R7      ;_uu_ 4        \        P                  ! VRR7      R
,           RRR4       \        P                  ! VRR7      R
,          p\        W24       \        P                  ! VRR7      R
,          p\        W24       R#   + '       g   i     Lü; i  + '       g   i     LÅ; i  + '       g   i     LŒ; i)zlarge_header.npzrê   rë   rƒ   r   rì   r[   rV   Nrí   r>   rî   rÓ   Tr7   rï   )r_   re   r|   rj   r²   rb   rð   rÛ   r¤   rc   rU   r�   r   )r‚   r?   r>   rñ   s   &   r)   Útest_huge_header_npzrô   ñ  sü   € Ü
�‰�‰�VÐ/Ó0€AÜ
�(Š(�1˜D 5�L¨3Õ.Ô
/€Cä	�Š”k¨×	8Ö	8Ü
�Š�Õ÷ 
9ô 
�Š”z¨×	9Ö	9Ü
�Š�‹
�5Ö÷ 
:ô 
�Š”z¨×	9Ö	9Ü
�Š� 5Ô)¨%Ö0÷ 
:ô �'Š'�! $Ô
'¨Õ
.€CÜ�sÔ ä
�'Š'�! VÔ
,¨UÕ
3€CÜ�sÖ ÷ 
9×	8ú÷ 
:×	9ú÷ 
:×	9ús$   Á+E7Â/F
Ã9 FÅ7F	Æ
F	ÆF-	c            	      ó  € \        4       p \        P                  ! ^4      p\        P                  ! WRR7       \        P                  ! W4       \        P                  ! WRR7       \        P                  ! W4       \        P                  ! WRR7       \        P                  ! W4       . ROpV F<  p\        \        R4      ;_uu_ 4        \        P                  ! WVR7       RRR4       K>  	  R#   + '       g   i     KS  ; i)ri   rÌ   Nz we only support format version.*rÖ   rÕ   ))ri   ri   )r!   r!   )r!   ri   ©r   r   )éÿ   r÷   )r   rj   Úaranger   r:   r	   rU   )r?   r>   Úbad_versionsrÍ   s       r)   Útest_write_versionrú     sÆ   € Ü‹	€AÜ
�)Š)�A‹,€Cä
×Ò�q vÕ.Ü
×Ò�qÔä
×Ò�q tÕ,Ü
×Ò�qÔä
×Ò�q vÕ.Ü
×Ò�qÔò€Ló  ˆÜ ¤Ø!C÷Eõ Eä×Ò˜q¨wÕ7÷Eñ Eó  ÷E÷ Eð Eús   ÃC3Ã3Dc                  óB  € \        4       p \        4       p\        P                  ! R\        R7      p\        P
                  ! WRR7       \        P
                  ! WRR7       V P                  ^ 4       VP                  ^ 4       \        P                  ! V 4      p\        P                  ! V4      p\        VR8H  4       \        VR8H  4       \        V P                  4       \        P                  8H  4       \        VP                  4       \        P                  8H  4       R# )r¡   r   rÌ   N©r¡   é   rÖ   rÕ   )r   rj   rk   r×   r   r:   r^   Ú
read_magicr   ÚtellÚ	MAGIC_LEN)Ús1Ús2r>   Úversion1Úversion2s        r)   Útest_read_magicr  2  sÂ   € Ü	‹€BÜ	‹€Bä
�'Š'�&¤Ô
&€Cä
×Ò�r¨Õ/Ü
×Ò�r¨Õ/à‡G�GˆA„JØ‡G�GˆA„Jä× Ò  Ó$€HÜ× Ò  Ó$€HäˆH˜ÑÔÜˆH˜ÑÔäˆB�G‰G‹Iœ×)Ñ)Ñ)Ô*ÜˆB�G‰G‹Iœ×)Ñ)Ñ)Ö*r+   c                  ót   € \          F-  p \        V 4      p\        \        \        P
                  V4       K/  	  R # r-   )Úmalformed_magicr   r   rU   r   r<   ©Úmagicr?   s     r)   Útest_read_magic_bad_magicr
  G  s'   € ß ˆÜ�E‹NˆÜ”j¤&×"3Ñ"3°QÖ7ó !r+   c                  óŠ   € \         \        ,            F-  p \        V 4      p\        \        \
        P                  V4       K/  	  R # r-   )Úbad_version_magicr  r   r   rU   r   r<   r  s     r)   Útest_read_version_1_0_bad_magicr  M  s/   € Ü"¤_×4Ð4ˆÜ�E‹NˆÜ”j¤&×"3Ñ"3°QÖ7ó 5r+   c                  ó  € \        \        \        P                  R^4       \        \        \        P                  R^4       \        \        \        P                  ^R4       \        \        \        P                  ^R4       R# )ri   é   NrF   )r   rU   r   r	  r,   r+   r)   Útest_bad_magic_argsr  S  sJ   € Ü”*œfŸl™l¨B°Ô2Ü”*œfŸl™l¨C°Ô3Ü”*œfŸl™l¨A¨rÔ2Ü”*œfŸl™l¨A¨sÖ3r+   c                  óÆ   € \        4       p R RRRRR/p\        P                  ! W4       \        4       p RR,          R3.VR&   \        \        \        P                  W4       R# )	rw   rx   FrÆ   z<i8r  Nr,   Á   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)r   r   Úwrite_array_header_1_0r   rU   ©Úsrš   s     r)   Útest_large_headerr  Z  sW   € Ü‹	€AØ	�"�o u¨g°uÐ=€AÜ
×!Ò! !Ô'ä‹	€AØ˜s•? EÐ*Ð+€A€g�JÜ”*œf×;Ñ;¸QÖBr+   c                  ó‚  € \        4       p \        P                  ! R\        R7      p\        P
                  ! WRR7       V P                  \        P                  4       \        P                  ! V 4      w  r#p\        V P                  4       \        P                  ,          ^ 8H  4       \        W#V3RR\        38H  4       R# )r¡   r   rÌ   FNrü   rÖ   )r   rj   rk   r×   r   r:   r^   r   Úread_array_header_1_0r   rÿ   rß   ©r  r>   rw   Úfortranr   s        r)   Útest_read_array_header_1_0r  d  ó‡   € Ü‹	€Aä
�'Š'�&¤Ô
&€CÜ
×Ò�q vÕ.à‡F�FŒ6×ÑÔÜ"×8Ò8¸Ó;Ñ€E�EäˆA�F‰F‹H”v×)Ñ)Õ)¨QÑ.Ô/ÜˆU˜UÐ#¨°´uÐ'=Ñ=Ö>r+   c                  ó‚  € \        4       p \        P                  ! R\        R7      p\        P
                  ! WRR7       V P                  \        P                  4       \        P                  ! V 4      w  r#p\        V P                  4       \        P                  ,          ^ 8H  4       \        W#V3RR\        38H  4       R# )r¡   r   rÌ   FNrü   rÕ   )r   rj   rk   r×   r   r:   r^   r   Úread_array_header_2_0r   rÿ   rß   r  s        r)   Útest_read_array_header_2_0r  q  r  r+   c                  óæ  € \        4       p \        \        \        P                  V 4       \        R 4      p \        \        \        P                  V 4       \        R4      p \        \        \        P                  V 4       \        R4      p \        \        \        P                  V 4       RR
RRRRRR/p\        4       p \        P
                  ! W4       \        \        \        P                  V 4       R	# )ó   1s    s@   “NUMPY 6 {'descr': 'x', 'shape': (1, 2), }                    
rw   rx   FrÆ   r   ÚextrakeyN©ri   r   rF   )r   r   rU   r   r  r  r  s     r)   Útest_bad_headerr$  ~  s½   € ä‹	€AÜ”*œf×:Ñ:¸AÔ>Ü�‹€AÜ”*œf×:Ñ:¸AÔ>ô 	�Ó€AÜ”*œf×:Ñ:¸AÔ>ô
 	ð	"ó	€Aô ”*œf×:Ñ:¸AÔ>à	�&Ø	˜%Ø	�#Ø	�Rð	€Aô 	‹	€AÜ
×!Ò! !Ô'Ü”*œf×:Ñ:¸AÖ>r+   c                 óè  € \         P                  R 8X  g   \         P                  R8X  d   \        P                  ! R4       \        P
                  P                  V R4      p ^ RIpVP                  RRRV.4       \        VR	4      ;_uu_ 4       pVP                  R
4       \        P                  ! ^4      p\        P                  ! W44       RRR4       \        VR4      ;_uu_ 4       pVP                  R
4       \        P                  ! V4      pRRR4       \!        XX4       R#   \         d    \        P                  ! R4        LÏi ; i  + '       g   i     L‰; i  + '       g   i     LX; i)Úwin32Úcygwinz)Unknown if Windows has sparse filesystemsÚsparse_fileNra   z-sÚ
5368709120zCould not create 5GB large filerY   l        rZ   )ÚsysÚplatformrb   Úskipr_   re   r|   Ú
subprocessÚ
check_callÚ	Exceptionr]   r^   rj   rø   rÁ   r�   r   )r‚   Útf_nameÚspr?   rš   ry   s   &     r)   Útest_large_file_supportr2  ›  sþ   € Ü�‰˜Ô¤3§<¡<°8Ô#;Ü�ŠÐ?Ô@ä�g‰g�l‰l˜6 =Ó1€Gð7ó 	 Ø
�‰�z 4¨°wÐ?Ô@ô 
ˆg�t×	Ô	 Ø	�‰ˆzÔÜ�IŠI�a‹LˆÜ
�Š�Œ÷ 
ô
 
ˆg�t×	Ô	 Ø	�‰ˆzÔÜ�GŠG�A‹Jˆ÷ 
ô �q˜!Öøô ô 7Ü�ŠÐ5Ö6ð7ú÷ 
×	ú÷
 
×	ús*   Á"D' Â>EÃ)(E!Ä'!EÅ
EÅE	Å!E1	ztest requires 64-bit system)Ú
free_byteszcrashes with low memoryc                 ó8  € R	p \         P                  ! V\         P                  R7      p\        P                  P                  V R4      p\        VR4      ;_uu_ 4       p\         P                  ! VXR7       RRR4       ?\        VR4      ;_uu_ 4       p\         P                  ! V4      R,          pRRR4       XP                  V8X  g   Q hR#   \         d    \        P
                  ! R4        LÈi ; i  + '       g   i     L‡; i  + '       g   i     L_; i)
r   r   zCould not create large fileÚlarge_archiverY   rV   NrZ   r>   )i   @r   )rj   ÚemptyÚuint8ÚMemoryErrorrb   r,  r_   re   r|   r]   r¤   r�   rw   )r‚   rw   r–   r½   r?   Únew_as   &     r)   Ú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)   „&C ÁC6ÂD	Ã!C3Ã2C3Ã6D	Ä	D	c                 óê   € \         P                  P                  V R 4      p\        P                  ! V4       \        P
                  ! V4      ;_uu_ 4       p RRR4       R#   + '       g   i     R# ; i)znothing.npzN)r_   re   r|   rj   r¤   r�   )r‚   r½   Únpss   &  r)   Útest_empty_npzr=  Î  s?   € ä�G‰G�L‰L˜ Ó/€EÜ‡H‚HˆU„OÜ	�Š��Œ˜3Ø÷ 
��Šús   ÁA!Á!A2	c           
      óØ  € \         P                  ! . R	OR\        3R\        3.R7      p\        P                  P                  V R4      p\        VR4      ;_uu_ 4       p\        P                  ! W1R
R7       RRR4       \        VR4      ;_uu_ 4       p\        P                  ! V4      pRRR4       \        VX4       \        VR4      ;_uu_ 4       p\        P                  ! \        4      ;_uu_ 4        \        P                  ! W1RR7       RRR4       RRR4       R#   + '       g   i     L±; i  + '       g   i     L‘; i  + '       g   i     L@; i  + '       g   i     R# ; i)ri   Úintu   æ•´å½¢r   zunicode.npyrY   rÌ   NrZ   )©ri   r¡   r#  r@  r#  )r¡   r!   )rj   r²   r?  r_   re   r|   r]   r   r:   r<   r   rb   rð   rÛ   )r‚   r>   r½   r?   rA   s   &    r)   Útest_unicode_field_namesrA  Ö  sõ   € ä
�(Š(ò ð 
”ˆØ	GÌÐMðô€Cô �G‰G�L‰L˜ Ó/€EÜ	ˆe�T×	Ô	˜aÜ×Ò˜1¨6Õ2÷ 
ä	ˆe�T×	Ô	˜aÜ× Ò  Ó#ˆ÷ 
ä�s˜DÔ!ô 
ˆe�T×	Ô	˜aÜ�\Š\œ+×&Õ&Ü×Ò˜q¨tÕ4÷ '÷ 
Ñ	÷ 
×	úç	×	ú÷ '×&ú÷ 
×	Ð	ús<   ÁDÂD2Ã#EÃ4E	ÄEÄD/	Ä2E	ÅEÅEÅE)	c                  óœ  € . RO. RO. RO. R	O3 F´  w  rp\        \        P                  4       Uu. uF  p^
V,          NK  	  up Fz  p\        4       p\        P                  ! TRV '       d   ^V3MV^3RV R\
        P                  ! RV,          \        3.4      /4       \        VP                  4       4      V8X  d   Kz  Q h	  K¶  	  R# u upi )
Frw   rx   rÆ   Ú N)Fé   é€   )Fé   éÀ   )TrF  rE  )Té   rG  )
r£   r   ÚGROWTH_AXIS_MAX_DIGITSr   r  rj   r   r?  rÞ   r;   )Úis_fortran_arrayÚdtype_spaceÚexpected_header_lengthrƒ   r'   r†   s         r)   Útest_header_growth_axisrM  í  sÁ   € âÒ*ªOº_óBÑ=ÐÐ'=ô %*¬&×*GÑ*GÔ$HÓIÑ$H˜q�R˜—U�UÑ$HÔIˆDÜ“ˆBÜ×)Ò)¨"Ø×&6˜!˜T™¸TÀ1¸IØÐ!1ØœŸš C¨+Õ$5´sÐ#;Ð"<Ó=ð/ô ô �r—{‘{“}Ó%Ð)?Ö?Ð?Ð?ó JóBùò Js   °C	ÚS3ÚsomeÚstuff)ÚmetadataÚsubarrayc                 óê  € \         P                  ! ^
V R7      p\        4       p\        P                  ! \
        4      ;_uu_ 4        \         P                  ! W!4       RRR4       TP                  ^ 4       \         P                  ! V4      p^ RI	H
p \        W4       V! VP                  4      VP                  Jg   Q hV! VP                  4      VP                  J g   Q hR#   + '       g   i     LŽ; i)é
   r   N)Údrop_metadata)rj   rk   r   rb   rð   rÛ   rÁ   r^   r�   Únumpy.lib._utils_implrU  r   r   )rŸ   r>   ÚbufrA   rU  s   &    r)   Útest_metadata_dtyperX  û  sŸ   € ô �'Š'�"˜BÔ
€CÜ
‹)€CÜ	�Š”k×	"Õ	"Ü
�Š�Ô÷ 
#à‡H�HˆQ„Kô �7Š7�3‹<€Då3Ü�sÔ!Ù˜Ÿ™Ó#¨3¯9©9Ó4Ð4Ð4Ù˜Ÿ™Ó$¨¯
©
Ó2Ð2Ò2÷ 
#×	"ús   ÁC"Ã"C2	)é   é2   rF   ©r   ©r   r   r[  ©ÚyÚf8rö   ©ÚzÚu1)r\  r]  r`  )ÚvalueÚc16)Úy2r_  ©ÚnameÚS2)rf  )rc  rd  r[  )Úy3r_  r[  )Úz3Úu4r[  )Úz2Úb1)Úcolorrh  )ÚNameÚU8)ÚValuerd  )r   r   )r   r   ©é   )r   ©z<f8rr  r[  )r–   rÑ   r—   )r¡   )é   )r   rt  r[  )s   “NUMPYs   “NUMPY  s   “NUMPY s   “NUMPY s   “NUMPYs   “NUMPYÿÿ)s   ’NUMPY s    NUMPY s   “numpy s   “MATLB s   “NUMPYs   “NUMPYr+   l        )gÚ__doc__r_   r*  rØ   Úior   rb   Únumpyrj   Ú	numpy.libr   Únumpy.testingr   r   r   r   r   r	   Únumpy.testing._private.utilsr
   r7  Úint8Úuint16Úint16Úuint32Úint32Úuint64Úint64Úfloat32Úfloat64Ú	complex64Ú
complex128rR   ÚscalarsrM   ÚscalarÚendianr   Únewbyteorderrø   ÚastypeÚbasicÚextendr²   ÚreshapeÚTÚPdescrÚPbufferTÚNdescrÚNbufferTr¢   rN   r   rB   rD   rG   rK   rP   rS   rW   rg   rp   ÚmarkÚskipifÚslowrŠ   r“   rÇ   Údt2Údt3Údt4Údt5Údt6Úparametrizer¥   rÚ   r¿   rÂ   r?  rÈ   rã   rç   rò   rô   rú   r  r  r  r
  r  r  r  r  r  r$  r2  Úthread_unsafer:  r=  rA  rM  r×   rX  r,   r+   r)   Ú<module>rž     s   ðñUól 
Û 
Û Ý ã ã Ý ÷÷ õ 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Ó-ˆØ×Ñà�HŠH�R˜uÔ%à�HŠH�R˜uÔ%àà�M‰M˜(Ó#à�M‰M˜(Ó#×%Ñ%à�M‰M˜(Ó#¡D b D¨# 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ð€ð ‡H‚HˆX˜RŸXšX fÓ-×:Ñ:¸3Ó?Ô@Ø‡H‚HˆX˜RŸXšX fÓ-×:Ñ:¸3Ó?Ô@Ø‡H‚HˆX˜RŸXšX fÓ-×:Ñ:¸3Ó?Ô@Ø‡H‚HˆX˜RŸXšX fÓ-×:Ñ:¸3Ó?Ô@Ø‡H‚HˆQÐ1Ð2Ô3ð€ô"˜ô "òòòòò&ò*ò@ò
-ò24ð ‡�×Ñ�GÐ$CÐÓDØ‡�×Ññó ó Eðò<"ð 	‡h‚hˆ| 4Ô(€à‡h‚h�˜#˜s˜ Y°°t°Ø˜A˜q˜6ð#ó $€ð 	‡h‚h�˜#˜s˜ Y°°s°Ð<Ó=€à‡h‚h�š¨°T°F¸QµJÐ?Ó@€à‡h‚h�˜#˜s˜ Y°°t°Ø˜A˜q˜6 8¨d°D¨\ð;ó <€ð 	‡h‚h�˜˜Y¨¨J¸Ð:Ó;€à‡�×Ñ˜  S¨#¨s°C¸Ð=Ó>ñ"ó ?ð"ð ‡�×ÑØPóRñ,1óRð,1ò^&ð ‡�×Ñ˜ð ‡H‚Hˆs�B—G‘GˆnØ�B—H‘HˆoØ�B—H‘Hˆoðð ôð ‡H‚Hˆs�B—H’H˜w¨¨c¨
Ø'¨$°¨Ø'¨!¨Q¨Ø(¨!ðð
 ðó ð ðð ó ð ‡H‚Hð ð ó ð ‡H‚Hˆs�B—H’HØ
�ŠØ�HŠH�g  S˜zØ $¨ Ø ! Q Ø  !ð%ó &ð ðó 	ð 	ð	
ó 	ð 	ð 

ó 
ð ‡H‚HØ	ˆb�hŠhØ�HŠHØ—’Ø—H’HØ˜c˜
Ø˜bŸhšh¨°#°s°Ø(1°D¸$°<Ø(1°A°q°6Ø(2°Að(7ó 8ð 9ðó ð ð	ó 	ð ðó ð ð
ó ð 	ð
ó ð=0 ó 0ñb#óc0ðb#ò@ð2 ‡�×Ñ�GÐ$CÐÓDñó Eðð< ‡�×Ñ˜ s¨D kÓ2ñ!ó 3ð!ò&!ò(8ò6Ð ò€ò+ò*8ò8ò4òCò
?ò
?ò?ò:ð2 ‡�×Ñ˜”LÐ)FÐÓGØ‡�×ÑÙ˜IÔ&Ø‡�×ÑÐ";ÐÓ<ñ ó =ó 'ó ó Hð ò,ò5ò.@ð ‡�×Ñ˜Ø‡H‚Hˆg˜˜S�z 9°°r·x²xÀØ! 7Ð+ô8-ð 0.ð /ó 0à‡H‚HˆS˜F GÐ,Ô-Ø‡H‚Hˆz˜C ˜;Ð'Ð(°F¸GÐ3DÔEà‡H‚Hˆg˜˜S�z 9Øˆr�xŠx˜ 3 %¨°R·X²X¸cÈBÔ5OÐ4PÐQÓRð/ð ó ð	 ó 	ñ3ó	ò3r+   