§ x<ˆj½Bãót—ddlZddlZddlZddlZddlmZdZdZGd„de¦«Z d„Z d„Z iZ d „Z d D]wZeeje¦«jez ¦«5ZeD]8Ze d ¦«rŒe ¦«sŒ-e e¦«Œ9 ddd¦«n #1swxYwYŒxgd ¢Zd gZgd¢ZddgZddgZddgZgd¢Zgd¢Zgd¢Zgd¢Z gd¢Z!d„Z"d„Z#d„Z$d„Z%dZ&d„Z'gd ¢Z(gd!¢Z)gd"¢Z*e*ddd#…Z+gd$¢Z,gd%¢Z-gd&¢Z.gd'¢Z/e/ddd#…Z0gd"¢d(gd)zzZ1gd*¢d(gd)zzZ2d+„Z3d,„Z4dS)-éN)Úmingw32i écó—eZdZdS)ÚMismatchCAPIErrorN)Ú__name__Ú __module__Ú __qualname__©óúk/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib64/python3.11/site-packages/numpy/core/setup_common.pyrr;s€€€€€Ø€Dr rcó0—tj d|¦« td¦«}td¦«}| |j¦«}| ¦«}tjd=n#tjd=wxYw|||fS)z° Return current C API checksum and the recorded checksum. Return current C API checksum and the recorded checksum for the given version of the C API version. rÚgenapiÚ numpy_api)ÚsysÚpathÚinsertÚ __import__Ú fullapi_hashÚfull_apiÚget_versions_hash)Ú apiversionÚ codegen_dirÚmrÚ curapi_hashÚ apis_hashs r Úget_api_versionsr?sŠ€õ„H‡O‚O�A�{Ñ#Ô#Ð#ðÝ �xÑ Ô ˆÝ˜{Ñ+Ô+ˆ Ø—n’n YÔ%7Ñ8Ô8ˆ Ø×'Ò'Ñ)Ô)ˆ å ŒH�QˆKˆKø�CŒH�QˆKˆˆˆˆà ˜  *Ô-Ð -Ð-s ¢A A<Á<B c ó~—t||¦«\}}||ks#d|›d|›d|›dt›d� }t|¦«‚dS)z@Emits a MismatchCAPIWarning if the C API version needs updating.z^API mismatch detected, the C API version numbers have to be updated. Current C api version is z, with checksum z=, but recorded checksum in core/codegen_dir/cversions.txt is zL. If functions were added in the C API, you have to update C_API_VERSION in z‹. Please make sure that new additions are guarded with MinVersion() to make them unavailable when wishing support for older NumPy versions.N)rÚ__file__r)rrrÚapi_hashÚmsgs r Úcheck_api_versionr!Ts�€å,¨Z¸ÑEÔEÑ€K�ð ˜(Ò "Ð "ð +àð +ð +à.9ð +ð +ðAIð +ð +õ $,ð +ð +ð +ˆõ  Ñ$Ô$Ð$ð #Ð "r có0—| d¦«\}}}| d¦«d}| d¦«d}d„| d¦«D¦«}d d „|D¦«¦«t|<dS) Nú(ú)rú éÿÿÿÿcó6—g|]}| ¦«‘ŒSr )Ústrip©Ú.0Úargs r ú zset_sig..rs €Ð 3Ð 3Ð 3˜CˆC�IŠI‰KŒKÐ 3Ð 3Ð 3r ú,z, c3ó K—|] }d|zV—Œ dS)z(%s){0}Nr r)s r ú zset_sig..ts&èè€Ð(IÐ(I¸S¨°S©Ð(IÐ(IÐ(IÐ(IÐ(IÐ(Ir )Ú partitionÚ rpartitionÚsplitÚjoinÚFUNC_CALL_ARGS)ÚsigÚprefixÚ_ÚargsÚfuncnames r Úset_sigr:ns�€Ø—m’m CÑ(Ô(�O€FˆAˆtØ �?Š?˜3Ñ Ô  Ô "€DØ× Ò  Ñ%Ô% bÔ)€HØ 3Ð 3 4§:¢:¨c¡?¤?Ð 3Ñ 3Ô 3€Dà#ŸyšyÐ(IÐ(IÀDÐ(IÑ(IÔ(IÑIÔI…N�8ÑÐÐr )zfeature_detection_locale.hzfeature_detection_math.hzfeature_detection_cmath.hzfeature_detection_misc.hzfeature_detection_stdio.hú#)(ÚsinÚcosÚtanÚsinhÚcoshÚtanhÚfabsÚfloorÚceilÚsqrtÚlog10ÚlogÚexpÚasinÚacosÚatanÚfmodÚmodfÚfrexpÚldexpÚexpm1Úlog1pÚacoshÚasinhÚatanhÚrintÚtruncÚexp2ÚcopysignÚ nextafterÚstrtollÚstrtoullÚcbrtÚlog2ÚpowÚhypotÚatan2ÚcrealÚcimagÚconjÚ strtold_l)ÚftelloÚfseekoÚ fallocateÚ backtraceÚmadviseÚ__threadz__declspec(thread)rerf)zcomplex doublez complex floatzcomplex long double)ÚcabsÚcacosÚcacoshÚcargÚcasinÚcasinhÚcatanÚcatanhÚcexpÚclogÚcpowÚcsqrtÚcsinÚcsinhÚccosÚccoshÚctanÚctanh) z xmmintrin.hz emmintrin.hz immintrin.hz features.hz xlocale.hzdlfcn.hz execinfo.hz libunwind.hz sys/mman.h))Ú__builtin_isnanú5.)Ú__builtin_isinfr~)Ú__builtin_isfiniter~)Ú__builtin_bswap32Ú5u)Ú__builtin_bswap64r‚)Ú__builtin_expectz5, 0)Ú__builtin_mul_overflowz(long long)5, 5, (int*)5)Ú__builtin_prefetchz(float*)0, 0, 3))z)__attribute__((optimize("unroll-loops")))Úattribute_optimize_unroll_loops)z__attribute__((optimize("O3")))Úattribute_optimize_opt_3)z__attribute__((optimize("O2")))Úattribute_optimize_opt_2)z__attribute__((nonnull (1)))Úattribute_nonnullcó0—d| ¦«zS)NzHAVE_%s)Úupper)Únames r Ú fname2defrŽÓs€Ø �t—z’z‘|”|Ñ #Ð#r cóV—| dd¦«}| ¦«S)Nr%Ú©ÚreplacerŒ©ÚsymbolÚdefines r Úsym2defr–Ös#€Ø �^Š^˜C Ñ $Ô $€FØ �<Š<‰>Œ>Ðr cóV—| dd¦«}| ¦«S)Nr%r7r‘r“s r Útype2defr˜Ús#€Ø �^Š^˜C Ñ %Ô %€FØ �<Š<‰>Œ>Ðr có—| ¦«tddiz}tjdkrFt ¦«s8 |jj d¦«n–#ttf$rYnƒwxYwtjdkro|jj   d¦«rPd|jj vrB|jj   dd¦«}|j |||||d z¬ ¦«| |ddd ¦«\}} t!t#|¦«¦«}|| ¦«S#t$r¡|  d d ¦«}|dz }| |ddd ¦«\}}|j d¦«|j |gd¦«t!t#d¦«¦«}|cY| ¦«SwxYw#| ¦«wxYw)NÚtypez long doubleÚwin32z/GLÚintelz-ipoz -ipor�z -shared)ÚcompilerÚ compiler_soÚ compiler_cxxÚ linker_exeÚ linker_soÚcÚstructzvolatile structz)int main(void) { return foo.before[0]; } Ú _configtest)Ú_check_compilerÚLONG_DOUBLE_REPRESENTATION_SRCrÚplatformrr�Úcompile_optionsÚremoveÚAttributeErrorÚ ValueErrorÚ compiler_typeÚ startswithÚcc_exer’Úset_executablesÚ_compileÚlong_double_representationÚpyodÚ_cleanÚ temp_filesÚappendÚlink_executable)ÚcmdÚbodyÚ newcompilerÚsrcÚobjÚltypes r Ú check_long_double_representationr½ßs€Ø×ÒÑÔÐÝ )¨V°]Ð,CÑ C€Dõ  „|�wÒÐ¥w¡y¤yÐð Ø ŒLÔ (× /Ò /°Ñ 6Ô 6Ð 6Ð 6øÝ¥ Ð+ð ð ð Ø ˆDð øøøõ Œ,˜'Ò !Ð !Ø” Ô*×5Ò5°gÑ>Ô>ð "à˜#œ,Ô-Ð-Ð-Ø”lÔ)×1Ò1°'¸2Ñ>Ô>ˆ Ø Œ ×$Ò$Ø Ø#Ø$Ø"Ø! JÑ.ð %ñ ô ð ð�|Š|˜D $¨¨cÑ2Ô2�H€CˆðÝ*­4°©9¬9Ñ5Ô5ˆØð � Š ‰ Œ ˆ ˆ øõ ð ð ð ð�|Š|˜HÐ&7Ñ8Ô8ˆØ Ð<Ñ<ˆØ—<’<  d¨D°#Ñ6Ô6‰ˆˆSØ Œ×Ò˜mÑ,Ô,Ð,Ø Œ ×$Ò$ c U¨MÑ:Ô:Ð:Ý*­4° Ñ+>Ô+>Ñ?Ô?ˆØˆ ˆ à � Š ‰ Œ ˆ ˆ ð øøøøð � Š ‰ Œ ˆ ˆ øøøs7ÁA Á A4Á3A4ÄEÅBG/ÇG2Ç.G/Ç/G2Ç2HaA /* "before" is 16 bytes to ensure there's no padding between it and "x". * We're not expecting any "long double" bigger than 16 bytes or with * alignment requirements stricter than 16 bytes. */ typedef %(type)s test_type; struct { char before[16]; test_type x; char after[8]; } foo = { { '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\0', '\001', '\043', '\105', '\147', '\211', '\253', '\315', '\357' }, -123456789.0, { '\376', '\334', '\272', '\230', '\166', '\124', '\062', '\020' } }; cóÌ—g}t|d¦«5}d„| ¦«D¦«}ddd¦«n #1swxYwYtdt|¦«d¦«D]|}dt t |¦«dd…¦«zg}| d„|||dz…D¦«¦«| d  |¦«¦«Œ}|S) a£Python implementation of the od UNIX utility (od -b, more exactly). Parameters ---------- filename : str name of the file to get the dump from. Returns ------- out : seq list of lines of od output Notes ----- We only implement enough to get the necessary information for long double representation, this is not intended as a compatible replacement for od. Úrbcó<—g|]}t|¦«dd…‘ŒS)éN)Úoct)r*Úos r r,zpyod..4s&€Ð.Ð.Ð.˜a�s�1‰vŒv�a�b�bŒzÐ.Ð.Ð.r Nréz%07drÁcó2—g|]}dt|¦«z‘ŒS)z%03d)Úint)r*r¢s r r,zpyod..7s"€Ð:Ð:Ð:¨�V�c !™fœf‘_Ð:Ð:Ð:r r%) ÚopenÚreadÚrangeÚlenrÆrÂÚextendrµr3)ÚfilenameÚoutÚfidÚyo2ÚiÚlines r r²r² s€ð$ €CÝ ˆh˜Ñ Ô ð/ Ø.Ð. 3§8¢8¡:¤:Ð.Ñ.Ô.ˆð/ð/ð/ñ/ô/ð/ð/ð/ð/ð/ð/øøøð/ð/ð/ð/å �1•c˜#‘h”h Ñ #Ô #ð#ð#ˆØ��S ™VœV A B BœZ™œÑ(Ð)ˆØ � Š Ð:Ð:¨c°!°A°b±D°&¬kÐ:Ñ:Ô:Ñ;Ô;Ð;Ø � Š �3—8’8˜D‘>”>Ñ"Ô"Ð"Ð"Ø €Js“>¾AÁA)Ú000rÒrÒrÒrÒrÒrÒrÒÚ001Ú043Ú105Ú147Ú211Ú253Ú315Ú357)Ú376Ú334Ú272Ú230Ú166Ú124Ú062Ú020)Ú301Ú235Ú157Ú064ràrÒrÒrÒr&) rÒrÒrÒrÒÚ240Ú242Ú171Ú353Ú031Ú300rÒrÒ)rÒrÒrÒrÒrçrèrérêrërìrÒrÒrÒrÒrÒrÒ) rìrërÒrÒrêrérèrçrÒrÒrÒrÒ)rìrëÚ326Ú363rÕÚ100rÒrÒrÒrÒrÒrÒrÒrÒrÒrÒrÒé)rÒrÒrÒràrærårärãcóˆ—dgdz}d}|D�]‘}| ¦«dd…D�]p}| d¦«| |¦«|dd…tk�r/t j|¦«}|dd…t dd…kr/|dd…t krd S|dd…tkrd SŒŸ|dd …t d d…kru|d d…tkrd S|d d…tkrd S|d d…tkrdS|d d…tkrdS|d d…tkrdS�Œ/|dd…t kr.|dd…tkrdS|dd…tkrdS�Œr�Œ“|�td|z¦«‚td|z¦«‚)zSGiven a binary dump as given by GNU od -b, look for long double representation.r�é Nériøÿÿÿé éÚINTEL_EXTENDED_12_BYTES_LEÚMOTOROLA_EXTENDED_12_BYTES_BErðÚINTEL_EXTENDED_16_BYTES_LEÚ IEEE_QUAD_BEÚ IEEE_QUAD_LEÚIBM_DOUBLE_DOUBLE_LEÚIBM_DOUBLE_DOUBLE_BErÄÚIEEE_DOUBLE_LEÚIEEE_DOUBLE_BEzUnrecognized format (%s)zCould not lock sequences (%s))r2ÚpoprµÚ _AFTER_SEQÚcopyÚ _BEFORE_SEQÚ_INTEL_EXTENDED_12BÚ_MOTOROLA_EXTENDED_12BÚ_INTEL_EXTENDED_16BÚ_IEEE_QUAD_PREC_BEÚ_IEEE_QUAD_PREC_LEÚ_IBM_DOUBLE_DOUBLE_LEÚ_IBM_DOUBLE_DOUBLE_BEÚ_IEEE_DOUBLE_LEÚ_IEEE_DOUBLE_BEr«)ÚlinesrÈÚsawrÑÚws r r±r±Ps/€ð ˆ4�"‰9€DØ €CØð%0ñ%0ˆð—’‘”˜a˜b˜bÔ!ð" 0ñ" 0ˆAØ �HŠH�Q‰KŒKˆKØ �KŠK˜‰NŒNˆNð�B�C�CŒy�JÒ&Ñ&Ý”i ‘o”o�𘘘”9¥ ¨A¨B¨B¤Ò/Ð/ؘB˜r˜E”{Õ&9Ò9Ð9Ø;Ð;Ð;Ð;ؘB˜r˜E”{Õ&<Ò<Ð<Ø>Ð>Ð>Ð>ð=ð˜"˜1˜"”X¥¨Q¨R¨R¤Ò0Ð0ؘA˜b˜D”zÕ%8Ò8Ð8Ø;Ð;Ð;Ð;ؘa ˜dœÕ'9Ò9Ð9Ø-˜~˜~˜~ؘa ˜dœÕ'9Ò9Ð9Ø-˜~˜~˜~ؘa ˜dœÕ'<Ò<Ð<Ø5Ð5Ð5Ð5ؘa ˜dœÕ'<Ò<Ð<Ø5Ð5Ð5Ð5ñ=ð˜#˜2˜#”Y¥+Ò-Ð-ؘB˜r˜E”{¥oÒ5Ð5Ø/Ð/Ð/Ð/ؘb ˜eœ­Ò7Ð7Ø/Ð/Ð/Ð/ùñE" 0ðH €ÝÐ3°cÑ9Ñ:Ô:Ð:õÐ8¸3Ñ>Ñ?Ô?Ð?r cóÜ—| ¦«| tjd¦«dd¦«}|sdS| tjd¦«dd¦«}| S)a‰ On our arm CI, this fails with an internal compilation error The failure looks like the following, and can be reproduced on ARM64 GCC 5.4: : In function 'right_shift': :4:20: internal compiler error: in expand_shift_1, at expmed.c:2349 ip1[i] = ip1[i] >> in2; ^ Please submit a full bug report, with preprocessed source if appropriate. See for instructions. Compiler returned: 1 This function returns True if this compiler bug is present, and we need to turn off optimization for the function zF __attribute__((optimize("O3"))) void right_shift() {} NFao typedef long the_type; /* fails also for unsigned and long long */ __attribute__((optimize("O3"))) void right_shift(the_type in2, the_type *ip1, int n) { for (int i = 0; i < n; i++) { if (in2 < (the_type)sizeof(the_type) * 8) { ip1[i] = ip1[i] >> in2; } } } )r¥Ú try_compileÚtextwrapÚdedent)r·Ú has_optimizeÚno_errs r Ú-check_for_right_shift_internal_compiler_errorr‹s‡€ð$×ÒÑÔÐØ—?’?¥8¤?ð4 ñ$ ô$ à�Dñô€Lð ð؈uà �_Š_�Xœ_ð . ñ  ô  ð�Dñ ô €Fðˆ:Ðr )5rÚpathlibrrÚnumpy.distutils.misc_utilrÚ C_ABI_VERSIONÚ C_API_VERSIONr«rrr!r4r:ÚfilerÇÚPathrÚparentÚfrÑr­r(ÚMANDATORY_FUNCSÚOPTIONAL_LOCALE_FUNCSÚOPTIONAL_FILE_FUNCSÚOPTIONAL_MISC_FUNCSÚOPTIONAL_VARIABLE_ATTRIBUTESÚOPTIONAL_FUNCS_MAYBEÚC99_COMPLEX_TYPESÚC99_COMPLEX_FUNCSÚOPTIONAL_HEADERSÚOPTIONAL_INTRINSICSÚOPTIONAL_FUNCTION_ATTRIBUTESrŽr–r˜r½r¦r²rrr r rrrrrr rr±rr r r úr)szðà € € € Ø€€€Ø € € € Ø€€€à-Ð-Ð-Ð-Ð-Ð-ð"€ ð8€ ð ð ð ð ð ˜ ñ ô ð ð.ð.ð.ð*%ð%ð%ð0€ðJðJðJð ð ð €D𠈈lˆgŒl˜8Ñ$Ô$Ô+¨dÑ2Ñ 3Ô 3ð°qØð ð ˆDØ�Š˜sÑ#Ô#ð ØØ—:’:‘<”<ð ØØ ˆG�D‰MŒMˆMˆMð  ðððñôððððððøøøððððøð ð ð €ð%˜ ÐØ7Ð7Ð7ÐØ" IÐ.Ðð!+Ð,@ÐAÐð ˆhðÐðððÐðððÐð ð ð Ðð ð ð Ðð "ð "ð "Ðð$ð$ð$ððððððð -ð-ð-ð^"Ðð$ððð8FðFðF€ à EÐ EÐ E€ àJÐJÐJ€Ø! $ $ B $Ô'€ð3ð3ð3ÐðOðOðOÐðDðDðDÐðNðNðNÐà'¨¨¨"¨Ô-ÐØQÐQÐQØ�W˜q‘[ñ!ÐàQÐQÐQØ�W˜q‘[ñ!Ðð8@ð8@ð8@ðv#ð#ð#ð#ð#sÁ