§ y<ˆjoXãól—dZdgZddlZddlZddlZddlZddlZddlZddlm Z dd„Z dd„Z dd „Z dd „Z Gd „d ¦«ZGd „de¦«ZGd„de¦«ZGd„de¦«ZGd„de¦«ZGd„de¦«Zej d¦«reZn„ej d¦«reZngejdkreZnYej d¦«reZn Permission to use, modify, and distribute this software is given under the terms of the NumPy (BSD style) license. See LICENSE.txt that came with this distribution for specifics. NO WARRANTY IS EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK. Pearu Peterson ÚcpuéN)Úgetstatusoutput©récó— t|¦«\}}nA#t$r4}tjt |¦«t |¬¦«Yd}~dSd}~wwxYwt j|¦«rt j|¦«|vrd|fSd|fS)N©Ú stacklevel)FÚTF) rÚOSErrorÚwarningsÚwarnÚstrÚ UserWarningÚosÚ WIFEXITEDÚ WEXITSTATUS)ÚcmdÚsuccessful_statusr ÚstatusÚoutputÚes úk/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib64/python3.11/site-packages/numpy/distutils/cpuinfo.pyÚ getoutputrs €ðÝ(¨Ñ-Ô-‰ˆ��øÝ ðððÝŒ •c˜!‘f”f�k°jÐAÑAÔAÐA؈yˆyˆyˆyˆyøøøøðøøøõ „|�FÑÔ𥤨vÑ 6Ô 6Ð:KÐ KÐ KØ�Vˆ|ÐØ �&ˆ=Ðs‚• AŸ)AÁAc ó‚—i}|D]9}t||||dz¬¦«\}}|r| ¦«||<Œ:|S©Nr©rr )rÚstrip)rr ÚkwÚinfoÚkeyÚokrs rÚ command_infor"%s]€Ø €DØð'ð'ˆÝ˜r #œwÐ:KØ*4°Q©,ð8ñ8ô8‰ ˆˆFà ð 'ØŸ š ™œˆD�‰IøØ €Kóc#óœK—t|||dz¬¦«\}}|sdS| ¦«D]}| ¦«V—ŒdSr)rÚ splitlinesr)rrr r!rÚlines rÚcommand_by_liner'.ssèè€Ý˜3Ð2CØ&0°¡lð4ñ4ô4�J€Bˆà ðØˆØ×!Ò!Ñ#Ô#ððˆØ�jŠj‰lŒlÐÐÐÐððr#có—i}t|||dz¬¦«D]F}d„| |d¦«D¦«}t|¦«dkr|d||d<ŒG|S)Nrrcó6—g|]}| ¦«‘ŒS©©r©Ú.0Úss rú z*key_value_from_command..;s €Ð 3Ð 3Ð 3˜1ˆQ�WŠW‰YŒYÐ 3Ð 3Ð 3r#ér)r'ÚsplitÚlen)rÚseprr Údr&Úls rÚkey_value_from_commandr66sx€à €AÝ Ð7HØ+5°a©<ð9ñ9ô9ððˆà 3Ð 3 § ¢ ¨3°Ñ 2Ô 2Ð 3Ñ 3Ô 3ˆÝ ˆq‰6Œ6�QŠ;ˆ;ؘ”dˆAˆa�Œd‰GøØ €Hr#có6—eZdZdZd„Zd„Zd„Zd„Zd„Zd„Z dS) Ú CPUInfoBasezkHolds CPU information and provides methods for requiring the availability of various CPU features. có:— |¦«S#t$rYdSwxYw©N)Ú Exception)ÚselfÚfuncs rÚ _try_callzCPUInfoBase._try_callEs4€ð Ø�4‘6”6ˆMøÝð ð ð Ø ˆDˆDð øøøs ‚ Œ ™cóè—| d¦«sOt|d|z¦«r9t|d|z¦«}t|tj¦«r |j|fd„Snd„St|¦«‚)NÚ_có—||¦«Sr:r*)r=Úattrs rúz)CPUInfoBase.__getattr__..Ps€À$À$ÀtÁ*Ä*€r#có—dSr:r*r*r#rrCz)CPUInfoBase.__getattr__..Rs€ €r#)Ú startswithÚhasattrÚgetattrÚ isinstanceÚtypesÚ MethodTyper>ÚAttributeError)r<ÚnamerBs rÚ __getattr__zCPUInfoBase.__getattr__Ks†€Ø�Š˜sÑ#Ô#ð %Ý�t˜S ™XÑ&Ô&ð %ݘt S¨¡XÑ.Ô.�ݘd¥EÔ$4Ñ5Ô5ðMØ'+¤~¸4ÐLÐLÐLÐLðMð%�}Ð$ݘTÑ"Ô"Ð"r#có—dS©Nrr*©r<s rÚ _getNCPUszCPUInfoBase._getNCPUsUs€Øˆqr#có¬—tj¦«d}tjd¦« |¦« d¦«}|S)Nrz(\d+)bitr)ÚplatformÚ architectureÚreÚcompileÚsearchÚgroup)r<ÚabitsÚnbitss rÚ __get_nbitszCPUInfoBase.__get_nbitsXsE€ÝÔ%Ñ'Ô'¨Ô*ˆÝ” ˜;Ñ'Ô'×.Ò.¨uÑ5Ô5×;Ò;¸AÑ>Ô>ˆØˆ r#có2—| ¦«dkS)NÚ32©Ú_CPUInfoBase__get_nbitsrPs rÚ _is_32bitzCPUInfoBase._is_32bit]ó€Ø×ÒÑ!Ô! TÒ)Ð)r#có2—| ¦«dkS)NÚ64r^rPs rÚ _is_64bitzCPUInfoBase._is_64bit`rar#N) Ú__name__Ú __module__Ú __qualname__Ú__doc__r>rMrQr_r`rdr*r#rr8r8@sx€€€€€ðððððð #ð#ð#ððððððð *ð*ð*ð*ð*ð*ð*ð*r#r8có.—eZdZdZd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„ZeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d„Z"d „Z#d!„Z$d"„Z%d#„Z&d$„Z'e'Z(d%„Z)d&„Z*d'„Z+d(„Z,d)„Z-d*„Z.d+„Z/d,„Z0d-„Z1d.„Z2d/„Z3dS)0Ú LinuxCPUInfoNcó6—|j�dSig}td¦«\}}|r| ¦«|dd< td¦«}|D]g}d„| dd¦«D¦«}t |¦«dkrŒ6|\}}|r ||d vr| i¦«||d |<Œh| ¦«n@#t$r3} tj t| ¦«td¬ ¦«Yd} ~ nd} ~ wwxYw||j _dS) Nzuname -mrÚuname_mz /proc/cpuinfocó6—g|]}| ¦«‘ŒSr*r+r,s rr/z)LinuxCPUInfo.__init__..ts €ÐDÐDÐD¨A˜aŸgšg™iœiÐDÐDÐDr#ú:rr0éÿÿÿÿr)rrrÚopenr1r2ÚappendÚcloser r r rrÚ __class__) r<rr!rÚfor&Ú name_valuerLÚvaluers rÚ__init__zLinuxCPUInfo.__init__gsH€Ø Œ9Ð Ø ˆF؈vˆÝ˜zÑ*Ô*‰ ˆˆFØ ð 0Ø!'§¢¡¤ˆD�ŒG�IÑ ð Ý�oÑ&Ô&ˆBðð 'ð '�ØDÐD°·²¸CÀÑ1CÔ1CÐDÑDÔD� Ý�z‘?”? aÒ'Ð'ØØ(‘ ��eØð$˜t t¨B¤xÐ/Ð/Ø—K’K ‘O”O�OØ!&��R”˜‘�Ø �HŠH‰JŒJˆJˆJøõð =ð =ð =Ý ŒM�#˜a™&œ&¥+¸!Ð <Ñ <Ô <Ð <Ð <Ð <Ð <Ð <Ð <øøøøð =øøøð#ˆŒÔÐÐs¿C à D Ã)DÄD có—dSr:r*rPs rÚ _not_implzLinuxCPUInfo._not_impl~ó€€€r#có0—|jdddkS)NrÚ vendor_idÚ AuthenticAMD©rrPs rÚ_is_AMDzLinuxCPUInfo._is_AMD‚ó€ØŒy˜Œ|˜KÔ(¨.Ò8Ð8r#cóX—| ¦«o|jdddkS)NrÚmodelÚ2©rrrPs rÚ_is_AthlonK6_2zLinuxCPUInfo._is_AthlonK6_2…ó%€Ø�|Š|‰~Œ~Ð> $¤)¨A¤,¨wÔ"7¸3Ò">Ð>r#cóX—| ¦«o|jdddkS)Nrr‚Ú3r„rPs rÚ_is_AthlonK6_3zLinuxCPUInfo._is_AthlonK6_3ˆr†r#cóR—tjd|jdd¦«duS)Nz .*?AMD-K6rú model name©rUÚmatchrrPs rÚ _is_AthlonK6zLinuxCPUInfo._is_AthlonK6‹ó$€ÝŒx˜  d¤i°¤l°<Ô&@ÑAÔAÈÐMÐMr#cóR—tjd|jdd¦«duS)Nz .*?AMD-K7rr‹rŒrPs rÚ _is_AthlonK7zLinuxCPUInfo._is_AthlonK7Žr�r#cóR—tjd|jdd¦«duS)Nz.*?Athlon\(tm\) MP\brr‹rŒrPs rÚ _is_AthlonMPzLinuxCPUInfo._is_AthlonMP‘ó1€ÝŒxÐ/Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóX—| ¦«o|jdddkS)NrÚfamilyÚ15©Úis_AMDrrPs rÚ _is_AMD64zLinuxCPUInfo._is_AMD64•s%€Ø�{Š{‰}Œ}Ð? ¤¨1¤¨hÔ!7¸4Ò!?Ð?r#cóR—tjd|jdd¦«duS)Nz.*?Athlon\(tm\) 64\brr‹rŒrPs rÚ _is_Athlon64zLinuxCPUInfo._is_Athlon64˜r”r#cóR—tjd|jdd¦«duS)Nz.*?Athlon HX\brr‹rŒrPs rÚ _is_AthlonHXzLinuxCPUInfo._is_AthlonHXœs1€ÝŒxÐ)Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz .*?Opteron\brr‹rŒrPs rÚ _is_OpteronzLinuxCPUInfo._is_Opteron s0€ÝŒx˜Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz .*?Hammer\brr‹rŒrPs rÚ _is_HammerzLinuxCPUInfo._is_Hammer¤s0€ÝŒx˜Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#có0—|jdddkS)NrrÚAlphar~rPs rÚ _is_AlphazLinuxCPUInfo._is_Alphaªs€ØŒy˜Œ|˜EÔ" GÒ+Ð+r#cóX—| ¦«o|jdddkS)Nrú cpu modelÚEV4©Úis_AlpharrPs rÚ_is_EV4zLinuxCPUInfo._is_EV4­ó%€Ø�}Š}‰ŒÐE 4¤9¨Q¤<° Ô#<ÀÒ#EÐEr#cóX—| ¦«o|jdddkS)Nrr§ÚEV5r©rPs rÚ_is_EV5zLinuxCPUInfo._is_EV5°r¬r#cóX—| ¦«o|jdddkS)Nrr§ÚEV56r©rPs rÚ_is_EV56zLinuxCPUInfo._is_EV56³s%€Ø�}Š}‰ŒÐF 4¤9¨Q¤<° Ô#<ÀÒ#FÐFr#cóX—| ¦«o|jdddkS)Nrr§ÚPCA56r©rPs rÚ _is_PCA56zLinuxCPUInfo._is_PCA56¶s%€Ø�}Š}‰ŒÐG 4¤9¨Q¤<° Ô#<ÀÒ#GÐGr#có0—|jdddkS)Nrr|Ú GenuineIntelr~rPs rÚ _is_IntelzLinuxCPUInfo._is_Intel¾r€r#có0—|jdddkS)NrrÚi486r~rPs rÚ_is_i486zLinuxCPUInfo._is_i486Ás€ØŒy˜Œ|˜EÔ" FÒ*Ð*r#cóX—| ¦«o|jdddkS)Nrú cpu familyÚ5©Úis_IntelrrPs rÚ_is_i586zLinuxCPUInfo._is_i586Äó%€Ø�}Š}‰ŒÐD 4¤9¨Q¤<° Ô#=ÀÒ#DÐDr#cóX—| ¦«o|jdddkS)Nrr½Ú6r¿rPs rÚ_is_i686zLinuxCPUInfo._is_i686ÇrÂr#cóR—tjd|jdd¦«duS)Nz .*?Celeronrr‹rŒrPs rÚ _is_CeleronzLinuxCPUInfo._is_CeleronÊó0€ÝŒx˜ Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz .*?Pentiumrr‹rŒrPs rÚ _is_PentiumzLinuxCPUInfo._is_PentiumÎrÈr#cóR—tjd|jdd¦«duS)Nz.*?Pentium.*?II\brr‹rŒrPs rÚ _is_PentiumIIzLinuxCPUInfo._is_PentiumIIÒs1€ÝŒxÐ,Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz.*?PentiumPro\brr‹rŒrPs rÚ_is_PentiumProzLinuxCPUInfo._is_PentiumProÖs1€ÝŒxÐ*Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz.*?Pentium.*?MMX\brr‹rŒrPs rÚ_is_PentiumMMXzLinuxCPUInfo._is_PentiumMMXÚó1€ÝŒxÐ-Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz.*?Pentium.*?III\brr‹rŒrPs rÚ_is_PentiumIIIzLinuxCPUInfo._is_PentiumIIIÞrÑr#cóR—tjd|jdd¦«duS)Nz.*?Pentium.*?(IV|4)\brr‹rŒrPs rÚ _is_PentiumIVzLinuxCPUInfo._is_PentiumIVâs1€ÝŒxÐ0Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—tjd|jdd¦«duS)Nz.*?Pentium.*?M\brr‹rŒrPs rÚ _is_PentiumMzLinuxCPUInfo._is_PentiumMæs1€ÝŒxÐ+Øœ  !œ  \Ô2ñ4ô4Ø;?ð@ð @r#cóR—| ¦«o| ¦«Sr:)Ú is_PentiumIVÚhas_sse3rPs rÚ _is_PrescottzLinuxCPUInfo._is_Prescottês!€Ø× Ò Ñ"Ô"Ð6 t§}¢}¡¤Ð6r#có(—| ¦«o~|jdddkp|jdddkoP| ¦«o| ¦« o't jd|jdd¦«duS)Nrr½rÄr—z .*?\blm\bÚflags)rÀrrÚÚ has_ssse3rUr�rPs rÚ _is_NoconazLinuxCPUInfo._is_Noconaís�€Ø— ’ ‘”ðNØ”Y˜q”\ ,Ô/°3Ò6ð;Øœ  !œ  \Ô2°dÒ:ðNð—]’]‘_”_Ð=¨T¯^ª^Ñ-=Ô-=Ð)=ðNõ”H˜\¨4¬9°Q¬<¸Ô+@ÑAÔAÈÐMð  Or#có¢—| ¦«o;| ¦«o'tjd|jdd¦«duS)Nz.*?Core\(TM\)2\brr‹)Úis_64bitrÀrUr�rrPs rÚ _is_Core2zLinuxCPUInfo._is_Core2ôsR€Ø— ’ ‘”ðA D§M¢M¡O¤OðAÝ”Ð,Øœ 1œ lÔ3ñ5ô5Ø<@ðAð Br#cóR—tjd|jdd¦«duS)Nz .*?Itanium\brr–rŒrPs rÚ _is_ItaniumzLinuxCPUInfo._is_Itaniumùs.€ÝŒx˜Øœ  !œ  XÔ.ñ0ô0Ø7;ð<ð Ô>ÀdÐJÐJr#cóR—tjd|jdd¦«duS)Nz .*?\bpni\brrÝrŒrPs rÚ _has_sse3zLinuxCPUInfo._has_sse3rør#cóR—tjd|jdd¦«duS)Nz .*?\bssse3\brrÝrŒrPs rÚ _has_ssse3zLinuxCPUInfo._has_ssse3ó$€ÝŒx˜¨¬°1¬°gÔ)>Ñ?Ô?ÀtÐKÐKr#cóR—tjd|jdd¦«duS)Nz .*?\b3dnow\brrÝrŒrPs rÚ _has_3dnowzLinuxCPUInfo._has_3dnow rr#cóR—tjd|jdd¦«duS)Nz.*?\b3dnowext\brrÝrŒrPs rÚ _has_3dnowextzLinuxCPUInfo._has_3dnowext#s%€ÝŒxÐ*¨D¬I°a¬L¸Ô,AÑBÔBÈ$ÐNÐNr#)4rerfrgrrwryrr…r‰rŽr‘r“ršrœržr r¢r¥r«r¯r²rµÚ_is_i386r¸r»rÁrÅrÇrÊrÌrÎrÐrÓrÕr×rÛrßrârärçÚ_is_XeonrêrQrñrõr÷rúrürþrrrr*r#rrjrjcs7€€€€€à €Dð#ð#ð#ð.ÐÐð9ð9ð9ð?ð?ð?ð?ð?ð?ðNðNðNðNðNðNð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð ,ð,ð,ðFðFðFðFðFðFðGðGðGðHðHðHð €Hð9ð9ð9ð+ð+ð+ðEðEðEðEðEðEð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð@ð7ð7ð7ðOðOðOðBðBðBð <ð<ð<ðOðOðOð€Hð#ð#ð#ðððð/ð/ð/ð/ð/ð/ðJðJðJðJðJðJðKðKðKðJðJðJðLðLðLðLðLðLðOðOðOðOðOr#rjcóð—eZdZdZd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d „Z"d!„Z#d"„Z$d#„Z%d$„Z&d%„Z'd&„Z(dS)'Ú IRIXCPUInfoNcóT—|j�dStddd¬¦«}||j_dS)NÚsysconfú )rr)r3r)rr6rs©r<rs rrwzIRIXCPUInfo.__init__)s=€Ø Œ9Ð Ø ˆFÝ% i°SØ8>ð@ñ@ô@ˆà"ˆŒÔÐÐr#có—dSr:r*rPs rryzIRIXCPUInfo._not_impl0rzr#có>—|j d¦«dkS)NÚNUM_PROCESSORSÚ1)rÚgetrPs rrêzIRIXCPUInfo._is_singleCPU2s€ØŒy�}Š}Ð-Ñ.Ô.°#Ò5Ð5r#cóR—t|j dd¦«¦«S)Nrr©ÚintrrrPs rrQzIRIXCPUInfo._getNCPUs5s!€Ý�4”9—=’=Ð!1°1Ñ5Ô5Ñ6Ô6Ð6r#có˜—|j d¦« ¦«d ¦«d|zkS)NÚ PROCESSORSrzr%s)rrr1Úlower©r<Úns rÚ __cputypezIRIXCPUInfo.__cputype8s<€ØŒy�}Š}˜\Ñ*Ô*×0Ò0Ñ2Ô2°1Ô5×;Ò;Ñ=Ô=ÀÈ!ÁÒLÐLr#có,—| d¦«S)NiЩÚ_IRIXCPUInfo__cputyperPs rÚ _is_r2000zIRIXCPUInfo._is_r2000:ó€ §¢¨tÑ 4Ô 4Ð4r#có,—| d¦«S)Ni¸ rrPs rÚ _is_r3000zIRIXCPUInfo._is_r3000;r r#có,—| d¦«S)Ni<rrPs rÚ _is_r3900zIRIXCPUInfo._is_r3900<r r#có,—| d¦«S)Ni rrPs rÚ _is_r4000zIRIXCPUInfo._is_r4000=r r#có,—| d¦«S)NirrPs rÚ _is_r4100zIRIXCPUInfo._is_r4100>r r#có,—| d¦«S)NiÌrrPs rÚ _is_r4300zIRIXCPUInfo._is_r4300?r r#có,—| d¦«S)Ni0rrPs rÚ _is_r4400zIRIXCPUInfo._is_r4400@r r#có,—| d¦«S)NiørrPs rÚ _is_r4600zIRIXCPUInfo._is_r4600Ar r#có,—| d¦«S)Ni*rrPs rÚ _is_r4650zIRIXCPUInfo._is_r4650Br r#có,—| d¦«S)NiˆrrPs rÚ _is_r5000zIRIXCPUInfo._is_r5000Cr r#có,—| d¦«S)NiprrPs rÚ _is_r6000zIRIXCPUInfo._is_r6000Dr r#có,—| d¦«S)Ni@rrPs rÚ _is_r8000zIRIXCPUInfo._is_r8000Er r#có,—| d¦«S)Ni'rrPs rÚ _is_r10000zIRIXCPUInfo._is_r10000Fó€ §¢°Ñ!6Ô!6Ð6r#có,—| d¦«S)Nià.rrPs rÚ _is_r12000zIRIXCPUInfo._is_r12000Gr9r#có,—| d¦«S)NÚorionrrPs rÚ _is_rorionzIRIXCPUInfo._is_rorionHs€ §¢°Ñ!8Ô!8Ð8r#cóX—|j d¦«S#t$rYdSwxYw)NÚMACHINE)rrr;rPs rÚget_ipzIRIXCPUInfo.get_ipJs/€Ø”I—M’M )Ñ,Ô,Ð ,øÝÐÐИ$˜$˜$Ðøøøs �› )¨)cóh—|j d¦« ¦«d|zkS)Nr@zip%s)rrrrs rÚ __machinezIRIXCPUInfo.__machineMs+€ØŒy�}Š}˜YÑ'Ô'×-Ò-Ñ/Ô/°6¸Q±<Ò?Ð?r#có,—| d¦«S)Né©Ú_IRIXCPUInfo__machinerPs rÚ_is_IP19zIRIXCPUInfo._is_IP19Oó€˜tŸ~š~¨bÑ1Ô1Ð1r#có,—| d¦«S)NérFrPs rÚ_is_IP20zIRIXCPUInfo._is_IP20PrIr#có,—| d¦«S)NérFrPs rÚ_is_IP21zIRIXCPUInfo._is_IP21QrIr#có,—| d¦«S©NérFrPs rÚ_is_IP22zIRIXCPUInfo._is_IP22RrIr#cóT—| d¦«o| ¦«SrQ)rGr&rPs rÚ _is_IP22_4kzIRIXCPUInfo._is_IP22_4kSó"€ $§.¢.°Ñ"4Ô"4Ð"I¸¿ºÑ9IÔ9IÐIr#cóT—| d¦«o| ¦«SrQ©rGr2rPs rÚ _is_IP22_5kzIRIXCPUInfo._is_IP22_5kTs"€ $§.¢.°Ñ"4Ô"4Ð"J¸$¿.º.Ñ:JÔ:JÐJr#có,—| d¦«S)NérFrPs rÚ_is_IP24zIRIXCPUInfo._is_IP24UrIr#có,—| d¦«S)NérFrPs rÚ_is_IP25zIRIXCPUInfo._is_IP25VrIr#có,—| d¦«S)NérFrPs rÚ_is_IP26zIRIXCPUInfo._is_IP26WrIr#có,—| d¦«S)NérFrPs rÚ_is_IP27zIRIXCPUInfo._is_IP27XrIr#có,—| d¦«S)NérFrPs rÚ_is_IP28zIRIXCPUInfo._is_IP28YrIr#có,—| d¦«S)NérFrPs rÚ_is_IP30zIRIXCPUInfo._is_IP30ZrIr#có,—| d¦«S©Né rFrPs rÚ_is_IP32zIRIXCPUInfo._is_IP32[rIr#cóT—| d¦«o| ¦«SrmrXrPs rÚ _is_IP32_5kzIRIXCPUInfo._is_IP32_5k\rVr#cóT—| d¦«o| ¦«Srm)rGr8rPs rÚ _is_IP32_10kzIRIXCPUInfo._is_IP32_10k]s"€ 4§>¢>°"Ñ#5Ô#5Ð#K¸$¿/º/Ñ:KÔ:KÐKr#))rerfrgrrwryrêrQrrr"r$r&r(r*r,r.r0r2r4r6r8r;r>rArGrHrLrOrSrUrYr\r_rbrerhrkrorqrsr*r#rr r &sŽ€€€€€Ø €Dð#ð#ð#ðÐÐð6ð6ð6ð7ð7ð7ðMðMðMà4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø4Ð4Ð4Ø6Ð6Ð6Ø6Ð6Ð6Ø8Ð8Ð8ðððð@ð@ð@à1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1ØIÐIÐIØJÐJÐJØ1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1Ø1Ð1Ð1ØIÐIÐIØKÐKÐKÐKÐKr#r có¨—eZdZdZd„Zd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„ZdS)Ú DarwinCPUInfoNcóz—|j�dStdd¬¦«}tdd¬¦«|d<||j_dS)NÚarchÚmachine)rwrxz sysctl hwú=©r3Ú sysctl_hw)rr"r6rsr s rrwzDarwinCPUInfo.__init__csO€Ø Œ9Ð Ø ˆFÝ Ø$-ð/ñ/ô/ˆå2°;ÀCÐHÑHÔHˆˆ[ÑØ"ˆŒÔÐÐr#có—dSr:r*rPs rryzDarwinCPUInfo._not_implkrzr#có^—t|jd dd¦«¦«S)Nr{zhw.ncpurrrPs rrQzDarwinCPUInfo._getNCPUsms'€Ý�4”9˜[Ô)×-Ò-¨i¸Ñ;Ô;Ñ<Ô<Ð[\w\d]+) processor operates atÚpÚ processor)rr"r6r'rUr�rXrs)r<rr&Úms rrwzSunOSCPUInfo.__init__’sª€Ø Œ9Ð Ø ˆFÝ Ø!'Ø$-Ø&2Ø&2ð ñôˆõ 1°ÀÐEÑEÔEˆˆY‰Ý# NÑ3Ô3ð ð ˆDÝ”ÐGÈÑNÔNˆAØð Ø$%§G¢G¨C¡L¤L��[Ñ!Ø�ð ð#ˆŒÔÐÐr#có—dSr:r*rPs rryzSunOSCPUInfo._not_impl£rzr#có$—|jddkS)Nr¸r�r~rPs rrzSunOSCPUInfo._is_i386¥s€ØŒy˜Ô% vÒ-Ð-r#có$—|jddkS)Nr¸Úsparcr~rPs rÚ _is_sparczSunOSCPUInfo._is_sparc§s€ØŒy˜Ô% wÒ.Ð.r#có$—|jddkS)Nr¸Úsparcv9r~rPs rÚ _is_sparcv9zSunOSCPUInfo._is_sparcv9©ó€ØŒy˜Ô% yÒ0Ð0r#có^—t|jd dd¦«¦«S)Nr¹ÚNumCPUrrrPs rrQzSunOSCPUInfo._getNCPUs¬s'€Ý�4”9˜YÔ'×+Ò+¨H°aÑ8Ô8Ñ9Ô9Ð9r#có$—|jddkS)NrwÚsun4r~rPs rÚ_is_sun4zSunOSCPUInfo._is_sun4¯r‚r#cóF—tjd|jd¦«duS)NÚSUNWr¶rŒrPs rÚ_is_SUNWzSunOSCPUInfo._is_SUNW²s €ÝŒx˜ ¤¨9Ô!5Ñ6Ô6¸dÐBÐBr#cóF—tjd|jd¦«duS)Nz.*SPARCstation-5r¶rŒrPs rÚ_is_sparcstation5zSunOSCPUInfo._is_sparcstation5´s!€ÝŒxÐ+¨T¬Y°yÔ-AÑBÔBÈ$ÐNÐNr#cóF—tjd|jd¦«duS)Nz .*Ultra-1r¶rŒrPs rÚ _is_ultra1zSunOSCPUInfo._is_ultra1¶ó €ÝŒx˜  d¤i° Ô&:Ñ;Ô;À4ÐGÐGr#cóF—tjd|jd¦«duS)Nz .*Ultra-250r¶rŒrPs rÚ _is_ultra250zSunOSCPUInfo._is_ultra250¸s €ÝŒx˜¨¬ °)Ô(<Ñ=Ô=ÀTÐIÐIr#cóF—tjd|jd¦«duS)Nz .*Ultra-2r¶rŒrPs rÚ _is_ultra2zSunOSCPUInfo._is_ultra2ºrÒr#cóF—tjd|jd¦«duS)Nz .*Ultra-30r¶rŒrPs rÚ _is_ultra30zSunOSCPUInfo._is_ultra30¼ó €ÝŒx˜  t¤y°Ô';Ñ<Ô<ÀDÐHÐHr#cóF—tjd|jd¦«duS)Nz .*Ultra-4r¶rŒrPs rÚ _is_ultra4zSunOSCPUInfo._is_ultra4¾rÒr#cóF—tjd|jd¦«duS)Nz .*Ultra-5_10r¶rŒrPs rÚ _is_ultra5_10zSunOSCPUInfo._is_ultra5_10Às €ÝŒx˜¨¬°9Ô)=Ñ>Ô>ÀdÐJÐJr#cóF—tjd|jd¦«duS)Nz .*Ultra-5r¶rŒrPs rÚ _is_ultra5zSunOSCPUInfo._is_ultra5ÂrÒr#cóF—tjd|jd¦«duS)Nz .*Ultra-60r¶rŒrPs rÚ _is_ultra60zSunOSCPUInfo._is_ultra60ÄrÙr#cóF—tjd|jd¦«duS)Nz .*Ultra-80r¶rŒrPs rÚ _is_ultra80zSunOSCPUInfo._is_ultra80ÆrÙr#cóF—tjd|jd¦«duS)Nz.*Ultra-Enterpriser¶rŒrPs rÚ_is_ultraenterpricez SunOSCPUInfo._is_ultraenterpriceÈs!€ÝŒxÐ-¨t¬y¸Ô/CÑDÔDÈDÐPÐPr#cóF—tjd|jd¦«duS)Nz.*Ultra-Enterprise-10000r¶rŒrPs rÚ_is_ultraenterprice10kz#SunOSCPUInfo._is_ultraenterprice10kÊs"€ÝŒxÐ3°T´Y¸yÔ5IÑJÔJÐRVÐVÐVr#cóF—tjd|jd¦«duS)Nz .*Sun-Firer¶rŒrPs rÚ _is_sunfirezSunOSCPUInfo._is_sunfireÌrÙr#cóF—tjd|jd¦«duS)Nz.*Ultrar¶rŒrPs rÚ _is_ultrazSunOSCPUInfo._is_ultraÎs €ÝŒx˜  D¤I¨iÔ$8Ñ9Ô9ÀÐEÐEr#có$—|jddkS)Nr»Úsparcv7r~rPs rÚ_is_cpusparcv7zSunOSCPUInfo._is_cpusparcv7ÑrÅr#có$—|jddkS)Nr»Úsparcv8r~rPs rÚ_is_cpusparcv8zSunOSCPUInfo._is_cpusparcv8ÓrÅr#có$—|jddkS)Nr»rÃr~rPs rÚ_is_cpusparcv9zSunOSCPUInfo._is_cpusparcv9ÕrÅr#)rerfrgrrwryrrÁrÄrQrÊrÍrÏrÑrÔrÖrØrÛrÝrßrárãrårçrérërîrñrór*r#rr³r³Žs¹€€€€€à €Dð#ð#ð#ð"ÐÐð.ð.ð.ð/ð/ð/ð1ð1ð1ð:ð:ð:ð)ð)ð)ðCðCðCðOðOðOðHðHðHðJðJðJðHðHðHðIðIðIðHðHðHðKðKðKðHðHðHðIðIðIðIðIðIðQðQðQðWðWðWðIðIðIðFðFðFð1ð1ð1ð1ð1ð1ð1ð1ð1ð1ð1r#r³cóЗeZdZdZdZd„Zd„Zd„Zd„Zd„Z d„Z d „Z d „Z d „Z d „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d „Z"d!„Z#dS)"Ú Win32CPUInfoNz,HARDWARE\DESCRIPTION\System\CentralProcessorcó†—|j�dSg} ddl}tjdtj¦«}| |j|j¦«}d} | ||¦«}|dz }|  d|i¦«| ||¦«}d} |  ||¦«\} } } |dz}| |d| <| dkr˜|  | ¦«} | r�t|   d¦«¦«|dd <t|   d ¦«¦«|dd <t|   d ¦«¦«|dd <n#|j$rYnwxYwŒÛn#|j$rYnwxYw�Œ:n'#t$r} t!| d¦«Yd} ~ nd} ~ wwxYw||j_dS)NrzFfamily\s+(?P\d+)\s+model\s+(?P\d+)\s+stepping\s+(?P\d+)TrÚ ProcessorroÚ IdentifierÚFMLÚFamilyÚMDLÚModelÚSTPÚSteppingz (ignoring))rÚwinregrUrVræÚOpenKeyÚHKEY_LOCAL_MACHINEÚpkeyÚEnumKeyrqÚ EnumValuerWrrXÚerrorr;Úprintrs)r<rrÿÚprgxÚchndÚpnumÚprocÚphndÚpidxrLrvÚvtpeÚsrchrs rrwzWin32CPUInfo.__init__às/€Ø Œ9Ð Ø ˆF؈ð! #à ˆMˆMˆMå”:ð<Ý=?¼]ñLôLˆDà—’ Ô 9¸4¼9ÑEÔEˆD؈Dð PðPØŸš¨¨dÑ3Ô3�Dð˜!‘G�DØ—K’K ¨TÐ 2Ñ3Ô3Ð3ØŸš¨¨dÑ3Ô3�DØ�Dð Pð PØ.4×.>Ò.>¸tÀTÑ.JÔ.JÑ-˜D %¨ð"& a¡˜DØ+0˜D œH T™NØ# \Ò1Ð1Ø%)§[¢[°Ñ%7Ô%7 Ø#'ð!PÝ7:¸4¿:º:ÀeÑ;LÔ;LÑ7MÔ7M D¨¤H¨XÑ$6Ý69¸$¿*º*ÀUÑ:KÔ:KÑ6LÔ6L D¨¤H¨WÑ$5Ý9<¸T¿ZºZÈÑ=NÔ=NÑ9OÔ9O D¨¤H¨ZÑ$8øøð &œ|ð"ð"ð"Ø!˜Eð"øøøð Pð"øð”|ðððØ�Eðøøøñ Pðøõ(ð #ð #ð #Ý �!�\Ñ "Ô "Ð "Ð "Ð "Ð "Ð "Ð "øøøøð #øøøà"ˆŒÔÐÐsa�AFÁE;Á*5F E)Â:B/FÅ) E6Å3FÅ5E6Å6FÅ; FÆFÆFÆFÆ F2ÆF-Æ-F2có—dSr:r*rPs rryzWin32CPUInfo._not_implrzr#có0—|jdddkS)NrÚVendorIdentifierr}r~rPs rrzWin32CPUInfo._is_AMD ó€ØŒy˜Œ|Ð.Ô/°Ò?Ð?r#cóX—| ¦«o|jdddkS©Nrrúér˜rPs rÚ _is_Am486zWin32CPUInfo._is_Am486ó%€Ø�{Š{‰}Œ}Ð: ¤¨1¤¨hÔ!7¸Ò!:Ð:r#cóX—| ¦«o|jdddkSrr˜rPs rÚ _is_Am5x86zWin32CPUInfo._is_Am5x86rr#có‚—| ¦«o+|jdddko|jdddvS)Nrrúérü)rrr0ér˜rPs rÚ _is_AMDK5zWin32CPUInfo._is_AMDK5sA€Ø�{Š{‰}Œ}ð9 ¤¨1¤¨hÔ!7¸Ò!:ð9Ø”9˜Q”< Ô(¨LÐ8ð 9r#có‚—| ¦«o+|jdddko|jdddvS)Nrrúrrü)éér˜rPs rÚ _is_AMDK6zWin32CPUInfo._is_AMDK6sA€Ø�{Š{‰}Œ}ð3 ¤¨1¤¨hÔ!7¸Ò!:ð3Ø”9˜Q”< Ô(¨FÐ2ð 3r#có†—| ¦«o-|jdddko|jdddkS)Nrrúrrüér˜rPs rÚ _is_AMDK6_2zWin32CPUInfo._is_AMDK6_2óA€Ø�{Š{‰}Œ}ð, ¤¨1¤¨hÔ!7¸Ò!:ð,Ø”9˜Q”< Ô(¨!Ò+ð ,r#có†—| ¦«o-|jdddko|jdddkS)Nrrúrrüé r˜rPs rÚ _is_AMDK6_3zWin32CPUInfo._is_AMDK6_3!r%r#cóX—| ¦«o|jdddkS©Nrrúrr˜rPs rÚ _is_AMDK7zWin32CPUInfo._is_AMDK7%s%€Ø�{Š{‰}Œ}Ð< ¤¨1¤¨hÔ!7¸1Ò!<Р4¤9¨Q¤<°Ô#9¸1Ò#<ð>Ø”9˜Q”< Ô(Ð,=Ð=ð >r#cóX—| ¦«o|jdddkSr-r¿rPs rrÕzWin32CPUInfo._is_PentiumIVSs%€Ø�}Š}‰ŒÐ= 4¤9¨Q¤<°Ô#9¸2Ò#=Ð=r#có‚—| ¦«o+|jdddko|jdddvS)Nrrúrrü)r'é ér¿rPs rr×zWin32CPUInfo._is_PentiumMVsA€Ø�}Š}‰Œð8 4¤9¨Q¤<°Ô#9¸QÒ#>ð8Ø”9˜Q”< Ô(¨KÐ7ð 8r#có‚—| ¦«o+|jdddko|jdddvS)Nrrúrrü)r.éér¿rPs rrâzWin32CPUInfo._is_Core2ZsA€Ø�}Š}‰Œð9 4¤9¨Q¤<°Ô#9¸QÒ#>ð9Ø”9˜Q”< Ô(¨LÐ8ð 9r#có2—t|j¦«dkSrOrérPs rrêzWin32CPUInfo._is_singleCPU`rër#có*—t|j¦«Sr:rérPs rrQzWin32CPUInfo._getNCPUscrír#có—| ¦«rC|jdddkr|jdddkp|jdddvS| ¦«r|jdddvSdS) Nrrúrrür©rr.©rrr.F©rÀrr™rPs rr÷zWin32CPUInfo._has_mmxfs‚€Ø �=Š=‰?Œ?ð Ø”I˜a”L Ô*¨AÒ-ÐJ°$´)¸A´,¸wÔ2GÈÒ2Jð:Ø”y ”| HÔ-°Ð8ð :à �[Š[‰]Œ]ð Ø”9˜Q”< Ô)¨ZÐ7Ð 7à�5r#cób—| ¦«rC|jdddkr|jdddvp|jdddkS| ¦«rC|jdddkr|jdddvp|jdddkSdS) Nrrúrrür=r.)rr r#r>FrLrPs rrúzWin32CPUInfo._has_sseos½€Ø �=Š=‰?Œ?ð Ø”Y˜q”\ (Ô+¨QÒ.ð@Ø”Y˜q”\ 'Ô*Ð.?Ð?ð3àœ  !œ  XÔ.°Ò2ð 4ð�[Š[‰]Œ]ð Ø”Y˜q”\ (Ô+¨QÒ.ð<Ø”Y˜q”\ 'Ô*¨mÐ;ð3àœ  !œ  XÔ.°Ò2ð 4ð�5r#cóö—| ¦«r<| ¦«p'| ¦«p| ¦«S| ¦«r| ¦«SdS)NF)rÀÚ is_Pentium4Ú is_PentiumMÚis_Core2r™Úis_AMD64rPs rrüzWin32CPUInfo._has_sse2{sl€Ø �=Š=‰?Œ?ð Ø×#Ò#Ñ%Ô%ð&¨×)9Ò)9Ñ);Ô);ð&Ø—m’m‘o”oð &à �[Š[‰]Œ]ð Ø—=’=‘?”?Ð "à�5r#cóT—| ¦«o|jdddvS)NrrúrKr˜rPs rrzWin32CPUInfo._has_3dnow„s%€Ø�{Š{‰}Œ}ÐE ¤¨1¤¨hÔ!7¸:Ð!EÐEr#cóT—| ¦«o|jdddvS)NrrúrJr˜rPs rrzWin32CPUInfo._has_3dnowext‡s%€Ø�{Š{‰}Œ}ÐB ¤¨1¤¨hÔ!7¸7Ð!BÐBr#)$rerfrgrrrwryrrrrr!r$r(r+ršr¸rr»rÁrÅrÊrÐrÎrÌrÓrÕr×rârêrQr÷rúrürrr*r#rrõrõØsú€€€€€à €DØ :€Dð &#ð&#ð&#ðPÐÐð@ð@ð@ð;ð;ð;ð;ð;ð;ð9ð9ð9ð3ð3ð3ð,ð,ð,ð,ð,ð,ð=ð=ð=ð>ð>ð>ð @ð@ð@ð)ð)ð)ð)ð)ð)ð=ð=ð=ð=ð=ð=ð=ð=ð=ð,ð,ð,ð,ð,ð,ð6ð6ð6ð>ð>ð>ð>ð>ð>ð8ð8ð8ð9ð9ð9ð #ð#ð#ððððððð ð ð ððððFðFðFðCðCðCðCðCr#rõÚlinuxÚirixÚdarwinÚsunosÚwin32Úcygwin)rr)rhÚ__all__rrSrUÚsysrIr Ú subprocessrrr"r'r6r8rjr rur³rõrEÚcpuinforr*r#rúr_s¯ðð ð ð ˆ'€à € € € Ø€€€Ø € € € Ø € € € Ø € € € Ø€€€à&Ð&Ð&Ð&Ð&Ð&ððððððððððððð8<Ø&'ð ð ð ð ð!*ð!*ð!*ð!*ð!*ñ!*ô!*ð!*ðFAOðAOðAOðAOðAO�;ñAOôAOðAOðF7Lð7Lð7Lð7Lð7L�+ñ7Lô7Lð7Lðt+5ð+5ð+5ð+5ð+5�Kñ+5ô+5ð+5ð\H1ðH1ðH1ðH1ðH1�;ñH1ôH1ðH1ðTpCðpCðpCðpCðpC�;ñpCôpCðpCðd„<×Ò˜7Ñ#Ô#ðØ€G€GØ„\×Ò˜VÑ$Ô$ð Ø€G€GØ„\�XÒÐØ€G€GØ„\×Ò˜WÑ%Ô%ðØ€G€GØ„\×Ò˜WÑ%Ô%ðØ€G€GØ„\×Ò˜XÑ&Ô&ðØ€G€Gð€Gà €g�i„i€€€r#