grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026o ®û|j«xã@sPdZddlZddlmZmZddlZddlZddlZddl Z ddl Z ddl Z ddl Z ddgZ ejZejdd…ZGdd„deƒZiZee ƒZdZd Zd ZGd d„dejƒZed d d feddd fddfZdd„Zdd„Zdd„Zdd„ZdZ da!dd„Z"dd„Z#dd „Z$d!d"„Z%ee%j&ƒZ'd#d$„Z(d%d&„Z)d'd(„Z*d)d*„Z+d+d,„Z,d-d.„Z-dS)/aPzipimport provides support for importing Python modules from Zip archives. This module exports three objects: - zipimporter: a class; its constructor takes a path to a Zip archive. - ZipImportError: exception raised by zipimporter objects. It's a subclass of ImportError, so it can be caught as ImportError, too. - _zip_directory_cache: a dict, mapping archive paths to zip directory info dicts, as used in zipimporter._files. It is usually not needed to use the zipimport module explicitly; it is used by the builtin import mechanism for sys.path items that are paths to Zip archives. éN)Ú_unpack_uint16Ú_unpack_uint32ÚZipImportErrorÚ zipimporteréc@s eZdZdS)rN)Ú__name__Ú __module__Ú __qualname__©r r ú0/opt/alt/python310/lib64/python3.10/zipimport.pyr"sésPKiÿÿc@s~eZdZdZdd„Zddd„Zddd„Zdd d „Zd d „Zd d„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zdd„ZdS)raÿzipimporter(archivepath) -> zipimporter object Create a new zipimporter instance. 'archivepath' must be a path to a zipfile, or to a specific path inside a zipfile. For example, it can be '/tmp/myimport.zip', or '/tmp/myimport.zip/mydirectory', if mydirectory is a valid directory inside the archive. 'ZipImportError is raised if 'archivepath' doesn't point to a valid Zip archive. The 'archive' attribute of zipimporter objects contains the name of the zipfile targeted. c Cs$t|tƒsddl}| |¡}|std|d�‚tr| tt¡}g} zt  |¡}Wn#t t fyKt  |¡\}}||krBtd|d�‚|}|  |¡Ynw|jd@dkrYtd|d�‚nq!zt|}Wntyrt|ƒ}|t|<Ynw||_||_tj|ddd…Ž|_|jr�|jt7_dSdS) Nrzarchive path is empty©ÚpathTznot a Zip fileiði€éÿÿÿÿ)Ú isinstanceÚstrÚosÚfsdecoderÚ alt_path_sepÚreplaceÚpath_sepÚ_bootstrap_externalÚ _path_statÚOSErrorÚ ValueErrorÚ _path_splitÚappendÚst_modeÚ_zip_directory_cacheÚKeyErrorÚ_read_directoryÚ_filesÚarchiveÚ _path_joinÚprefix)Úselfrrr$ÚstÚdirnameÚbasenameÚfilesr r r Ú__init__@sD     ù ð   þÿzzipimporter.__init__NcCsZt dt¡t||ƒ}|dur|gfSt||ƒ}t||ƒr)d|j›t›|›�gfSdgfS)a/find_loader(fullname, path=None) -> self, str or None. Search for a module specified by 'fullname'. 'fullname' must be the fully qualified (dotted) module name. It returns the zipimporter instance itself if the module was found, a string containing the full path name if it's possibly a portion of a namespace package, or None otherwise. The optional 'path' argument is ignored -- it's there for compatibility with the importer protocol. Deprecated since Python 3.10. Use find_spec() instead. zfzipimporter.find_loader() is deprecated and slated for removal in Python 3.12; use find_spec() insteadN)Ú _warningsÚwarnÚDeprecationWarningÚ_get_module_infoÚ_get_module_pathÚ_is_dirr"r)r%ÚfullnamerÚmiÚmodpathr r r Ú find_loaderns þ   zzipimporter.find_loadercCst dt¡| ||¡dS)aËfind_module(fullname, path=None) -> self or None. Search for a module specified by 'fullname'. 'fullname' must be the fully qualified (dotted) module name. It returns the zipimporter instance itself if the module was found, or None if it wasn't. The optional 'path' argument is ignored -- it's there for compatibility with the importer protocol. Deprecated since Python 3.10. Use find_spec() instead. zfzipimporter.find_module() is deprecated and slated for removal in Python 3.12; use find_spec() insteadr)r+r,r-r4)r%r1rr r r Ú find_module“s þzzipimporter.find_modulecCslt||ƒ}|durtj|||d�St||ƒ}t||ƒr4|j›t›|›�}tj|ddd�}|j  |¡|SdS)zkCreate a ModuleSpec for the specified module. Returns None if the module cannot be found. N)Ú is_packageT)ÚnameÚloaderr6) r.Ú _bootstrapÚspec_from_loaderr/r0r"rÚ ModuleSpecÚsubmodule_search_locationsr)r%r1ÚtargetÚ module_infor3rÚspecr r r Ú find_spec£s   ÿ zzipimporter.find_speccCst||ƒ\}}}|S)z¦get_code(fullname) -> code object. Return the code object for the specified module. Raise ZipImportError if the module couldn't be imported. ©Ú_get_module_code©r%r1ÚcodeÚ ispackager3r r r Úget_code¾szzipimporter.get_codecCsptr| tt¡}|}| |jt¡r|t|jtƒd…}z|j|}Wn ty1tdd|ƒ‚wt |j|ƒS)zšget_data(pathname) -> string with file data. Return the data associated with 'pathname'. Raise OSError if the file wasn't found. NrÚ) rrrÚ startswithr"Úlenr!rrÚ _get_data)r%ÚpathnameÚkeyÚ toc_entryr r r Úget_dataÈs   ÿ zzipimporter.get_datacCst||ƒ\}}}|S)z¥get_filename(fullname) -> filename string. Return the filename for the specified module or raise ZipImportError if it couldn't be imported. rArCr r r Ú get_filenameÝszzipimporter.get_filenamecCs~t||ƒ}|durtd|›�|d�‚t||ƒ}|r t |d¡}n|›d�}z|j|}Wn ty6YdSwt|j|ƒ  ¡S)zýget_source(fullname) -> source string. Return the source code for the specified module. Raise ZipImportError if the module couldn't be found, return None if the archive does contain the module, but has no source for it. Núcan't find module ©r7ú __init__.pyú.py) r.rr/rr#r!rrJr"Údecode)r%r1r2rÚfullpathrMr r r Ú get_sourceés    þzzipimporter.get_sourcecCs(t||ƒ}|durtd|›�|d�‚|S)z«is_package(fullname) -> bool. Return True if the module specified by fullname is a package. Raise ZipImportError if the module couldn't be found. NrPrQ)r.r)r%r1r2r r r r6s zzipimporter.is_packagec Csüd}t |t¡t||ƒ\}}}tj |¡}|dust|tƒs(t|ƒ}|tj|<||_ z*|r>t ||ƒ}t   |j |¡}|g|_t|dƒsFt|_t  |j||¡t||jƒWntj|=‚ztj|}Wntyttd|›d�ƒ‚wt d||¡|S)a@load_module(fullname) -> module. Load the module specified by 'fullname'. 'fullname' must be the fully qualified (dotted) module name. It returns the imported module, or raises ZipImportError if it could not be imported. Deprecated since Python 3.10. Use exec_module() instead. zrzipimport.zipimporter.load_module() is deprecated and slated for removal in Python 3.12; use exec_module() insteadNÚ __builtins__zLoaded module z not found in sys.moduleszimport {} # loaded from Zip {})r+r,r-rBÚsysÚmodulesÚgetrÚ _module_typeÚ __loader__r/rr#r"Ú__path__ÚhasattrrWÚ_fix_up_moduleÚ__dict__ÚexecrÚ ImportErrorr9Ú_verbose_message) r%r1ÚmsgrDrEr3ÚmodrrUr r r Ú load_modules6      ÿzzipimporter.load_modulecCs@z | |¡s WdSWn tyYdSwddlm}|||ƒS)zÌReturn the ResourceReader for a package in a zip file. If 'fullname' is a package within the zip file, return the 'ResourceReader' object for the package. Otherwise return None. Nr)Ú ZipReader)r6rÚimportlib.readersrg)r%r1rgr r r Úget_resource_reader;s ÿ ÿ  zzipimporter.get_resource_readercCsHzt|jƒ|_|jt|j<WdSty#t |jd¡i|_YdSw)z)Reload the file data of the archive path.N)r r"r!rrÚpop©r%r r r Úinvalidate_cachesJs   þzzipimporter.invalidate_cachescCsd|j›t›|j›d�S)Nz)r"rr$rkr r r Ú__repr__Tszzipimporter.__repr__©N)rrr Ú__doc__r*r4r5r@rFrNrOrVr6rfrirlrmr r r r r.s . %    + z __init__.pycTrRF)z.pycTF)rSFFcCs|j| d¡dS)NÚ.é)r$Ú rpartition)r%r1r r r r/fsr/cCs|t}||jvSrn)rr!)r%rÚdirpathr r r r0js r0cCs8t||ƒ}tD]\}}}||}||jvr|SqdSrn)r/Ú_zip_searchorderr!)r%r1rÚsuffixÚ isbytecoderErUr r r r.ss  ÿr.c Cszt |¡}Wntytd|›�|d�‚w|��T| ¡}�z@z| t d¡| ¡}| t¡}WntyDtd|›�|d�‚wt|ƒtkrTtd|›�|d�‚|dd…t krÏz | dd¡| ¡}Wntyxtd|›�|d�‚wt |t tdƒ}z | |¡| ¡}Wnty�td|›�|d�‚w|  t ¡}|dkr°td|›�|d�‚|||t…}t|ƒtkrÇtd|›�|d�‚|t|ƒ|}t |d d …ƒ} t |d d …ƒ} || krìtd |›�|d�‚|| krùtd |›�|d�‚|| 8}|| } | dk�rtd|›�|d�‚i} d} z| |¡Wnt�y+td|›�|d�‚w | d¡}t|ƒdk�r=tdƒ‚|dd…dk�rH�nt|ƒdk�rStdƒ‚t|dd…ƒ}t|dd …ƒ}t|d d…ƒ}t|dd …ƒ}t |d d …ƒ}t |d d…ƒ}t |dd…ƒ}t|dd…ƒ}t|dd…ƒ}t|dd…ƒ}t |dd…ƒ}|||} || k�r¿td|›�|d�‚|| 7}z| |¡}Wnt�yÛtd|›�|d�‚wt|ƒ|k�rìtd|›�|d�‚zt| | |¡ƒ| |k�rtd|›�|d�‚Wnt�ytd|›�|d�‚w|d@�r!| ¡}nz| d¡}Wnt�y:| d¡ t¡}Ynw| d t¡}t ||¡}||||||||f}|| |<| d!7} �q-W| |¡n| |¡wWdƒn 1�sswYt d"| |¡| S)#Nzcan't open Zip file: r rqúcan't read Zip file: érznot a Zip file: zcorrupt Zip file: é éézbad central directory size: zbad central directory offset: z&bad central directory size or offset: Té.úEOF read where not expectedsPKéé ééééé é"é*zbad local header offset: iÚasciiÚlatin1ú/rz!zipimport: found {} names in {!r})Ú_ioÚ open_coderrÚtellÚseekÚEND_CENTRAL_DIR_SIZEÚreadrIÚSTRING_END_ARCHIVEÚmaxÚMAX_COMMENT_LENÚrfindrÚEOFErrorrrTÚUnicodeDecodeErrorÚ translateÚ cp437_tablerrrr#r9rc)r"ÚfpÚ start_offsetÚheader_positionÚbufferÚ file_sizeÚmax_comment_startÚdataÚposÚ header_sizeÚ header_offsetÚ arc_offsetr)ÚcountÚflagsÚcompressÚtimeÚdateÚcrcÚ data_sizeÚ name_sizeÚ extra_sizeÚ comment_sizeÚ file_offsetr7rÚtr r r r ’sô ÿ ÿ     ÿÿÿÿ    ÿÿ  ÿ  ÿ ÿ   ÿÿÿ  ÿ  Ê2�tr u¾  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿âŒ�¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗â•�╜╛â”�└┴┬├─┼╞╟╚╔╩╦╠â•�╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌â–�▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√â�¿Â²â– Â cCsjtr t d¡tdƒ‚dazzddlm}Wnty&t d¡tdƒ‚wWdandawt d¡|S)Nzzipimport: zlib UNAVAILABLEú)can't decompress data; zlib not availableTr©Ú decompressFzzipimport: zlib available)Ú_importing_zlibr9rcrÚzlibr±Ú Exceptionr°r r r Ú_get_decompress_func7s   þÿ  rµc Csx|\}}}}}}}} |dkrtdƒ‚t |¡��} z|  |¡Wnty/td|›�|d�‚w|  d¡} t| ƒdkr?tdƒ‚| dd…dkrPtd |›�|d�‚t| d d …ƒ} t| d d…ƒ} d| | }||7}z|  |¡Wnty�td|›�|d�‚w|  |¡}t|ƒ|kr‘td ƒ‚Wdƒn1s›wY|dkr¦|Szt ƒ}Wn t y¶td ƒ‚w||dƒS)Nrznegative data sizerwr rƒr}rxsPKzbad local file header: ér‚zzipimport: can't read datar¯iñÿÿÿ) rrŠr‹r�rr�rIr”rrµr´)r"rMÚdatapathr¥r©rœr­r¦r§r¨r˜r›rªr«r Úraw_datar±r r r rJLsH  ÿ    ÿ  ÿé  ÿ rJcCst||ƒdkS)Nr)Úabs)Út1Út2r r r Ú _eq_mtimezsr¼cCsþ||dœ}t |||¡}|d@dk}|r?|d@dk}tjdkr>|s&tjdkr>t||ƒ} | dur>t tj| ¡} t || ||¡n(t||ƒ\} } | rgt t |dd…ƒ| ƒr]t |dd …ƒ| krgt   d |›�¡dSt  |d d…¡} t| tƒs}td |›d �ƒ‚| S) N)r7rrrrqÚneverÚalwaysr~ryrzzbytecode is stale for zcompiled module z is not a code object)rÚ _classify_pycÚ_impÚcheck_hash_based_pycsÚ_get_pyc_sourceÚ source_hashÚ_RAW_MAGIC_NUMBERÚ_validate_hash_pycÚ_get_mtime_and_size_of_sourcer¼rr9rcÚmarshalÚloadsrÚ _code_typeÚ TypeError)r%rKrUr1ržÚ exc_detailsr¤Ú hash_basedÚ check_sourceÚ source_bytesrÃÚ source_mtimeÚ source_sizerDr r r Ú_unmarshal_code‚sDþ   ÿ  þÿ€ÿÿ rÑcCs| dd¡}| dd¡}|S)Ns ó ó )r)Úsourcer r r Ú_normalize_line_endings¯s  rÕcCst|ƒ}t||ddd�S)NraT)Ú dont_inherit)rÕÚcompile)rKrÔr r r Ú_compile_source¶srØc CsDt |d?d|d?d@|d@|d?|d?d@|d@dd d d f ¡S) Né i¼éééé é?rqr)r¦Úmktime)Údr®r r r Ú_parse_dostime¼s    ùrác Csnz)|dd…dvs J‚|dd…}|j|}|d}|d}|d}t||ƒ|fWStttfy6YdSw)Nr©ÚcÚorÚéé)rr)r!rárÚ IndexErrorrÊ)r%rrMr¦r§Úuncompressed_sizer r r rÆÉs  ÿrÆcCsP|dd…dvs J‚|dd…}z|j|}Wn ty!YdSwt|j|ƒS)Nrrâ)r!rrJr")r%rrMr r r rÂÜs  ÿ rÂc Cst||ƒ}d}tD]f\}}}||}tjd|jt|dd�z|j|}Wn ty-Yq w|d} t|j|ƒ} d} |r[z t || ||| ƒ} Wnt yZ} z| }WYd} ~ n d} ~ wwt | | ƒ} | dureq |d} | || fS|r~d|›�} t | |d�|‚t d|›�|d�‚)Nz trying {}{}{}rq)Ú verbosityrzmodule load failed: rQrP) r/rtr9rcr"rr!rrJrÑrbrØr)r%r1rÚ import_errorrurvrErUrMr3ržrDÚexcrdr r r rBës:  ÿ €ÿ  rB).roÚ_frozen_importlib_externalrrrÚ_frozen_importlibr9rÀrŠrÇrXr¦r+Ú__all__rÚpath_separatorsrrbrrÚtyper[rŽr�r’Ú _LoaderBasicsrrtr/r0r.r r—r²rµrJr¼rÑÚ__code__rÉrÕrØrárÆrÂrBr r r r Ús\ 2 ü  þ. (