a DOg()@sddlmZmZmZmZmZmZmZmZm Z zddlm Z Wne yRdZ Yn0ddl m Z mZmZmZddlmZddlmZddlmZddlZddlZddlZddlZddlZddlZejded d dZd Zd Zd Z d Z!dZ"dZ#dZ$dZ%dZ&ddZ'ddZ(ddZ)d7ddZ*ddZ+ddZ,Gdd d Z-Gd!d"d"Z.Gd#d$d$e.ej/Z0d8d%d&Z1Gd'd(d(e.eZ2d9d)d*Z3d+d,Z4d-d.Z5d:d/d0Z6d1d2Z7d3d4Z8e rd;d5d6Z9ndZ9dS)<) lock_held acquire_lock release_lockget_frozen_objectis_frozen_package init_frozen is_builtin is_frozen_fix_co_filename)create_dynamicN)_ERR_MSG_exec_load_builtin_from_name)SourcelessFileLoader) machinery)utilzhthe imp module is deprecated in favour of importlib; see the module's documentation for alternative uses) stacklevel cCs t|SN)types ModuleTypenamer"(/opt/alt/python39/lib64/python3.9/imp.py new_module0sr$cCstjSr)r MAGIC_NUMBERr"r"r"r# get_magic;sr&cCstjjSr)sysimplementation cache_tagr"r"r"r#get_tagCsr*cCsBt&tdt||WdS1s40YdS)Nignore)warningscatch_warnings simplefilterrcache_from_source)pathdebug_overrider"r"r#r/Hs  r/cCs t|Sr)rsource_from_cacher0r"r"r#r2[s r2cCs<ddtjD}ddtjD}ddtjD}|||S)NcSsg|]}|dtfqSrb) C_EXTENSION.0sr"r"r# kz get_suffixes..cSsg|]}|dtfqS)r) PY_SOURCEr7r"r"r#r:lr;cSsg|]}|dtfqSr4) PY_COMPILEDr7r"r"r#r:mr;)rEXTENSION_SUFFIXESSOURCE_SUFFIXESBYTECODE_SUFFIXES) extensionssourcebytecoder"r"r# get_suffixesisrEc@seZdZddZddZdS) NullImportercCs2|dkrtdddntj|r.td|ddS)Nzempty pathnamer3zexisting directory) ImportErrorosr0isdir)selfr0r"r"r#__init__zs zNullImporter.__init__cCsdSrr")rKfullnamer"r"r# find_moduleszNullImporter.find_moduleN)__name__ __module__ __qualname__rLrNr"r"r"r#rFrsrFcs*eZdZdfdd ZfddZZS)_HackedGetDataNcst||||_dSr)superrLfile)rKrMr0rT __class__r"r#rLsz_HackedGetData.__init__cs|jrx||jkrx|jjs0|j}d|jvr0||jjrJt|jd|_}||WdS1sl0Yn t|SdS)Nbr5) rTr0closedmodecloseopenreadrSget_data)rKr0rTrUr"r#r]s (z_HackedGetData.get_data)N)rOrPrQrLr] __classcell__r"r"rUr#rRsrRc@s eZdZdS)_LoadSourceCompatibilityNrOrPrQr"r"r"r#r_sr_cCs\t|||}tj|||d}|tjvr8t|tj|}nt|}t|||_ |j |j _ |SN)loader) r_rspec_from_file_locationr'modulesr rrSourceFileLoader __loader____spec__rbr!pathnamerTrbspecmoduler"r"r# load_sources   rlc@s eZdZdS)_LoadCompiledCompatibilityNr`r"r"r"r#rmsrmcCsZt|||}tj|||d}|tjvr8t|tj|}nt|}t|||_|j|j _ |Sra) rmrrcr'rdr rrrfrgrbrhr"r"r# load_compileds    rncCstj|rftjddtjdd}|D]*}tj|d|}tj|r,|}qfq,td |t j ||gd}|t j vrt|t j |St|SdS)NrLz{!r} is not a package)submodule_search_locations)rIr0rJrr@rAjoinexists ValueErrorformatrrcr'rdr r)r!r0rB extensionZ init_pathrjr"r"r# load_packages      ruc Cs4|\}}}|r2|dr d|vr2td|n|durZ|tthvrZd|}t|n|tkrnt|||S|tkrt|||S|tkrtdur|durt |d}t|||WdS1s0Yn t|||SnP|t krt ||S|t krt |S|tkrt|Sd||}t||ddS)N)r<U+zinvalid file open mode {!r}z.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_FROZENrrH) r!rTfilenameZdetailssuffixrYtype_msgZ opened_filer"r"r# load_modules.      ,     rc Cst|tstdt|n$t|tdtfsBtdt||durt|rbddddtffSt |rzddddt ffSt j }|D]}t j ||}dtjdfD]>}d|}t j ||}t j |rd|ddtffSqtD]2\}}}||} t j || }t j |rq qqq:qtt||dd} d|vrt|d  } t| jd} Wdn1sz0Yt||| d } | ||||ffS) Nz'name' must be a str, not {}z%'path' must be None or a list, not {}rGz.pyrrLr rWr5)encoding) isinstancestr TypeErrorrstypelist RuntimeErrorrr{r r}r'r0rIrprrAisfilerzrErHr r[tokenizedetect_encodingreadline) r!r0entryZpackage_directoryrZpackage_file_nameZ file_pathrYr file_namerrTr"r"r#rNsB     0rNcCs t|Sr) importlibreload)rkr"r"r#r2srcCs$z t|WStyYdS0dSr)rrHr r"r"r#r|=s  r|cCs0ddl}|j||}|jj|||d}t|S)Nr)r!rborigin)importlib.machineryrExtensionFileLoader ModuleSpecr)r!r0rTrrbrjr"r"r#ryJs ry)N)N)N)N)N):_imprrrrrrrr r r rHZimportlib._bootstrapr r rrZimportlib._bootstrap_externalrrrrrIr'rrr,warnDeprecationWarningZ SEARCH_ERRORr=r>r6Z PY_RESOURCErzr{r}ZPY_CODERESOURCEZIMP_HOOKr$r&r*r/r2rErFrRrer_rlrmrnrurrNrr|ryr"r"r"r# s^,          # 4