grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026o ®û|jÀ9ã@s ddlZddlZddlZddlZddlZddlZejdedd�gd¢ZGdd„de ƒZ dZ dZ d Z d Zd ZGd d „d ƒZdd„ZGdd„dƒZejdd„ƒZGdd„dƒZGdd„dƒZGdd„dƒZdd„ZGdd„dƒZGdd„dƒZGd d!„d!ƒZd"d#„ZdS)$éNzthe binhex module is deprecatedé)Ú stacklevel)ÚbinhexÚhexbinÚErrorc@s eZdZdS)rN)Ú__name__Ú __module__Ú __qualname__©r r ú-/opt/alt/python310/lib64/python3.10/binhex.pyr%sréi€é@ó�c@seZdZdd„ZdS)ÚFInfocCsd|_d|_d|_dS)Nz????r)ÚTypeÚCreatorÚFlags©Úselfr r r Ú__init__6s zFInfo.__init__N)rrr rr r r r r5s rcCsˆtƒ}t |d¡�}| d¡}d|vrd|_| dd¡| ¡}Wdƒn1s*wYtj  |¡\}}|  ddd¡}|||dfS) NÚrbirZTEXTrú:ú-r ) rÚioÚopenÚreadrÚseekÚtellÚosÚpathÚsplitÚreplace)ÚnameÚfinfoÚfpÚdataZdsizeÚdirÚfiler r r Ú getfileinfo;s   ú r(c@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) ÚopenrsrccGódS©Nr ©rÚargsr r r rIózopenrsrc.__init__cGsdS©Nór r,r r r rLr.z openrsrc.readcGr*r+r r,r r r ÚwriteOr.zopenrsrc.writecCr*r+r rr r r ÚcloseRr.zopenrsrc.closeN)rrr rrr1r2r r r r r)Hs  r)ccsD�t ¡�t ddt¡dVWdƒdS1swYdS)NÚignoreÚ)ÚwarningsÚcatch_warningsÚfilterwarningsÚDeprecationWarningr r r r Ú_ignore_deprecation_warningXs € "þr9c@ó.eZdZ dd„Zdd„Zdd„Zdd„Zd S) Ú_HqxcoderenginecCs ||_d|_d|_td|_dS)Nr0r )Úofpr%ÚhqxdataÚLINELENÚlinelen©rr<r r r rbsz_Hqxcoderengine.__init__cCsŽ|j||_t|jƒ}|dd}|jd|…}|j|d…|_|s$dStƒ�|jt |¡|_Wdƒn1s;wY| d¡dS)Nér)r%Úlenr9r=ÚbinasciiÚb2a_hqxÚ_flush)rr%ZdatalenZtodor r r r1hs   ÿz_Hqxcoderengine.writecCsˆd}|t|jƒ|jkr-||j}|j |j||…d¡t|_|}|t|jƒ|jks |j|d…|_|rB|j |jd¡dSdS)Nró s: )rBr=r?r<r1r>)rZforceÚfirstZlastr r r rEts üÿz_Hqxcoderengine._flushcCs\|jr tƒ�|jt |j¡|_Wdƒn1swY| d¡|j ¡|`dS)Nr )r%r9r=rCrDrEr<r2rr r r r2sÿ  z_Hqxcoderengine.closeN)rrr rr1rEr2r r r r r;_s  r;c@ó&eZdZ dd„Zdd„Zdd„ZdS)Ú_RlecoderenginecCó||_d|_dSr/)r<r%r@r r r rŠó z_Rlecoderengine.__init__cCsf|j||_t|jƒtkrdStƒ�t |j¡}Wdƒn1s#wY|j |¡d|_dSr/)r%rBÚREASONABLY_LARGEr9rCÚ rlecode_hqxr<r1)rr%Úrledatar r r r1Žs ÿ  z_Rlecoderengine.writecCsV|jr"tƒ�t |j¡}Wdƒn1swY|j |¡|j ¡|`dSr+)r%r9rCrMr<r1r2)rrNr r r r2—sÿ  z_Rlecoderengine.closeN)rrr rr1r2r r r r rI‡s  rIc@óLeZdZdd„Zdd„Zdd„Zdd„Zd d „Zd d „Zd d„Z dd„Z dS)ÚBinHexc Cs˜|\}}}}d}t|tƒr|}t |d¡}d}z*| d¡t|ƒ} t| ƒ|_d|_|dur0t ƒ}||_ ||_ |  ||¡t |_WdS|rK| ¡‚)NFÚwbTs0(This file must be converted with BinHex 4.0) :r)Ú isinstanceÚstrrrr1r;rIr<ÚcrcrÚdlenÚrlenÚ _writeinfoÚ _DID_HEADERÚstater2) rZname_finfo_dlen_rlenr<r"r#rUrVZclose_on_errorZofnameZhqxerr r r r s*       zBinHex.__init__c Cs´t|ƒ}|dkr tdƒ‚t|gƒ| d¡d}|j|j}}t|tƒr)| d¡}t|tƒr3| d¡}||}t  d|j ¡}t  d|j |j ¡} |||| } |  | ¡| ¡dS)Né?zFilename too longzlatin-1óú>hz>ii)rBrÚbytesÚencoderrrRrSÚstructÚpackrrUrVÚ_writeÚ _writecrc) rr"r#ÚnlÚdÚtpZcrZd2Zd3Zd4Úinfor r r rW·s      zBinHex._writeinfocCs t ||j¡|_|j |¡dSr+)rCÚcrc_hqxrTr<r1©rr%r r r raÊsz BinHex._writecCs4|jdkrd}nd}|j t ||j¡¡d|_dS)Nrr\z>H)rTr<r1r_r`)rZfmtr r r rbÎs  zBinHex._writecrccCs0|jtkr tdƒ‚|jt|ƒ|_| |¡dS)NzWriting data at the wrong time)rYrXrrUrBrarhr r r r1Øs z BinHex.writecCs,|jdkr td|jfƒ‚| ¡t|_dS)NrzIncorrect data size, diff=%r)rUrrVrbÚ _DID_DATArYrr r r Ú close_dataÞs  zBinHex.close_datacCsB|jtkr | ¡|jtkrtdƒ‚|jt|ƒ|_| |¡dS)Nz'Writing resource data at the wrong time)rYrirjrrVrBrarhr r r Ú write_rsrcäs  zBinHex.write_rsrccCsŽ|jdurdSz2|jtkr| ¡|jtkrtdƒ‚|jdkr'td|jfƒ‚| ¡Wd|_|j}|`| ¡dSd|_|j}|`| ¡w)NzClose at the wrong timerz$Incorrect resource-datasize, diff=%r)rYrirjrrVrbr<r2r@r r r r2ìs$      ý z BinHex.closeN) rrr rrWrarbr1rjrkr2r r r r rPŸs  rPcCs¢ t|ƒ}t||ƒ}t |d¡�} | d¡}|sn| |¡q| ¡Wdƒn1s.wYt|dƒ} | d¡}|sAn| |¡q9|  ¡|  ¡dS)NrTéô) r(rPrrrr1rjr)rkr2)ÚinpÚoutr#r<Úifprdr r r rýs&   ý ú   ý rc@rH)Ú_HqxdecoderenginecCrJ)Nr)roÚeof©rror r r rrKz_Hqxdecoderengine.__init__cCsÞ d}|}|dkrm|jr|S|ddd}|j |¡} ztƒ�t |¡\}|_Wdƒn1s4wYWntjyDYnw|j d¡}|sQtdƒ‚||}q||}|t|ƒ}|si|jsitdƒ‚|dks |S) Nr0rrrAéTr zPremature EOF on binhex file) rqrorr9rCZa2b_hqxZ IncompleterrB)rZtotalwtdZdecdataÚwtdr%Z decdatacurÚnewdatar r r rs6  ÿÿ ö  éz_Hqxdecoderengine.readcCó|j ¡dSr+©ror2rr r r r2:óz_Hqxdecoderengine.closeN)rrr rrr2r r r r rps  !rpc@r:) Ú_RledecoderenginecCs||_d|_d|_d|_dS)Nr0r)roÚ pre_bufferÚ post_bufferrqrrr r r r@s z_Rledecoderengine.__init__cCsD|t|jƒkr| |t|jƒ¡|jd|…}|j|d…|_|Sr+)rBr{Ú_fill)rrtÚrvr r r rFs z_Rledecoderengine.readcCs@|j|j |d¡|_|jjr2tƒ�|jt |j¡|_Wdƒn1s(wYd|_dSt|jƒ}|jdd…t dt krI|d}n,|jdd…t krW|d}n|jdd…t dkrg|d}n|jdd…t krqn|d }tƒ�|jt |jd|…¡|_Wdƒn1s‘wY|j|d…|_dS) Nrsr0éýÿÿÿr[rAéÿÿÿÿréþÿÿÿr ) rzrorrqr9r{rCZ rledecode_hqxrBÚRUNCHAR)rrtZmarkr r r r|Ms2 ÿÿ    ÿÿz_Rledecoderengine._fillcCrvr+rwrr r r r2rrxz_Rledecoderengine.closeN)rrr rrr|r2r r r r ry=s  %ryc@rO)ÚHexBincCsht|tƒr t |d¡} | d¡}|stdƒ‚|dkrq |dkr!nq t|ƒ}t|ƒ|_d|_ |  ¡dS)NrTr zNo binhex data foundrFó:r) rRrSrrrrrpryrorTÚ _readheader)rroZchZhqxifpr r r rvs   ÷  zHexBin.__init__cCs |j |¡}t ||j¡|_|Sr+)rorrCrgrT)rrBr%r r r Ú_readŒs z HexBin._readcCsNt d|j d¡¡dd@}|jd@|_||jkr"td|j|fƒ‚d|_dS)Nr\rriÿÿzCRC error, computed %x, read %x)r_ÚunpackrorrTr)rZfilecrcr r r Ú _checkcrc‘s  ÿ zHexBin._checkcrccCs¾| d¡}| t|ƒ¡}| d¡}| ¡|dd…}|dd…}t d|dd…¡d}t d|dd …¡d|_t d|d d…¡d|_||_tƒ|_||j_ ||j_ ||j_ t |_ dS) Nr ééé r\é rz>lé)r…Úordr‡r_r†rUrVÚFNamerrrrrXrY)rrBZfnameÚrestÚtypeZcreatorÚflagsr r r r„›s     zHexBin._readheadercGst|jtkr tdƒ‚|r|d}t||jƒ}n|j}d}t|ƒ|kr2|| |t|ƒ¡}t|ƒ|ks!|j||_|S)NzRead data at wrong timerr0)rYrXrÚminrUrBr…)rÚnr}r r r r¯s   ÿ z HexBin.readcCs6|jtkr tdƒ‚|jr| |j¡}| ¡t|_dS)Nzclose_data at wrong time)rYrXrrUr…r‡ri©rZdummyr r r rj½s   zHexBin.close_datacGsZ|jtkr | ¡|jtkrtdƒ‚|r|d}t||jƒ}n|j}|j||_| |¡S)Nz Read resource data at wrong timer)rYrXrjrirr’rVr…)rr“r r r Ú read_rsrcÅs    zHexBin.read_rsrccCsR|jdurdSz|jr| |j¡}| ¡Wd|_|j ¡dSd|_|j ¡wr+)rYrVr•r‡ror2r”r r r r2Òs   ÿ z HexBin.closeN) rrr rr…r‡r„rrjr•r2r r r r r‚us  r‚cCsÀ t|ƒ}|j}|s |j}t |d¡�} | d¡}|sn| |¡qWdƒn1s-wY| ¡| d¡}|rZt |dƒ}| |¡ | d¡}|sPn| |¡qH|  ¡|  ¡dS)NrQTrl) r‚rrŽrrrr1rjr•r)r2)rmrnror#r<rdr r r rÝs2  ýü     ý r)rCÚ contextlibrrr_r5Úwarnr8Ú__all__Ú ExceptionrrXrirLr>r�rr(r)Úcontextmanagerr9r;rIrPrrpryr‚rr r r r Ús<ÿ  (^+8 h