ó 2ÄÈ[c@`s8ddlmZmZmZddlZddlZddlZddlZddlZddl Z ddl j j ZddlmZddlmZmZe je jƒjZe je jƒjZdZdZe ZdZged ƒD]Zee^qìged ƒD]Zee^q ged d ƒD]Zee^q0ged d ƒD]Zdee^qTged d ƒD]Zede^q|e ed d ƒƒZ!ged ƒD]Zee^q·ged ƒD]Zee^q×ged d ƒD]Zee^qûged d ƒD]Zdee^qged d ƒD]Zede^qGe ed d ƒƒe"gZ#ge!D]Z$e$dkrƒe$^qƒZ%ej&d„ƒZ'd„Z(d„Z)d„Z*d„Z+d„Z,d„Z-d„Z.d„Z/d„Z0d„Z1ej2j3d„ƒZ4d„Z5d„Z6dS( i(tdivisiontabsolute_importtprint_functionN(tlong(t assert_raisest assert_equalii i€ii@iiìÿÿÿiºÿÿÿiFc'`swdg‰‡‡fd†}y |ƒVWnItk rrddl}dtˆdƒ|jƒf}t|ƒ‚nXdS(s} Iterate over Cartesian product of *args, and if an exception is raised, add information of the current iterate. c3`s-x&tjˆŒD]}|ˆd<|VqWdS(Ni(t itertoolstproduct(tv(targstvalue(s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pytiterate8s iNs At: %r %s(tNonet Exceptiont tracebacktreprt format_exctAssertionError(R R Rtmsg((R R s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pytexc_iter/s    c C`sçtjdftjdftjdfg}t|ttƒ¥}x›|D]“\}}}|\}}|||ƒ}t|ko‡tkns¨tt t j |||ƒqFt j |||ƒ}||krFt ||ƒqFqFWWdQXdS(Niii( toperatortaddtsubtmulRt INT64_VALUESt INT64_MINt INT64_MAXRt OverflowErrortmttextint_safe_binopR( topstittxoptatbtpyoptoptctd((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyttest_safe_binopFs    cC`sXttƒF}x<|D]4\}tj|ƒ}||krt||ƒqqWWdQXdS(N(RRRt extint_to_128R(RR!R"((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_to_128]s  c C`sŠttƒx}xn|D]f\}t|ko6tknsQtttj|ƒqtj|ƒ}||krt||ƒqqWWdQXdS(N( Rt INT128_VALUESRRRRRt extint_to_64R(RR!R"((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_to_64es cC`sktttƒV}xL|D]D\}}||}tj||ƒ}||krt||ƒqqWWdQXdS(N(RRRtextint_mul_64_64R(RR!R"R%R&((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyttest_mul_64_64ps   c C`s tttƒ‹}x|D]y\}}||}t|koFtknsdtttj||ƒqtj||ƒ}||krt||ƒqqWWdQXdS(N( RR*t INT128_MINt INT128_MAXRRRtextint_add_128R(RR!R"R%R&((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_add_128ys  c C`s tttƒ‹}x|D]y\}}||}t|koFtknsdtttj||ƒqtj||ƒ}||krt||ƒqqWWdQXdS(N( RR*R/R0RRRtextint_sub_128R(RR!R"R%R&((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_sub_128…s  cC`s_ttƒM}xC|D];\}| }tj|ƒ}||krt||ƒqqWWdQXdS(N(RR*Rtextint_neg_128R(RR!R"R%((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_neg_128‘s  cC`s…ttƒs}xi|D]a\}|dkr>| d>d@ }n|d>d@}tj|ƒ}||krt||ƒqqWWdQXdS( Niiii€l l ÿÿÿÿÿÿÿÿÿl l ÿÿÿÿÿÿÿÿÿ(RR*Rtextint_shl_128R(RR!R"R%((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_shl_128šs  cC`s}ttƒk}xa|D]Y\}|dkr:| d? }n |d?}tj|ƒ}||krt||ƒqqWWdQXdS(Nii(RR*Rtextint_shr_128R(RR!R"R%((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_shr_128¦s   cC`smtttƒX}xN|D]F\}}||k}tj||ƒ}||krt||ƒqqWWdQXdS(N(RR*Rt extint_gt_128R(RR!R"R%R&((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyt test_gt_128²s   cC`sñtttƒÜ}xÒ|D]Ê\}}|dkrIt||ƒ\}}n$t| |ƒ\}}| }| }tj||ƒ\}}||ks±||ks±||||krt||ƒt||ƒt||||ƒqqWWdQXdS(Ni(RR*tINT64_POS_VALUEStdivmodRtextint_divmod_128_64R(RR!R"R%tcrR&tdr((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyttest_divmod_128_64»s ,  cC`sktttƒV}xL|D]D\}}||}tj||ƒ}||krt||ƒqqWWdQXdS(N(RR*R=Rtextint_floordiv_128_64R(RR!R"R%R&((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyttest_floordiv_128_64Îs   cC`sstttƒ^}xT|D]L\}}||d|}tj||ƒ}||krt||ƒqqWWdQXdS(Ni(RR*R=Rtextint_ceildiv_128_64R(RR!R"R%R&((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pyttest_ceildiv_128_64Øs  Il l ÿÿÿÿÿÿÿÿÿl(7t __future__RRRtsysRt contextlibRtpytesttnumpytnptnumpy.core._multiarray_teststcoret_multiarray_testsRt numpy.compatRt numpy.testingRRtiinfotint64tmaxRtminRt INT64_MIDR0R/t INT128_MIDtrangetjtlistRtFalseR*txR=tcontextmanagerRR'R)R,R.R2R4R6R8R:R<tmarktslowRBRDRF(((s>/tmp/pip-build-fiC0ax/numpy/numpy/core/tests/test_extint128.pytsD      µ È %