/snap/core22/2411/usr/lib/python3.10/__pycache__
NameSizeModeActions
abc.cpython-310.pyc67510644editdlrm
aifc.cpython-310.pyc246850644editdlrm
antigravity.cpython-310.pyc8220644editdlrm
argparse.cpython-310.pyc635390644editdlrm
ast.cpython-310.pyc557390644editdlrm
asynchat.cpython-310.pyc70250644editdlrm
asyncore.cpython-310.pyc160020644editdlrm
base64.cpython-310.pyc171620644editdlrm
bdb.cpython-310.pyc258320644editdlrm
binhex.cpython-310.pyc128700644editdlrm
bisect.cpython-310.pyc25880644editdlrm
bz2.cpython-310.pyc108700644editdlrm
calendar.cpython-310.pyc263030644editdlrm
cgi.cpython-310.pyc267230644editdlrm
cgitb.cpython-310.pyc99980644editdlrm
chunk.cpython-310.pyc48600644editdlrm
cmd.cpython-310.pyc127070644editdlrm
code.cpython-310.pyc99570644editdlrm
codecs.cpython-310.pyc332190644editdlrm
codeop.cpython-310.pyc55950644editdlrm
colorsys.cpython-310.pyc32650644editdlrm
compileall.cpython-310.pyc127330644editdlrm
configparser.cpython-310.pyc454580644editdlrm
contextlib.cpython-310.pyc208950644editdlrm
contextvars.cpython-310.pyc2460644editdlrm
copy.cpython-310.pyc69960644editdlrm
copyreg.cpython-310.pyc46830644editdlrm
cProfile.cpython-310.pyc51130644editdlrm
crypt.cpython-310.pyc35500644editdlrm
csv.cpython-310.pyc117980644editdlrm
dataclasses.cpython-310.pyc265780644editdlrm
datetime.cpython-310.pyc565330644editdlrm
decimal.cpython-310.pyc3620644editdlrm
difflib.cpython-310.pyc589050644editdlrm
dis.cpython-310.pyc156560644editdlrm
doctest.cpython-310.pyc761750644editdlrm
enum.cpython-310.pyc260630644editdlrm
filecmp.cpython-310.pyc87490644editdlrm
fileinput.cpython-310.pyc140720644editdlrm
fnmatch.cpython-310.pyc42440644editdlrm
fractions.cpython-310.pyc186000644editdlrm
ftplib.cpython-310.pyc289770644editdlrm
functools.cpython-310.pyc283350644editdlrm
genericpath.cpython-310.pyc39070644editdlrm
getopt.cpython-310.pyc63390644editdlrm
getpass.cpython-310.pyc42100644editdlrm
gettext.cpython-310.pyc182210644editdlrm
glob.cpython-310.pyc58520644editdlrm
graphlib.cpython-310.pyc76160644editdlrm
gzip.cpython-310.pyc185460644editdlrm
hashlib.cpython-310.pyc68450644editdlrm
heapq.cpython-310.pyc138650644editdlrm
hmac.cpython-310.pyc69730644editdlrm
imaplib.cpython-310.pyc424320644editdlrm
imghdr.cpython-310.pyc39050644editdlrm
imp.cpython-310.pyc97860644editdlrm
inspect.cpython-310.pyc851530644editdlrm
io.cpython-310.pyc36630644editdlrm
ipaddress.cpython-310.pyc626700644editdlrm
keyword.cpython-310.pyc9270644editdlrm
linecache.cpython-310.pyc41420644editdlrm
locale.cpython-310.pyc461540644editdlrm
lzma.cpython-310.pyc121000644editdlrm
mailbox.cpython-310.pyc600910644editdlrm
mailcap.cpython-310.pyc73200644editdlrm
mimetypes.cpython-310.pyc176190644editdlrm
modulefinder.cpython-310.pyc161660644editdlrm
netrc.cpython-310.pyc39330644editdlrm
nntplib.cpython-310.pyc316230644editdlrm
ntpath.cpython-310.pyc147040644editdlrm
nturl2path.cpython-310.pyc17470644editdlrm
numbers.cpython-310.pyc118660644editdlrm
opcode.cpython-310.pyc54470644editdlrm
operator.cpython-310.pyc135080644editdlrm
optparse.cpython-310.pyc477540644editdlrm
os.cpython-310.pyc315990644editdlrm
pathlib.cpython-310.pyc420520644editdlrm
pdb.cpython-310.pyc474400644editdlrm
pickle.cpython-310.pyc468820644editdlrm
pickletools.cpython-310.pyc677600644editdlrm
pipes.cpython-310.pyc77690644editdlrm
pkgutil.cpython-310.pyc183610644editdlrm
platform.cpython-310.pyc274290644editdlrm
plistlib.cpython-310.pyc237650644editdlrm
poplib.cpython-310.pyc136700644editdlrm
posixpath.cpython-310.pyc105600644editdlrm
pprint.cpython-310.pyc178750644editdlrm
profile.cpython-310.pyc143910644editdlrm
pstats.cpython-310.pyc236210644editdlrm
pty.cpython-310.pyc41430644editdlrm
pyclbr.cpython-310.pyc97750644editdlrm
pydoc.cpython-310.pyc856450644editdlrm
py_compile.cpython-310.pyc73390644editdlrm
queue.cpython-310.pyc107920644editdlrm
quopri.cpython-310.pyc57940644editdlrm
random.cpython-310.pyc227480644editdlrm
re.cpython-310.pyc142270644editdlrm
reprlib.cpython-310.pyc52500644editdlrm
rlcompleter.cpython-310.pyc59540644editdlrm
runpy.cpython-310.pyc94110644editdlrm
sched.cpython-310.pyc61150644editdlrm
secrets.cpython-310.pyc21750644editdlrm
selectors.cpython-310.pyc171050644editdlrm
shelve.cpython-310.pyc94920644editdlrm
shlex.cpython-310.pyc77820644editdlrm
shutil.cpython-310.pyc385360644editdlrm
signal.cpython-310.pyc29350644editdlrm
site.cpython-310.pyc179220644editdlrm
sitecustomize.cpython-310.pyc2250644editdlrm
smtpd.cpython-310.pyc261470644editdlrm
smtplib.cpython-310.pyc357660644editdlrm
sndhdr.cpython-310.pyc69620644editdlrm
socket.cpython-310.pyc289630644editdlrm
socketserver.cpython-310.pyc253470644editdlrm
sre_compile.cpython-310.pyc151940644editdlrm
sre_constants.cpython-310.pyc63570644editdlrm
sre_parse.cpython-310.pyc217550644editdlrm
ssl.cpython-310.pyc452710644editdlrm
stat.cpython-310.pyc42730644editdlrm
statistics.cpython-310.pyc370510644editdlrm
string.cpython-310.pyc71020644editdlrm
stringprep.cpython-310.pyc170750644editdlrm
struct.cpython-310.pyc3070644editdlrm
subprocess.cpython-310.pyc447410644editdlrm
sunau.cpython-310.pyc164820644editdlrm
symtable.cpython-310.pyc128350644editdlrm
sysconfig.cpython-310.pyc181510644editdlrm
tabnanny.cpython-310.pyc69500644editdlrm
tarfile.cpython-310.pyc706740644editdlrm
telnetlib.cpython-310.pyc185060644editdlrm
tempfile.cpython-310.pyc273390644editdlrm
textwrap.cpython-310.pyc138120644editdlrm
this.cpython-310.pyc12640644editdlrm
threading.cpython-310.pyc449690644editdlrm
timeit.cpython-310.pyc117690644editdlrm
token.cpython-310.pyc27380644editdlrm
tokenize.cpython-310.pyc171940644editdlrm
trace.cpython-310.pyc198700644editdlrm
traceback.cpython-310.pyc217120644editdlrm
tracemalloc.cpython-310.pyc175250644editdlrm
tty.cpython-310.pyc10790644editdlrm
turtle.cpython-310.pyc1288570644editdlrm
types.cpython-310.pyc95250644editdlrm
typing.cpython-310.pyc852770644editdlrm
uu.cpython-310.pyc38670644editdlrm
uuid.cpython-310.pyc224980644editdlrm
warnings.cpython-310.pyc136460644editdlrm
wave.cpython-310.pyc175940644editdlrm
weakref.cpython-310.pyc203430644editdlrm
webbrowser.cpython-310.pyc170000644editdlrm
xdrlib.cpython-310.pyc78800644editdlrm
zipapp.cpython-310.pyc60130644editdlrm
zipfile.cpython-310.pyc618450644editdlrm
zipimport.cpython-310.pyc170330644editdlrm
_aix_support.cpython-310.pyc28790644editdlrm
_bootsubprocess.cpython-310.pyc22940644editdlrm
_collections_abc.cpython-310.pyc329250644editdlrm
_compat_pickle.cpython-310.pyc58720644editdlrm
_compression.cpython-310.pyc45120644editdlrm
_distutils_system_mod.cpython-310.pyc54220644editdlrm
_markupbase.cpython-310.pyc75720644editdlrm
_osx_support.cpython-310.pyc115350644editdlrm
_pydecimal.cpython-310.pyc1577360644editdlrm
_pyio.cpython-310.pyc736540644editdlrm
_py_abc.cpython-310.pyc46830644editdlrm
_sitebuiltins.cpython-310.pyc35470644editdlrm
_strptime.cpython-310.pyc159450644editdlrm
_sysconfigdata__linux_x86_64-linux-gnu.cpython-310.pyc353850644editdlrm
_sysconfigdata__x86_64-linux-gnu.cpython-310.pyc353790644editdlrm
_threading_local.cpython-310.pyc65390644editdlrm
_weakrefset.cpython-310.pyc76080644editdlrm
__future__.cpython-310.pyc41310644editdlrm
__phello__.foo.cpython-310.pyc1300644editdlrm
Edit: /snap/core22/2411/usr/lib/python3.10/__pycache__/pkgutil.cpython-310.pyc (18361B)
o `wi`@sldZddlmZddlmZddlZddlZddlZddl Z ddl Z ddl Z ddl m Z ddlZgdZeddZd e_d d Zd d Zd.ddZd/ddZed0ddZd0ddZeejjeddZGdddZGdddZzddlZddlmZd0ddZeeeWn e yYnwd d!Z!d0d"d#Z"d$d%Z#d&d'Z$d(d)Z%d*d+Z&da'd,d-Z(dS)1zUtilities to support packages.) namedtuple)singledispatchN) ModuleType) get_importeriter_importers get_loader find_loader walk_packages iter_modulesget_data ImpImporter ImpLoader read_code extend_path ModuleInforzmodule_finder name ispkgz.A namedtuple with minimal info about a module.cCsJz|j}W||Sty$||}|durYdStj||YSw)z'Return the finder-specific module spec.N) find_specAttributeError find_module importlibutilspec_from_loader)findernamerloaderr/usr/lib/python3.10/pkgutil.py _get_specs rcCs6ddl}|d}|tjjkrdS|d||S)Nr )marshalreadrr MAGIC_NUMBERload)streamrmagicrrrr(s     rc #sifddt||D]V}|V|jrbzt|jWn%ty-|dur+||jYq ty@|dur=||jnYq wttj|jddpLg}fdd|D}t ||jd|EdHq dS)aYields ModuleInfo for all modules recursively on path, or, if path is None, all accessible modules. 'path' should be either None or a list of paths to look for modules in. 'prefix' is a string to output on the front of every module name on output. Note that this function must import all *packages* (NOT all modules!) on the given path, in order to access the __path__ attribute to find submodules. 'onerror' is a function which gets called with one argument (the name of the package which was being imported) if any exception occurs while trying to import a package. If no onerror function is supplied, ImportErrors are caught and ignored, while all other exceptions are propagated, terminating the search. Examples: # list all modules python can access walk_packages() # list all submodules of ctypes walk_packages(ctypes.__path__, ctypes.__name__+'.') cSs||vrdSd||<dS)NTr)pmrrrseenRs zwalk_packages..seenN__path__csg|]}|s|qSrr).0r&r(rr isz!walk_packages...) r ispkg __import__r ImportError Exceptiongetattrsysmodulesr )pathprefixonerrorinforr+rr 5s,     r ccsr|dur t}nt|trtdtt|}i}|D]}t||D]\}}||vr5d||<t|||Vq"qdS)aYields ModuleInfo for all submodules on path, or, if path is None, all top-level modules on sys.path. 'path' should be either None or a list of paths to look for modules in. 'prefix' is a string to output on the front of every module name on output. Nz9path must be None or list of paths to look for modules in)r isinstancestr ValueErrormapriter_importer_modulesr)r5r6 importersyieldedirr.rrrr ns   r cCst|dsgS||S)Nr )hasattrr )importerr6rrrr>s  r>c c"|jdus tj|jsdSi}ddl}zt|j}Wn ty(g}Ynw||D]_}||}|dks>||vr?q/tj|j|}d}|s}tj|r}d|vr}|}zt|} Wn tyig} Ynw| D]}||} | dkr{d}nqlq/|rd|vrd||<|||fVq/dSNr__init__Fr-Tr9 r5osisdirinspectlistdirOSErrorsort getmodulenamejoin) rCr6r@rJ filenamesfnmodnamer5r. dircontentssubnamerrr_iter_file_finder_modulesH     rUcCsDttdttdaWddS1swYdS)Nignoreimp)warningscatch_warnings simplefilterDeprecationWarningr import_modulerXrrrr _import_imps   "r^c@s.eZdZdZd ddZd ddZd dd ZdS) r aPEP 302 Finder that wraps Python's "classic" import algorithm ImpImporter(dirname) produces a PEP 302 finder that searches that directory. ImpImporter(None) produces a PEP 302 finder that searches the current sys.path, plus any modules that are frozen or built-in. Note that ImpImporter does not currently support being used by placement on sys.meta_path. NcCstdtt||_dSNz[This emulation is deprecated and slated for removal in Python 3.12; use 'importlib' instead)rYwarnr\r^r5)selfr5rrrrFs  zImpImporter.__init__cCs~|dd}||kr|jdurdS|jdurd}ntj|jg}z t||\}}}Wn ty7YdSwt||||S)Nr-)splitr5rHrealpathrXrr0r )rafullnamer5rTfilefilenameetcrrrrs  zImpImporter.find_moduler%c crDrErG) rar6r@rJrPrQrRr5r.rSrTrrrr rVzImpImporter.iter_modulesNr%)__name__ __module__ __qualname____doc__rFrr rrrrr s  r c@sneZdZdZdZZddZddZddZd d Z d d Z d dZ dddZ dddZ ddZdddZdS)r zBPEP 302 Loader that wraps Python's "classic" import algorithm NcCs.tdtt||_||_||_||_dSr_)rYr`r\r^rfrgrerh)rarerfrgrhrrrrFs zImpLoader.__init__cCsJ|zt||j|j|j}W|jr|j|S|jr$|jwwri)_reopenrX load_modulerfrgrhclose)raremodrrrrps  zImpLoader.load_modulecCs6t|d }|WdS1swYdS)Nrb)openr )rapathnamerfrrrr 's $zImpLoader.get_datacCsb|jr+|jjr-|jd}|tjkrt|jd|_dS|tjtjfvr/t|jd|_dSdSdSdS)Nrrs) rfclosedrhrX PY_SOURCErtrg PY_COMPILED C_EXTENSION)ramod_typerrrro+s  zImpLoader._reopencCs2|dur |j}|S||jkrtd|j|f|S)Nz,Loader for module %s cannot handle module %s)rer0rarerrr _fix_name3s zImpLoader._fix_namecCs||}|jdtjkSNrv)r~rhrX PKG_DIRECTORYr}rrr is_package;s zImpLoader.is_packagecCs||}|jdurO|jd}|tjkr$||}t||jd|_|jS|tjkrC| zt |j |_W|j |jS|j w|tj krO||_|jS)Nrvexec)r~coderhrXry get_sourcecompilergrzrorrfrqr _get_delegateget_code)rarer|sourcerrrr?s"        zImpLoader.get_codecCs||}|jdurn|jd}|tjkr.|z|j|_W|j|jS|jw|tj krbt j |j ddr_t|j ddd}||_Wd|jS1sZwY|jS|tjkrn||_|jS)Nrvrbrw)r~rrhrXryrorfr rqrzrHr5existsrgrtrrr)rarer|frrrrPs*         zImpLoader.get_sourcecCst|j}t|d}|jS)NrF)r rgrr)rarspecrrrrbs  zImpLoader._get_delegatecCsH||}|jd}|tjkr|S|tjtjtjfvr"|j SdSr) r~rhrXrr get_filenameryrzr{rg)rarer|rrrrgs    zImpLoader.get_filenameri)rkrlrmrnrrrFrpr ror~rrrrrrrrrr s    r ) zipimporterc csttj|j}|j}t|}i}ddl}|D]\}||s q||dt j }t|dkrL|ddrL|d|vrLd||d<||ddfVt|dkrSq| |d}|dkr_q|rtd|vrt||vrtd||<||dfVqdS) Nrrvr9z __init__.pyTrFr-F) sorted zipimport_zip_directory_cachearchiver6lenrJ startswithrcrHseprN) rCr6dirlist_prefixplenr@rJrQrRrrriter_zipimport_modulesus0    rc Cshztj|}W|Sty3tjD]}z||}tj||WY|Sty-Yqwd}Y|Sw)zRetrieve a finder for the given path item The returned finder is cached in sys.path_importer_cache if it was newly created by a path hook. The cache (or part of it) can be cleared manually if a rescan of sys.path_hooks is necessary. N)r3path_importer_cacheKeyError path_hooks setdefaultr0) path_itemrC path_hookrrrrs    rccs|drd|}t|d|vr,|dd}t|}t|dd}|dur+dSn tjEdHtj }|D]}t |Vq7dS)aYield finders for the given module name If fullname contains a '.', the finders will be for the package containing fullname, otherwise they will be all registered top level finders (i.e. those on both sys.meta_path and sys.path_hooks). If the named module is in a package, that package is imported as a side effect of invoking this function. If no module name is specified, all top level finders are produced. r-'Relative module name {!r} not supportedrr)N) rformatr0 rpartitionrr]r2r3 meta_pathr5r)remsgpkg_namepkgr5itemrrrrs      rcCst|tjvrtj|}|durdSt|tr4|}t|dd}|dur#|St|dddur-dS|j}t|S|}t|S)zGet a "loader" object for module_or_name Returns None if the module cannot be found or imported. If the named module is not already imported, its containing package (if any) is imported, in order to establish the package __path__. N __loader____spec__)r3r4r:rr2rkr)module_or_namemodulerrerrrrs    rc Cs||drd|}t|ztj|}Wnttttfy4}zd}t||t |||d}~ww|dur<|j SdS)zFind a "loader" object for fullname This is a backwards compatibility wrapper around importlib.util.find_spec that converts most failures to ImportError and only returns the loader rather than the full spec r-rz,Error while finding loader for {!r} ({}: {})N) rrr0rrrr TypeErrorr<typer)rerrexrrrrs  rc Cst|ts|S|d}|dd}|d\}}}|r1ztj|j}Wnttfy0|YSwtj}|D]}t|t s>q6t |}|durvg} t |dr\| |} | dur[| j pZg} n t |drh||\}} | D] } | |vru|| qjtj||} tj| rzt| } Wnty}ztjd| |fWYd}~q6d}~ww| | D]}|d}|r|drq||qWdn1swYq6|S) aExtend a package's path. Intended use is to place the following code in a package's __init__.py: from pkgutil import extend_path __path__ = extend_path(__path__, __name__) This will add to the package's __path__ all subdirectories of directories on sys.path named after the package. This is useful if one wants to distribute different parts of a single logical package as multiple directories. It also looks for *.pkg files beginning where * matches the name argument. This feature is similar to *.pth files (see site.py), except that it doesn't special-case lines starting with 'import'. A *.pkg file is trusted at face value: apart from checking for duplicates, all entries found in a *.pkg file are added to the path, regardless of whether they are exist the filesystem. (This is a feature.) If the input path is not a list (as is the case for frozen packages) it is returned unchanged. The input path is not modified; an extended copy is returned. Items are only appended to the copy at the end. It is assumed that sys.path is a sequence. Items of sys.path that are not (unicode or 8-bit) strings referring to existing directories are ignored. Unicode items of sys.path that cause errors when used as filenames may cause this function to raise an exception (in line with os.path.isdir() behavior). z.pkgNr-rrzCan't open %s: %s  #)r:listrr3r4r)rrr5r;rrBrsubmodule_search_locationsrappendrHrOisfilertrLstderrwriterstripr)r5r sname_pkgparent_package_ final_name search_pathdirrportionsrportionpkgfilerrlinerrrrsb !           rcCstj|}|dur dS|j}|dust|dsdStj|p%tj |}|dus/t|ds1dS| d}| dt j |jt j j|}||S)afGet a resource from a package. This is a wrapper round the PEP 302 loader get_data API. The package argument should be the name of a package, in standard module format (foo.bar). The resource argument should be in the form of a relative filename, using '/' as the path separator. The parent directory name '..' is not allowed, and nor is a rooted name (starting with a '/'). The function returns a binary string, which is the contents of the specified resource. For packages located in the filesystem, which have already been imported, this is the rough equivalent of d = os.path.dirname(sys.modules[package].__file__) data = open(os.path.join(d, resource), 'rb').read() If the package cannot be located or loaded, or it uses a PEP 302 loader which does not support get_data(), then None is returned. Nr __file__/r)rrrrrBr3r4get _bootstrap_loadrcinsertrHr5dirnamerrOr )packageresourcerrrrparts resource_namerrrr Ws      r c Cstdurddl}d}|d|d|d|jat|}|s&td||}|drEt |d }|d }|rB| d ng}n6| d }| d}t |}|r{|d}|d |} zt | }| d| }Wn t yxYnw|sV|} |D]}t | |} q| S) a Resolve a name to an object. It is expected that `name` will be a string in one of the following formats, where W is shorthand for a valid Python identifier and dot stands for a literal period in these pseudo-regexes: W(.W)* W(.W)*:(W(.W)*)? The first form is intended for backward compatibility only. It assumes that some part of the dotted name is a package, and the rest is an object somewhere within that package, possibly nested inside other objects. Because the place where the package stops and the object hierarchy starts can't be inferred by inspection, repeated attempts to import must be done with this form. In the second form, the caller makes the division point clear through the provision of a single colon: the dotted name to the left of the colon is a package to be imported, and the dotted name to the right is the object hierarchy within that package. Only one import is needed in this form. If it ends with the colon, then a module object is returned. The function will return an object (which might be a module), or raise one of the following exceptions: ValueError - if `name` isn't in a recognised format ImportError - if an import failed when it shouldn't have AttributeError - if a failure occurred when traversing the object hierarchy within the imported package to get to the desired object. Nrz(?!\d)(\w+)(\.(?!\d)(\w+))*z ^(?Pz)(?P:(?Pz)?)?$zinvalid format: clnrobjr-) _NAME_PATTERNrerUNICODEmatchr< groupdictrrr]rcpopr0r2) rr dotted_wordsr'gdrrrrRr&sresultrrr resolve_namesD!            r)Nr%N)Nr%rj))rn collectionsr functoolsr simplegenericrimportlib.utilimportlib.machineryrHos.pathr3typesrrY__all__rrrr r r>rUregister machinery FileFinderr^r r rrrr0rrrrrr rrrrrrsV     9  (Kd    ^+