Ë &kl IÀFãó—ddlZddlZddlZddlmZddlmZddlm Z m Z m Z m Z ddl mZddlmZddlmZddlmZmZdd lmZdd lmZdd lmZmZ ddlmZe d «ed «ddlm"Z#d„Z$dZ%dZ&dZ'ejPdk(rdZ&nejRdk7r ddl*Z*e+e*d«xZ&Z%d„Z,d„Z-Gd„de«Ze&sejRdk(r dd„Z.ydZ' dd„Z.y#e!$reZYŒ“wxYw#e!$rYŒVwxYw)éN©ÚEXTENSION_SUFFIXES)Úcache_from_source)ÚDictÚIteratorÚListÚTuple)ÚPath)Ú build_ext)Ú new_compiler)Úcustomize_compilerÚget_config_var)Úlog)Ú BaseError)Ú ExtensionÚLibraryzCython.Compiler.MainÚLDSHARED)Ú _config_varscóf—tjdk(retj«} dtd<dtd<dtd<t |«tj «tj |«yt |«y#tj «tj |«wxYw)NÚdarwinz0gcc -Wl,-x -dynamiclib -undefined dynamic_lookuprz -dynamiclibÚCCSHAREDz.dylibÚSO)ÚsysÚplatformÚ _CONFIG_VARSÚcopyr ÚclearÚupdate)ÚcompilerÚtmps úA/usr/lib/python3.12/site-packages/setuptools/command/build_ext.pyÚ_customize_compiler_for_shlibr" s‘€Ü ‡|�|�xÒô×ÑÓ!ˆð %ðCô ˜Ñ $ð(6ŒL˜Ñ $Ø!)ŒL˜Ñ Ü ˜xÔ (ä × Ñ Ô Ü × Ñ  Õ $ä˜8Õ$øô × Ñ Ô Ü × Ñ  Õ $ús ©&BÂ+B0FÚsharedrTÚntÚRTLD_NOWcó—tr|SdS)NÚ)Ú have_rtld)Úss r!Úif_dlr*Ds€Ýˆ1Ð!˜rÐ!ócó<—tD]}d|vr|cS|dk(sŒ|cSy)z;Return the file extension for an abi3-compliant Extension()z.abi3z.pydNr)Úsuffixs r!Úget_abi3_suffixr.Hs+€ç$ˆØ �fÑ ØŠMØ �vÓ ØŠMð %ð r+có(—eZdZUdZeed<dZeed<d„Zdede e e ffd„Z d„Z ded e de fd „Z dee e e ffd „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zdee fd„Zdee fd„Zdee fd„Zdee e ffd„Zd„Zd„Zdd„Zdde defd„Z de fd„Z!y)r FÚ editable_modeÚinplacecóŠ—|jdc}|_tj|«||_|r|j«yy)z;Build extensions in build directory, then copy if --inplacerN)r1Ú _build_extÚrunÚcopy_extensions_to_source)ÚselfÚ old_inplaces r!r4z build_ext.runVs;€à$(§L¡L°!Ð!ˆ �T”\Ü�‰�tÔØ"ˆŒ Ù Ø × *Ñ *Õ ,ð r+ÚextÚreturncóœ—|j|j«}|j|«}|jd«}dj |dd«}|j |«}t jj |t jj|««}t jj |j|«} || fS)NÚ.éÿÿÿÿ) Úget_ext_fullnameÚnameÚget_ext_filenameÚsplitÚjoinÚget_package_dirÚosÚpathÚbasenameÚ build_lib) r6Úbuild_pyr8ÚfullnameÚfilenameÚmodpathÚpackageÚ package_dirÚ inplace_fileÚ regular_files r!Ú_get_inplace_equivalentz!build_ext._get_inplace_equivalent^sž€Ø×(Ñ(¨¯©Ó2ˆØ×(Ñ(¨Ó2ˆØ—.‘. Ó%ˆØ—(‘(˜7 3 B˜<Ó(ˆØ×.Ñ.¨wÓ7ˆ Ü—w‘w—|‘| K´·±×1AÑ1AÀ(Ó1KÓLˆ Ü—w‘w—|‘| D§N¡N°HÓ=ˆ ؘlÐ+Ð+r+cój—|jd«}|jD]“}|j||«\}}tjj |«s |j s|j|||j¬«|jsŒn|j||«}|j||d¬«Œ•y)NrG)ÚlevelT)Úcompile) Úget_finalized_commandÚ extensionsrOrCrDÚexistsÚoptionalÚ copy_fileÚverboseÚ _needs_stubÚ_get_equivalent_stubÚ_write_stub_file)r6rGr8rMrNÚ inplace_stubs r!r5z#build_ext.copy_extensions_to_sourcehs”€Ø×-Ñ-¨jÓ9ˆØ—?”?ˆCØ)-×)EÑ)EÀhÐPSÓ)TÑ &ˆL˜,ô �w‰w�~‰~˜lÔ+°3·<²<Ø—‘˜|¨\ÀÇÁ�ÔNà�‹Ø#×8Ñ8¸¸lÓK� Ø×%Ñ% l°CÀÐ%ÕFñ#r+Ú output_filecóÄ—tjj|«}|jj d«\}}}tjj ||«›d�S©Nr;ú.py)rCrDÚdirnamer>Ú rpartitionrA)r6r8r]Údir_Ú_r>s r!rZzbuild_ext._get_equivalent_stubysK€Ü�w‰w�‰˜{Ó+ˆØ—X‘X×(Ñ(¨Ó-‰ ˆˆ1ˆdÜ—'‘'—,‘,˜t TÓ*Ð+¨3Ð/Ð/r+c#ó€K—|jsy|jd«}|jd«jxsd}|jD]n}|j ||«\}}||f–—|j sŒ+|j ||«}|j ||«}t||¬«}t||¬«} | |f–—Œpy­w)NrGÚ install_libr')Ú optimization)r1rSÚoptimizerTrOrYrZÚ_compiled_file_name) r6rGÚoptr8rMrNr\Ú regular_stubÚ inplace_cacheÚ output_caches r!Ú_get_output_mappingzbuild_ext._get_output_mapping~s¼èø€Ø�|Š|Ø à×-Ñ-¨jÓ9ˆØ×(Ñ(¨Ó7×@Ñ@ÒFÀBˆà—?”?ˆCØ)-×)EÑ)EÀhÐPSÓ)TÑ &ˆL˜,Ø Ð.Ò .à�‹ð $×8Ñ8¸¸lÓK� Ø#×8Ñ8¸¸lÓK� Ü 3°LÈsÔ S� Ü2°<ÈcÔR� Ø# ]Ð3Ó3ñ!#ùs ‚A4B>Á7AB>cóЗtjd«}|r/tjj|j d«Ž|z}n!t j ||«}td«}||jvrð|j|}|jxr t«}|r|dt|« }t«}||z}t|t«rBtjj|«\}}|jj!|t"«St$rQ|j&rEtjj |«\}}tjj|d|z«S|S)NÚSETUPTOOLS_EXT_SUFFIXr;Ú EXT_SUFFIXzdl-)rCÚgetenvrDrAr@r3r?rÚext_mapÚpy_limited_apir.ÚlenÚ isinstancerÚsplitextÚshlib_compilerÚlibrary_filenameÚlibtypeÚ use_stubsÚ_links_to_dynamic)r6rHÚso_extrIr8Úuse_abi3ÚfnÚds r!r?zbuild_ext.get_ext_filename—s€Ü—‘Ð2Ó3ˆÙ Ü—w‘w—|‘| X§^¡^°CÓ%8Ð9¸FÑB‰Hä!×2Ñ2°4¸ÓBˆHÜ# LÓ1ˆFà �t—|‘|Ñ #Ø—,‘,˜xÑ(ˆCØ×)Ñ)Ò?¬oÓ.?ˆHÙØ# N¤s¨6£{ lÐ3�Ü(Ó*�Ø# fÑ,�ܘ#œwÔ'ÜŸ'™'×*Ñ*¨8Ó4‘��CØ×*Ñ*×;Ñ;¸BÄÓHÐHݘs×4Ò4ÜŸ™Ÿ ™  hÓ/‘��2Ü—w‘w—|‘| A u¨r¡zÓ2Ð2؈r+cóf—tj|«d|_g|_i|_d|_y)NF)r3Úinitialize_optionsrxÚshlibsrsr0©r6s r!r‚zbuild_ext.initialize_options®s.€Ü×%Ñ% dÔ+Ø"ˆÔ؈Œ ؈Œ Ø"ˆÕr+có®—tj|«|jxsg|_|j|j«|jD�cgc]}t |t «sŒ|‘Œc}|_|j r|j«|jD]"}|j|j«|_ Œ$|jD�]j}|j}||j|<||j|jd«d<|j xr|j|«xsd}|xrtxrt |t « }||_||_|j#|«x}|_t&j(j+t&j(j-|j.|««}|r)||j0vr|j0j3|«|s�Œts�Œ$t&j4|j6vs�ŒB|j6j3t&j4«�Œm|j8rd|_yycc}w)Nr;r<FT)r3Úfinalize_optionsrTÚcheck_extensions_listrvrrƒÚsetup_shlib_compilerr=r>Ú _full_namersr@Úlinks_to_dynamicr{r|rYr?Ú _file_namerCrDrarArFÚ library_dirsÚappendÚcurdirÚruntime_library_dirsr0r1)r6r8rHÚltdÚnsrIÚlibdirs r!r†zbuild_ext.finalize_optionsµsÀ€Ü×#Ñ# DÔ)ØŸ/™/Ò/¨RˆŒØ ×"Ñ" 4§?¡?Ô3Ø&*§o¢oÓR¡o˜s¼ÀCÌÕ9Q’s oÑRˆŒ Ø �;Š;Ø × %Ñ %Ô 'Ø—?”?ˆCØ!×2Ñ2°3·8±8Ó<ˆC�Nð#à—?•?ˆCØ—~‘~ˆHØ%(ˆD�L‰L˜Ñ "ð58ˆD�L‰L˜Ÿ™¨Ó,¨RÑ0Ñ 1à—+‘+Ò< $×"7Ñ"7¸Ó"<ÒEÀˆCØÒCœÒC¬:°c¼7Ó+CÐ'CˆBØ$'ˆCÔ !Ø ˆCŒOØ(,×(=Ñ(=¸hÓ(GÐ GˆH�s”~Ü—W‘W—_‘_¤R§W¡W§\¡\°$·.±.À(Ó%KÓLˆFÙ�v S×%5Ñ%5Ñ5Ø× Ñ ×'Ñ'¨Ô/Û—y¤R§Y¡Y°c×6NÑ6NÓ%NØ×(Ñ(×/Ñ/´· ± Ö:ð##ð& × Ò ØˆD�Lð ùò1Ss ÁIÁ*Icóú—t|j|j|j¬«x}|_t |«|j �|j|j «|j�&|jD]\}}|j||«Œ|j�"|jD]}|j|«Œ|j�|j|j«|j�|j|j«|j �|j#|j «|j$�|j'|j$«t(j+|«|_y)N)rÚdry_runÚforce)r rr”r•rxr"Ú include_dirsÚset_include_dirsÚdefineÚ define_macroÚundefÚundefine_macroÚ librariesÚ set_librariesrŒÚset_library_dirsÚrpathÚset_runtime_library_dirsÚ link_objectsÚset_link_objectsÚlink_shared_objectÚ__get__)r6rr>ÚvalueÚmacros r!rˆzbuild_ext.setup_shlib_compilerÔs2€Ü)5Ø—]‘]¨D¯L©LÀÇ Á ô* ð ˆ�4Ô&ô & hÔ/à × Ñ Ð (Ø × %Ñ % d×&7Ñ&7Ô 8Ø �;‰;Ð "à#Ÿ{œ{‘ ��eØ×%Ñ% d¨EÕ2ð +à �:‰:Ð !ØŸœ�Ø×'Ñ'¨Õ.ð$à �>‰>Ð %Ø × "Ñ " 4§>¡>Ô 2Ø × Ñ Ð (Ø × %Ñ % d×&7Ñ&7Ô 8Ø �:‰:Ð !Ø × -Ñ -¨d¯j©jÔ 9Ø × Ñ Ð (Ø × %Ñ % d×&7Ñ&7Ô 8ô'9×&@Ñ&@ÀÓ&JˆÕ#r+cóf—t|t«r |jStj||«S©N)rvrÚexport_symbolsr3Úget_export_symbols)r6r8s r!rªzbuild_ext.get_export_symbolsïs+€Ü �cœ7Ô #Ø×%Ñ%Ð %Ü×,Ñ,¨T°3Ó7Ð7r+cóD—|j«|j} t|t«r|j|_t j ||«|jr-|jd«j}|j||«||_y#||_wxYw)NrG) Ú_convert_pyx_sources_to_langrrvrrxr3Úbuild_extensionrYrSrFÚ write_stub)r6r8Ú _compilerrFs r!r­zbuild_ext.build_extensionôs}€Ø ×(Ñ(Ô*Ø—M‘Mˆ ð &ܘ#œwÔ'Ø $× 3Ñ 3�” Ü × &Ñ & t¨SÔ 1Ø�ŠØ ×6Ñ6°zÓB×LÑL� Ø—‘  ¨3Ô/à%ˆD�Mø˜IˆD�Mús žA0B Bc󇇗tj|jD�cgc]}|j‘Œc}«Šdj |jj d«dddgz«Št ˆˆfd„|jD««Scc}w)z?Return true if 'ext' links to a dynamic lib in the same packager;Nr<r'c3ó,•K—|] }‰|z‰v–—Œ y­wr¨©)Ú.0ÚlibnameÚlibnamesÚpkgs €€r!Ú z-build_ext.links_to_dynamic..søèø€ÐJ¹M°�3˜‘= HÔ,¹Mùsƒ)ÚdictÚfromkeysrƒr‰rAr@Úanyrœ)r6r8Úlibrµr¶s @@r!rŠzbuild_ext.links_to_dynamicspù€ô —=‘=¸D¿KºKÓ!H¹K°S #§.£.¸KÑ!HÓIˆØ�h‰h�s—~‘~×+Ñ+¨CÓ0°°"Ð5¸¸Ñ<Ó=ˆÜÔJ¸C¿MºMÓJÓJÐJùò"Is B cóP—gtj|«¢|j«¢Sr¨)r3Úget_source_filesÚ_get_internal_dependsr„s r!r½zbuild_ext.get_source_files s&€ØR”×,Ñ,¨TÓ2ÐR°T×5OÑ5OÓ5QÐRÐRr+c#ó0K—t|jjxstj«j «}d„|j D«}dtdtddfd„}|D]y}t|«}|j«r ||d«Œ(d|jvr ||d «Œ@ ||z j d ¬ «} |j|«|j«–—Œ{y#t$r ||d «YŒ‘wxYw#t$r ||d «YŒ©wxYw­w)zAYield ``ext.depends`` that are contained by the project directoryc3óBK—|]}|jD]}|–—ŒŒy­wr¨)Údepends)r³r8Údeps r!r·z2build_ext._get_internal_depends..sèø€ÐI¡/˜3¸S¿[¼[°c”3¸[�3¡/ùs‚Ú orig_pathÚreasonr9Ncó2—tjd||«y)NzJdependency %s won't be automatically included in the manifest: the path %s)rÚinfo)rÃrÄs r!Úskipz-build_ext._get_internal_depends..skips€Ü �H‰Hð8àØõ  r+zmust be relativez..zcan't have `..` segmentsT)Ústrictz doesn't existzmust be inside the project root)r Ú distributionÚsrc_rootrCrŽÚresolverTÚstrÚ is_absoluteÚpartsÚOSErrorÚ relative_toÚ ValueErrorÚas_posix)r6Ú project_rootrÁrÇrÂrDÚresolveds r!r¾zbuild_ext._get_internal_depends sèø€ä˜D×-Ñ-×6Ñ6ÒC¼"¿)¹)ÓD×LÑLÓNˆ ÙI $§/¢/ÓIˆð œCð ¬ð °ó óˆCܘ“9ˆDà×ÑÔ!Ù�SÐ,Ô-Øà�t—z‘zÑ!Ù�SÐ4Ô5Øð Ø(¨4Ñ/×8Ñ8ÀÐ8ÓE�ð  Ø×$Ñ$ \Ô2ð —-‘-“/Ó !ñ/øôò Ù�S˜/Ô*Ùð ûô ò Ù�SÐ;Ô<Ùð üsH‚B'DÂ*C&ÃC>ÃDÃ&C;Ã8DÃ:C;Ã;DÃ>DÄDÄDÄDcóÆ—|jr't|j«j««St t j |«|j«z«Sr¨)r1ÚlistÚget_output_mappingÚkeysÚsortedr3Ú get_outputsÚ_build_ext__get_stubs_outputsr„s r!rÚzbuild_ext.get_outputs3sJ€Ø �<Š<ܘ×/Ñ/Ó1×6Ñ6Ó8Ó9Ð 9Ü”j×,Ñ,¨TÓ2°T×5MÑ5MÓ5OÑOÓPÐPr+cóP—|j«}tt|d„¬««S)z1See :class:`setuptools.commands.build.SubCommand`có —|dS)Nrr²)Úxs r!Úz.build_ext.get_output_mapping..;s€°!°A²$r+)Úkey)rnr¸rÙ)r6Úmappings r!r×zbuild_ext.get_output_mapping8s"€à×*Ñ*Ó,ˆÜ”F˜7©Ô7Ó8Ð8r+c󚇗ˆfd„‰jD«}tj|‰j««}t d„|D««S)Nc3ó¼•K—|]S}|jrEtjj‰jg|j j d«¢­Ž–—ŒUy­w)r;N)rYrCrDrArFr‰r@)r³r8r6s €r!r·z0build_ext.__get_stubs_outputs..?sEøèø€ð á&�Ø�Šô �G‰G�L‰L˜Ÿ™Ð D¨#¯.©.×*>Ñ*>¸sÓ*CÖ DÙ&ùsƒAAc3ó,K—|] \}}||z–—Œy­wr¨r²)r³ÚbaseÚfnexts r!r·z0build_ext.__get_stubs_outputs..Fsèø€Ð:±E¡[ T¨5�D˜5•L±Eùs‚)rTÚ itertoolsÚproductÚ!_build_ext__get_output_extensionsrÖ)r6Ú ns_ext_basesÚpairss` r!Ú__get_stubs_outputszbuild_ext.__get_stubs_outputs=sDø€ó à—’ó ˆ ô ×!Ñ! ,°×0LÑ0LÓ0NÓOˆÜÑ:±EÓ:Ó:Ð:r+c#ó\K—d–—d–—|jd«jrd–—yy­w)Nr`z.pycrGz.pyo)rSrhr„s r!Ú__get_output_extensionsz!build_ext.__get_output_extensionsHs.èø€ØŠ ØŠ Ø × %Ñ % jÓ 1× :Ò :Ø‹Lð ;ùs‚*,có¢—tjj|g|jj d«¢­Ždz}|j |||«yr_)rCrDrAr‰r@r[)r6Ú output_dirr8rRÚ stub_files r!r®zbuild_ext.write_stubNs?€Ü—G‘G—L‘L ÐH¨c¯n©n×.BÑ.BÀ3Ó.GÒHÈ5ÑPˆ Ø ×јi¨¨gÕ6r+rñcó(—tjd|j|«|r-tjj |«rt |dz«‚|js¢t|d«}|jdjdddtd«zd tjj|j«zd d d td «dddtd«dddddtd«dddg««|j«|r|j|«yy)Nz writing stub loader for %s to %sz already exists! Please delete.ÚwÚ zdef __bootstrap__():z- global __bootstrap__, __file__, __loader__z0 import sys, os, pkg_resources, importlib.utilz, dlz: __file__ = pkg_resources.resource_filename(__name__,%r)z del __bootstrap__z if '__loader__' in globals():z del __loader__z# old_flags = sys.getdlopenflags()z old_dir = os.getcwd()z try:z( os.chdir(os.path.dirname(__file__))z$ sys.setdlopenflags(dl.RTLD_NOW)z3 spec = importlib.util.spec_from_file_location(z# __name__, __file__)z0 mod = importlib.util.module_from_spec(spec)z! spec.loader.exec_module(mod)z finally:z" sys.setdlopenflags(old_flags)z os.chdir(old_dir)z__bootstrap__()r')rrÆr‰rCrDrUrr”ÚopenÚwriterAr*rEr‹ÚcloseÚ_compile_and_remove_stub)r6rñr8rRÚfs r!r[zbuild_ext._write_stub_fileRs€Ü �‰Ð3°S·^±^ÀYÔOÙ ”r—w‘w—~‘~ iÔ0ܘIÐ(IÑIÓJÐ JØ�|Š|Ü�Y Ó$ˆAØ �G‰GØ— ‘ Ø*ØCØFÌÈvËÑVð$Ü&(§g¡g×&6Ñ&6°s·~±~Ó&FñGà*Ø6Ø+ÜÐ?Ó@Ø.ØØ>ÜÐ@ÓAØIØ9ØFØ7Ø!ÜÐ>Ó?Ø,Ø%Øð-óô ð4 �G‰GŒIÙ Ø × )Ñ )¨)Õ 4ð r+có0—ddlm}||gdd|j¬«|jd«j}|dkDr||g|d|j¬«t j j|«r#|jst j|«yyy)Nr)Ú byte_compileT)rhr•r”rf) Údistutils.utilrûr”rSrhrCrDrUÚunlink)r6rñrûrhs r!røz"build_ext._compile_and_remove_stubvsy€Ý/á�i�[¨1°DÀ$Ç,Á,ÕOØ×-Ñ-¨mÓ<×EÑEˆØ �aŠ<Ù Ø�  h°dÀDÇLÁLõ ô �7‰7�>‰>˜)Ô $¨T¯\ª\Ü �I‰I�iÕ ð.:Ð $r+N)F)"Ú__name__Ú __module__Ú __qualname__r0ÚboolÚ__annotations__r1r4rr rÌrOr5rZrrnr?r‚r†rˆrªr­rŠrr½r¾rÚrr×rÛrér®r[rør²r+r!r r Rs …Ø€M�4ÓØ€GˆTÓò-ð,°Yð,À5ÈÈcÈÁ?ó,ò Gð"0¨ ð0Àð0Èó0ð 4 X¨e°C¸°H©oÑ%>ó4ò2ò.#ò ò>Kò68ò &òKðS $ s¡)óSð$" x°¡}ó$"ðLQ˜T #™YóQð 9 D¨¨c¨¡Nó9ò ;òó 7ñ"5¨#ð"5°Ió"5ðH !°#ô !r+r c óR—|j|j||||||||| | | | « yr¨)ÚlinkÚSHARED_LIBRARY) r6ÚobjectsÚoutput_libnamerðrœrŒr�r©ÚdebugÚ extra_preargsÚextra_postargsÚ build_tempÚ target_langs r!r£r£†s=€ð � ‰ Ø × Ñ Ø Ø Ø Ø Ø Ø Ø Ø Ø Ø Ø Ø õ r+Ústaticc ó—|�J‚tjj|«\}} tjj| «\}}|j d«j d«r|dd}|j ||||| «y)NrÞr»é)rCrDr@rwryÚ startswithÚcreate_static_lib)r6rrrðrœrŒr�r©rr r r r rIrEr8s r!r£r£©s{€ð*Ð!Ð!Ð!Ü!Ÿw™wŸ}™}¨^Ó<ш �HÜŸ™×(Ñ(¨Ó2‰ ˆ�#Ø × Ñ  Ó %× 0Ñ 0°Ô 7ð   �|ˆHà ×јw¨°*¸eÀ[ÕQr+) NNNNNrNNNN)/rCrrçÚimportlib.machineryrÚimportlib.utilrriÚtypingrrrr Úpathlibr Údistutils.command.build_extr Ú _du_build_extÚdistutils.ccompilerr Údistutils.sysconfigr rÚ distutilsrÚsetuptools.errorsrÚsetuptools.extensionrrÚCython.Distutils.build_extr3Ú __import__Ú ImportErrorrrr"r(r{rzrr>ÚdlÚhasattrr*r.r£r²r+r!Úr"s@ðÛ Û ÛÝ2ÝCß.Ó.ÝåBÝ,ßBÝå'ß3ðåBñÐ%Ô&ñ ˆzÔÝ<ò%ð* € Ø € Ø €à‡<�<�8ÒØ�I؇W�W�‚_ð Ûá '¨¨JÓ 7Ð7ˆ �Iò "òôn!� ôn!ñb  �—‘˜4’ðØØØ!ØØØØØØô ðB€Gð ØØØ!ØØØØØØôRøðc òØ‚JðûðP ò Ù ð ús$ÁC,ÂC9Ã,C6Ã5C6Ã9DÄD