grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026U iÛf()ã@sÊdZddlmZmZmZmZmZmZmZm Z m Z zddlm Z Wne k rXdZ YnXddl mZmZmZmZddlmZddlmZddlmZddlZddlZddlZddlZddlZddlZejd ed d �dZd Zd Z d Z!dZ"dZ#dZ$dZ%dZ&dZ'dd„Z(dd„Z)dd„Z*d8dd„Z+dd„Z,dd„Z-Gd d!„d!ƒZ.Gd"d#„d#ƒZ/Gd$d%„d%e/ej0ƒZ1d9d&d'„Z2Gd(d)„d)e/eƒZ3d:d*d+„Z4d,d-„Z5d.d/„Z6d;d0d1„Z7d2d3„Z8d4d5„Z9e �rÂdksz get_suffixes..cSsg|]}|dtf‘qS)Úr)Ú PY_SOURCEr7r!r!r"r:lscSsg|]}|dtf‘qSr4)Ú PY_COMPILEDr7r!r!r"r:ms)rÚEXTENSION_SUFFIXESÚSOURCE_SUFFIXESÚBYTECODE_SUFFIXES)Ú extensionsÚsourceÚbytecoder!r!r"Ú get_suffixesisrDc@s eZdZdZdd„Zdd„ZdS)Ú NullImporterz-**DEPRECATED** Null import object. cCs2|dkrtddd�‚ntj |¡r.td|d�‚dS)NÚzempty pathnamer2zexisting directory)Ú ImportErrorÚosr/Úisdir)Úselfr/r!r!r"Ú__init__zs zNullImporter.__init__cCsdS)zAlways returns None.Nr!)rJÚfullnamer!r!r"Ú find_module€szNullImporter.find_moduleN)Ú__name__Ú __module__Ú __qualname__Ú__doc__rKrMr!r!r!r"rErsrEcs.eZdZdZd‡fdd„ Z‡fdd„Z‡ZS)Ú_HackedGetDatazMCompatibility support for 'file' arguments of various load_*() functions.Ncstƒ ||¡||_dS)N)ÚsuperrKÚfile)rJrLr/rT©Ú __class__r!r"rKŠsz_HackedGetData.__init__c s||jrl||jkrl|jjs0|j}d|jkr0| ¡|jjrJt|jdƒ|_}|�| ¡W5QR£SQRXn tƒ |¡SdS)z;Gross hack to contort loader to deal w/ load_*()'s bad API.Úbr5N) rTr/ÚclosedÚmodeÚcloseÚopenÚreadrSÚget_data)rJr/rTrUr!r"r]Žs z_HackedGetData.get_data)N)rNrOrPrQrKr]Ú __classcell__r!r!rUr"rR…srRc@seZdZdZdS)Ú_LoadSourceCompatibilityz5Compatibility support for implementing load_source().N©rNrOrPrQr!r!r!r"r_ sr_cCs\t|||ƒ}tj|||d�}|tjkr8t|tj|ƒ}nt|ƒ}t ||¡|_ |j |j _ |S)N©Úloader) r_rÚspec_from_file_locationr&Úmodulesr rrÚSourceFileLoaderÚ __loader__Ú__spec__rb©r ÚpathnamerTrbÚspecÚmoduler!r!r"Ú load_source¥s   rlc@seZdZdZdS)Ú_LoadCompiledCompatibilityz7Compatibility support for implementing load_compiled().Nr`r!r!r!r"rm³srmcCsZt|||ƒ}tj|||d�}|tjkr8t|tj|ƒ}nt|ƒ}t||ƒ|_|j|j _ |S)r3ra) rmrrcr&rdr rrrfrgrbrhr!r!r"Ú load_compiled¸s    rncCsœtj |¡rftjdd…tjdd…}|D]*}tj |d|¡}tj |¡r,|}qfq,td  |¡ƒ‚t j ||gd�}|t j kr�t|t j |ƒSt|ƒSdS)r3NrKz{!r} is not a package)Úsubmodule_search_locations)rHr/rIrr?r@ÚjoinÚexistsÚ ValueErrorÚformatrrcr&rdr r)r r/rAÚ extensionZ init_pathrjr!r!r"Ú load_packageÇs    ÿ ÿ ruc Cs$|\}}}|r0| d¡r d|kr0td |¡ƒ‚nð|dkrX|tthkrXd |¡}t|ƒ‚nÈ|tkrlt|||ƒS|tkr€t|||ƒS|tkrÒtdk rÒ|dkrÄt |dƒ�}t|||ƒW5QR£SQRXn t|||ƒSnN|t krät ||ƒS|t k�röt |ƒS|tk�rt|ƒSd ||¡}t||d�‚dS) z–**DEPRECATED** Load a module, given information returned by find_module(). The module name must include the full package name, if any. )r;ÚUú+zinvalid file open mode {!r}Nz.file object required for import (type code {})r5z*Don't know how to import {} (type code {})r)Ú startswithrrrsr<r=rlrnr6Ú load_dynamicr[Ú PKG_DIRECTORYruÚ C_BUILTINÚ init_builtinÚ PY_FROZENrrG) r rTÚfilenameZdetailsÚsuffixrYÚtype_ÚmsgZ opened_filer!r!r"Ú load_moduleÛs.           r‚c CsŒt|tƒstd t|ƒ¡ƒ‚n$t|tdƒtfƒsBtd t|ƒ¡ƒ‚|dkr€t|ƒrbddddtffSt |ƒrzddddt ffSt j }|D]¢}t j  ||¡}dtjdfD]>}d|}t j  ||¡}t j  |¡r¤d|ddtffSq¤tƒD]2\}}}||} t j  || ¡}t j  |¡rê�q qêq„�q:q„tt |¡|d�‚d} d |k�rnt|d ƒ�} t | j¡d} W5QRXt||| d �} | ||||ffS) a,**DEPRECATED** Search for a module. If path is omitted or None, search for a built-in, frozen or special module and continue search in sys.path. The module name cannot contain '.'; to search for a submodule of a package, pass the submodule name and the package's __path__. z'name' must be a str, not {}Nz%'path' must be None or a list, not {}rFz.pyrrKrrWr5)Úencoding)Ú isinstanceÚstrÚ TypeErrorrsÚtypeÚlistÚ RuntimeErrorrr{r r}r&r/rHrprr@ÚisfilerzrDrGr r[ÚtokenizeÚdetect_encodingÚreadline) r r/ÚentryZpackage_directoryrZpackage_file_nameZ file_pathrYr€Ú file_namerƒrTr!r!r"rMþsB ÿ    rMcCs t |¡S)zw**DEPRECATED** Reload the module and return it. The module must have been successfully imported before. )Ú importlibÚreload)rkr!r!r"r‘2sr‘cCs&z t|ƒWStk r YdSXdS)zl**DEPRECATED** Load and return a built-in module by name, or None is such module doesn't exist N)rrGrr!r!r"r|=s r|cCs0ddl}|j ||¡}|jj|||d�}t|ƒS)z:**DEPRECATED** Load an extension module. rN)r rbÚorigin)Úimportlib.machineryrÚExtensionFileLoaderÚ ModuleSpecr)r r/rTr�rbrjr!r!r"ryJsÿry)N)N)N)N)N);rQÚ_imprrrrrrrr r r rGZimportlib._bootstrapr r rrZimportlib._bootstrap_externalrr�rrrHr&r‹rr+ÚwarnÚDeprecationWarningZ SEARCH_ERRORr<r=r6Z PY_RESOURCErzr{r}ZPY_CODERESOURCEZIMP_HOOKr#r%r)r.r1rDrErRrer_rlrmrnrur‚rMr‘r|ryr!r!r!r"Úsb,    þ     # 4