grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026o ®û|jqã@sr ddlZddlZddlZddlZddlZddlZddlmZej dvr+ddl m Z ndZ ddl Z ddl mZmZmZmZhd£ZeedƒrRe ej¡e ej¡dZeZeed ƒp^ejjZeZd6d d „Ze  d7dd„ƒZdd„Z ze j!Z!Wn e"yƒe Z!Ynwdd„Z#ze j$Z$Wne"yŸGdd„de%e&ƒZ$YnwGdd„dej'd�Z(e j( )e(¡Gdd„de(ƒZ*e j* )e*¡ddl+m,Z,e* )e,¡Gdd„de(ƒZ-e j- )e-¡Gd d!„d!e-ƒZ.Gd"d#„d#e-ƒZ/Gd$d%„d%e.ƒZ0Gd&d'„d'e.ƒZ1Gd(d)„d)e-ƒZ2Gd*d+„d+e1e0ƒZ3Gd,d-„d-e*ƒZ,Gd.d/„d/e(ƒZ4e j4 )e4¡Gd0d1„d1ej5ƒZ6Gd2d3„d3e4ƒZ7Gd4d5„d5e7ƒZ8dS)8éN)Ú allocate_lock>Zwin32Úcygwin)Úsetmode)Ú__all__ÚSEEK_SETÚSEEK_CURÚSEEK_END>rééÚ SEEK_HOLEi Zgettotalrefcountr cCs4 |durd}tjjrddl}| dt|d¡|S)NÚlocalerz"'encoding' argument not specified.r )ÚsysÚflagsÚwarn_default_encodingÚwarningsÚwarnÚEncodingWarning)ÚencodingÚ stacklevelr©rú,/opt/alt/python310/lib64/python3.10/_pyio.pyÚ text_encoding+s ÿrÚréÿÿÿÿTc Csr t|tƒs t |¡}t|tttfƒstd|ƒ‚t|tƒs$td|ƒ‚t|tƒs/td|ƒ‚|dur>t|tƒs>td|ƒ‚|durMt|tƒsMtd|ƒ‚t|ƒ}|tdƒs_t|ƒt|ƒkret d|ƒ‚d|v} d|v} d |v} d |v} d |v} d |v}d |v}d|vrž| s�| s�| s�| r‘t dƒ‚ddl }|  dt d¡d} |r¦|r¦t dƒ‚| | | | dkr´t dƒ‚| sÀ| sÀ| sÀ| sÀt dƒ‚|rÊ|durÊt dƒ‚|rÔ|durÔt dƒ‚|rÞ|durÞt dƒ‚|rï|dkrïddl }|  dt d¡t|| rõdpöd| rúdpûd| �rd �pd| �r d �p d| �rd �pd||d�}|}z•d}|dk�s-|dk�r1| ¡�r1d}d}|dk�rVt}z t | ¡¡j}Wn ttf�yNYnw|dk�rV|}|dk�r_t d ƒ‚|dk�rn|�rj|WSt d!ƒ‚| �rwt||ƒ}n| �s€| �s€| �r†t||ƒ}n| �r�t||ƒ}nt d"|ƒ‚|}|�r�|WSt|ƒ}t|||||ƒ}|}||_|WS| ¡‚)#Nzinvalid file: %rzinvalid mode: %rzinvalid buffering: %rúinvalid encoding: %rúinvalid errors: %rzaxrwb+tUÚxrÚwÚaú+ÚtÚbÚUz4mode U cannot be combined with 'x', 'w', 'a', or '+'rz'U' mode is deprecatedr Tz'can't have text and binary mode at oncer z)can't have read/write/append mode at oncez/must have exactly one of read/write/append modez-binary mode doesn't take an encoding argumentz+binary mode doesn't take an errors argumentz+binary mode doesn't take a newline argumentzaline buffering (buffering=1) isn't supported in binary mode, the default buffer size will be usedÚ)ÚopenerFrzinvalid buffering sizezcan't have unbuffered text I/Ozunknown mode: %r)Ú isinstanceÚintÚosÚfspathÚstrÚbytesÚ TypeErrorÚsetÚlenÚ ValueErrorrrÚDeprecationWarningÚRuntimeWarningÚFileIOÚisattyÚDEFAULT_BUFFER_SIZEÚfstatÚfilenoÚ st_blksizeÚOSErrorÚAttributeErrorÚBufferedRandomÚBufferedWriterÚBufferedReaderrÚ TextIOWrapperÚmodeÚclose)Úfiler=Ú bufferingrÚerrorsÚnewlineÚclosefdr$ZmodesZcreatingZreadingZwritingZ appendingZupdatingÚtextZbinaryrÚrawÚresultÚline_bufferingZbsÚbufferrrrÚopenHsÆ x         ÿ    þ  ÿþýüú ÿ       rIcCs" ddl}| dtd¡t|dƒS)Nrz(_pyio.open_code() may not be using hooksr Úrb)rrr0rI)ÚpathrrrrÚ_open_code_with_warning$s  ÿ rLcCs0|dkrddl}|jdtdd�tatSt|ƒ‚)NÚ OpenWrapperrz+OpenWrapper is deprecated, use open insteadr )r)rrr/rIrMr8)ÚnamerrrrÚ __getattr__:sÿrOc@s eZdZdS)ÚUnsupportedOperationN)Ú__name__Ú __module__Ú __qualname__rrrrrPOsrPc@sæeZdZ dd„Zd5dd„Zdd„Zd6d d „Zd d „Zd Zdd„Z dd„Z dd„Z d6dd„Z dd„Z d6dd„Zdd„Zd6dd„Zedd„ƒZd6d d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd7d+d,„Zd-d.„Zd/d0„Zd6d1d2„Zd3d4„ZdS)8ÚIOBasecCs td|jj|fƒ‚)Nz%s.%s() not supported)rPÚ __class__rQ)ÚselfrNrrrÚ _unsupportedus ÿzIOBase._unsupportedrcCó | d¡dS)NÚseek©rW©rVÚposÚwhencerrrrY|s z IOBase.seekcCs | dd¡S©Nrr )rY©rVrrrÚtellŒó z IOBase.tellNcCrX©NÚtruncaterZ©rVr\rrrrc�ózIOBase.truncatecCó | ¡dS©N©Ú _checkClosedr_rrrÚflushšs z IOBase.flushFcCs* |jsz | ¡Wd|_dSd|_wdS)NT)Ú_IOBase__closedrjr_rrrr>¤s  üz IOBase.closecCsV z|j}Wn tyYdSw|rdStr| ¡dSz| ¡WdSYdSrg)Úclosedr8Ú_IOBASE_EMITS_UNRAISABLEr>)rVrlrrrÚ__del__¯s  ý zIOBase.__del__cCó dS©NFrr_rrrÚseekableÊszIOBase.seekablecCó$ | ¡st|dur dƒ‚|ƒ‚dS)NzFile or stream is not seekable.)rqrP©rVÚmsgrrrÚ_checkSeekableÒóÿÿÿzIOBase._checkSeekablecCrorprr_rrrÚreadableÙózIOBase.readablecCrr)NzFile or stream is not readable.)rwrPrsrrrÚ_checkReadableàrvzIOBase._checkReadablecCrorprr_rrrÚwritableçrxzIOBase.writablecCrr)NzFile or stream is not writable.)rzrPrsrrrÚ_checkWritableîrvzIOBase._checkWritablecCó |jSrg)rkr_rrrrlõsz IOBase.closedcCs" |jrt|dur dƒ‚|ƒ‚dS©NúI/O operation on closed file.©rlr.rsrrrriýsÿÿÿzIOBase._checkClosedcCs | ¡|Srgrhr_rrrÚ __enter__szIOBase.__enter__cGrfrg)r>)rVÚargsrrrÚ__exit__ razIOBase.__exit__cCrX)Nr5rZr_rrrr5óz IOBase.filenocCs | ¡dSrprhr_rrrr2sz IOBase.isattyrcsÌ tˆdƒr‡‡fdd„}ndd„}ˆdurd‰nzˆj}Wnty,tˆ›d�ƒ‚w|ƒ‰tƒ}ˆdks=t|ƒˆkrbˆ |ƒ¡}|sJ t|ƒS||7}| d¡rX t|ƒSˆdks=t|ƒˆks=t|ƒS) NÚpeekcs>ˆ d¡}|s dS| d¡dpt|ƒ}ˆdkrt|ˆƒ}|S)Nr ó r)r„Úfindr-Úmin)Z readaheadÚn©rVÚsizerrÚ nreadahead0s  z#IOBase.readline..nreadaheadcSsdS©Nr rrrrrr‹9srú is not an integerrr…) ÚhasattrÚ __index__r8r+Ú bytearrayr-ÚreadÚendswithr*)rVrŠr‹Ú size_indexÚresr!rr‰rÚreadline$s0    ÿ ý ùzIOBase.readlinecCs | ¡|Srgrhr_rrrÚ__iter__NszIOBase.__iter__cCs| ¡}|st‚|Srg)r•Ú StopIteration©rVÚlinerrrÚ__next__RszIOBase.__next__cCsT |dus |dkr t|ƒSd}g}|D]}| |¡|t|ƒ7}||kr'|Sq|S©Nr)ÚlistÚappendr-)rVZhintrˆÚlinesr™rrrÚ readlinesXs  þzIOBase.readlinescCs" | ¡|D]}| |¡qdSrg)riÚwrite)rVržr™rrrÚ writelinesjs  ÿzIOBase.writelines©rrg©r)rQrRrSrWrYr`rcrjrkr>rnrqrurwryrzr{Úpropertyrlrir€r‚r5r2r•r–ršrŸr¡rrrrrTSs8           *  rT)Ú metaclassc@s0eZdZ d dd„Zdd„Zdd„Zdd „Zd S) Ú RawIOBasercCsR |durd}|dkr| ¡St| ¡ƒ}| |¡}|dur dS||d…=t|ƒS)Nrr)Úreadallr�r�Úreadintor*)rVrŠr!rˆrrrr‘…s   zRawIOBase.readcCs4 tƒ} | t¡}|s n||7}q|rt|ƒS|Srg)r�r‘r3r*)rVr”Údatarrrr§–s üzRawIOBase.readallcCrX)Nr¨rZ©rVr!rrrr¨¤rezRawIOBase.readintocCrX©Nr rZrªrrrr ¬rezRawIOBase.writeNr£)rQrRrSr‘r§r¨r rrrrr¦ws   r¦)r1c@sJeZdZ ddd„Zddd„Zdd„Zdd „Zd d „Zd d „Zdd„Z dS)ÚBufferedIOBasercCrX©Nr‘rZr‰rrrr‘ÊszBufferedIOBase.readcCrX)NÚread1rZr‰rrrr®ÞszBufferedIOBase.read1cCó |j|dd�S)NF©r®©Ú _readintorªrrrr¨äs zBufferedIOBase.readintocCr¯)NTr°r±rªrrrÚ readinto1òózBufferedIOBase.readinto1cCsVt|tƒs t|ƒ}| d¡}|r| t|ƒ¡}n| t|ƒ¡}t|ƒ}||d|…<|S©NÚB)r%Ú memoryviewÚcastr®r-r‘)rVr!r®r©rˆrrrr²ýs   zBufferedIOBase._readintocCrXr«rZrªrrrr  r´zBufferedIOBase.writecCrX©NÚdetachrZr_rrrrºózBufferedIOBase.detachNr£) rQrRrSr‘r®r¨r³r²r rºrrrrr¬¹s    r¬c@s¢eZdZ dd„Zd#dd„Zdd„Zd$d d „Zd d „Zd d„Zdd„Z dd„Z e dd„ƒZ e dd„ƒZ e dd„ƒZe dd„ƒZdd„Zdd„Zdd „Zd!d"„ZdS)%Ú_BufferedIOMixincCs ||_dSrg©Ú_raw©rVrErrrÚ__init__,ó z_BufferedIOMixin.__init__rcCs"|j ||¡}|dkrtdƒ‚|S)Nrz#seek() returned an invalid position)rErYr7)rVr\r]Z new_positionrrrrY1sz_BufferedIOMixin.seekcCs|j ¡}|dkr tdƒ‚|S)Nrz#tell() returned an invalid position)rEr`r7rdrrrr`7s z_BufferedIOMixin.tellNcCs4| ¡| ¡| ¡|dur| ¡}|j |¡Srg)rir{rjr`rErcrdrrrrc=s  z_BufferedIOMixin.truncatecCs|jrtdƒ‚|j ¡dS)Núflush on closed file)rlr.rErjr_rrrrjNsz_BufferedIOMixin.flushcCó>|jdur|jsz | ¡W|j ¡dS|j ¡wdSdSrg)rErlrjr>r_rrrr>Ss  ûz_BufferedIOMixin.closecCó*|jdur tdƒ‚| ¡|j}d|_|S)Nzraw stream already detached)rEr.rjr¾r¿rrrrº[ó z_BufferedIOMixin.detachcCó |j ¡Srg)rErqr_rrrrqerÁz_BufferedIOMixin.seekablecCó|jSrgr½r_rrrrEhóz_BufferedIOMixin.rawcCó|jjSrg)rErlr_rrrrllóz_BufferedIOMixin.closedcCrÉrg)rErNr_rrrrNprÊz_BufferedIOMixin.namecCrÉrg)rEr=r_rrrr=trÊz_BufferedIOMixin.modecCótd|jj›d�ƒ‚©Nzcannot pickle z object©r+rUrQr_rrrÚ __getstate__xóz_BufferedIOMixin.__getstate__cCsH|jj}|jj}z|j}Wntyd ||¡YSwd |||¡S)Nz<{}.{}>z<{}.{} name={!r}>)rUrRrSrNr8Úformat)rVÚmodnameZclsnamerNrrrÚ__repr__{s  ÿz_BufferedIOMixin.__repr__cCrÆrg)rEr5r_rrrr5‡rÁz_BufferedIOMixin.filenocCrÆrg)rEr2r_rrrr2ŠrÁz_BufferedIOMixin.isattyr¢rg)rQrRrSrÀrYr`rcrjr>rºrqr¤rErlrNr=rÎrÒr5r2rrrrr¼#s,        r¼cs”eZdZ dZd dd„Zdd„Zdd„Zdd „Z‡fd d „Zd!d d„Z d!dd„Z dd„Z d"dd„Z dd„Z d dd„Zdd„Zdd„Zdd„Z‡ZS)#ÚBytesIONcCs&tƒ}|dur ||7}||_d|_dSr›)r�Ú_bufferÚ_pos)rVZ initial_bytesÚbufrrrrÀ–s  zBytesIO.__init__cCs|jrtdƒ‚|j ¡S)Nz__getstate__ on closed file)rlr.Ú__dict__Úcopyr_rrrrÎ�s zBytesIO.__getstate__cCó |jrtdƒ‚t|jƒS)Nzgetvalue on closed file)rlr.r*rÔr_rrrÚgetvalue¢ó zBytesIO.getvaluecCrÙ)Nzgetbuffer on closed file)rlr.r·rÔr_rrrÚ getbuffer©rÛzBytesIO.getbuffercs"|jdur |j ¡tƒ ¡dSrg)rÔÚclearÚsuperr>r_©rUrrr>°s  z BytesIO.closercCs¤|jrtdƒ‚|durd}nz|j}Wnty!t|›d�ƒ‚w|ƒ}|dkr.t|jƒ}t|jƒ|jkr8dStt|jƒ|j|ƒ}|j|j|…}||_t |ƒS)Núread from closed filerr�ró) rlr.r�r8r+r-rÔrÕr‡r*)rVrŠr“Znewposr!rrrr‘µs$  ÿ z BytesIO.readcCs | |¡Srg)r‘r‰rrrr®Ês z BytesIO.read1cCs²|jrtdƒ‚t|tƒrtdƒ‚t|ƒ� }|j}Wdƒn1s"wY|dkr-dS|j}|t|j ƒkrGd|t|j ƒ}|j |7_ ||j |||…<|j|7_|S)Núwrite to closed fileú can't write str to binary streamró) rlr.r%r)r+r·ÚnbytesrÕr-rÔ)rVr!Zviewrˆr\Zpaddingrrrr Ïs   ÿz BytesIO.writercCs²|jrtdƒ‚z|j}Wntyt|›d�ƒ‚w|ƒ}|dkr3|dkr-td|fƒ‚||_|jS|dkrCtd|j|ƒ|_|jS|dkrUtdt|jƒ|ƒ|_|jStdƒ‚)Nzseek on closed filer�rúnegative seek position %rr r zunsupported whence value) rlr.r�r8r+rÕÚmaxr-rÔ)rVr\r]Ú pos_indexrrrrYâs(  ÿúüÿz BytesIO.seekcCó|jrtdƒ‚|jS)Nútell on closed file)rlr.rÕr_rrrr`÷óz BytesIO.tellcCsr|jrtdƒ‚|dur|j}n"z|j}Wnty"t|›d�ƒ‚w|ƒ}|dkr1td|fƒ‚|j|d…=|S)Nztruncate on closed filer�rznegative truncate position %r)rlr.rÕr�r8r+rÔ)rVr\rèrrrrcüs  ÿ zBytesIO.truncatecCó|jrtdƒ‚dS©Nr~Trr_rrrrw ózBytesIO.readablecCrìrírr_rrrrzrîzBytesIO.writablecCrìrírr_rrrrqrîzBytesIO.seekablergr£r¢)rQrRrSrÔrÀrÎrÚrÜr>r‘r®r rYr`rcrwrzrqÚ __classcell__rrrßrrÓŽs"      rÓc@sveZdZ efdd„Zdd„Zdd„Zddd „Zdd d „Zdd d„Z ddd„Z ddd„Z dd„Z dd„Z ddd„ZdS)r;cCsH | ¡s tdƒ‚t ||¡|dkrtdƒ‚||_| ¡tƒ|_dS)Nz "raw" argument must be readable.rúinvalid buffer size) rwr7r¼rÀr.Ú buffer_sizeÚ_reset_read_bufÚLockÚ _read_lock©rVrErñrrrrÀ(s  zBufferedReader.__init__cCrÆrg)rErwr_rrrrw5rÁzBufferedReader.readablecCsd|_d|_dS)Nrár)Ú _read_bufÚ _read_posr_rrrrò8s zBufferedReader._reset_read_bufNcCsN |dur |dkr tdƒ‚|j� | |¡WdƒS1s wYdS)Nrzinvalid number of bytes to read)r.rôÚ_read_unlockedr‰rrrr‘<s $ÿzBufferedReader.readc Cs„d}d}|j}|j}|dus|dkr^| ¡t|jdƒr5|j ¡}|dur-||d…p,dS||d…|S||d…g}d} |j ¡}||vrK|}n |t|ƒ7}| |¡q?d  |¡p]|St|ƒ|} || krw|j|7_||||…S||d…g}t |j |ƒ} | |kr¤|j | ¡}||vr•|}n| t|ƒ7} | |¡| |ksˆt || ƒ}d  |¡} | |d…|_d|_| rÀ| d|…S|S)Nrá)ráNrr§r) rör÷ròrŽrEr§r‘r-r�Újoinrçrñr‡) rVrˆZ nodata_valZ empty_valuesrÖr\ÚchunkZchunksZ current_sizeÚavailZwantedÚoutrrrrøIsR     ù     ú zBufferedReader._read_unlockedrcCs6 |j� | |¡WdƒS1swYdSrg)rôÚ_peek_unlockedr‰rrrr„}s$ÿzBufferedReader.peekcCsrt||jƒ}t|jƒ|j}||ks|dkr1|j|}|j |¡}|r1|j|jd…||_d|_|j|jd…Sr›)r‡rñr-rör÷rEr‘)rVrˆZwantZhaveZto_readZcurrentrrrrý‡s   zBufferedReader._peek_unlockedrcCsl |dkr|j}|dkrdS|j�| d¡| t|t|jƒ|jƒ¡WdƒS1s/wYdS)Nrrár )rñrôrýrør‡r-rör÷r‰rrrr®’s ÿ$þzBufferedReader.read1cCs| t|tƒs t|ƒ}|jdkrdS| d¡}d}|j�™|t|ƒkrŒtt|jƒ|jt|ƒƒ}|rT|j|j|j|…||||…<|j|7_||7}|t|ƒkrTn@t|ƒ||j kro|j   ||d…¡}|sjn2||7}n |rs|sy|  d¡syn+|r~|r~n.|t|ƒks"Wdƒ|SWdƒ|SWdƒ|SWdƒ|SWdƒ|SWdƒ|S1s·wY|S)Nrr¶r ) r%r·rår¸rôr-r‡rör÷rñrEr¨rý)rVrÖr®Úwrittenrûrˆrrrr²¤s^    ÿ   ä ÿâ ÿì õó îú çþ ãázBufferedReader._readintocCst |¡t|jƒ|jSrg)r¼r`r-rör÷r_rrrr`ÒszBufferedReader.tellcCsp|tvrtdƒ‚|j�#|dkr|t|jƒ|j8}t |||¡}| ¡|WdƒS1s1wYdS)Núinvalid whence valuer ) Úvalid_seek_flagsr.rôr-rör÷r¼rYròr[rrrrYÕs$ûzBufferedReader.seekrgr¢r£)rQrRrSr3rÀrwròr‘rør„rýr®r²r`rYrrrrr;s    4 .r;c@s^eZdZ efdd„Zdd„Zdd„Zddd „Zd d „Zd d „Z dd„Z ddd„Z dd„Z dS)r:cCsF| ¡stdƒ‚t ||¡|dkrtdƒ‚||_tƒ|_tƒ|_ dS)Nz "raw" argument must be writable.rrð) rzr7r¼rÀr.rñr�Ú _write_bufróÚ _write_lockrõrrrrÀès  zBufferedWriter.__init__cCrÆrg)rErzr_rrrrzórÁzBufferedWriter.writablec Cst|tƒr tdƒ‚|j�u|jrtdƒ‚t|jƒ|jkr |  ¡t|jƒ}|j  |¡t|jƒ|}t|jƒ|jkrxz|  ¡Wn7t yw}z+t|jƒ|jkrmt|jƒ|j}||8}|jd|j…|_t |j |j |ƒ‚WYd}~nd}~ww|WdƒS1s„wYdS)Nrãrâ)r%r)r+rrlr.r-rrñÚ_flush_unlockedÚextendÚBlockingIOErrorÚerrnoÚstrerror)rVr!ZbeforerþÚeZoveragerrrr ös0     ú€ÿ$ézBufferedWriter.writeNcCsP|j�| ¡|dur|j ¡}|j |¡WdƒS1s!wYdSrg)rrrEr`rcrdrrrrcs   $üzBufferedWriter.truncatecCs4|j� | ¡WdƒdS1swYdSrg)rrr_rrrrjs "ÿzBufferedWriter.flushcCsŒ|jrtdƒ‚|jrDz |j |j¡}Wn tytdƒ‚w|dur*ttjddƒ‚|t |jƒks5|dkr9t dƒ‚|jd|…=|js dSdS)NrÂzHself.raw should implement RawIOBase: it should not raise BlockingIOErrorz)write could not complete without blockingrz*write() returned incorrect number of bytes) rlr.rrEr rÚ RuntimeErrorrZEAGAINr-r7©rVrˆrrrrs" ÿþ ôzBufferedWriter._flush_unlockedcCst |¡t|jƒSrg)r¼r`r-rr_rrrr`.rÏzBufferedWriter.tellrcCsP|tvrtdƒ‚|j�| ¡t |||¡WdƒS1s!wYdS)Nrÿ)rr.rrr¼rYr[rrrrY1s  $þzBufferedWriter.seekcCs¼|j�|jdus |jr WdƒdSWdƒn1swYz | ¡W|j�|j ¡WdƒdS1s>wYdS|j� |j ¡Wdƒw1sXwYwrg)rrErlrjr>r_rrrr>8sþÿ  *ÿ ÿzBufferedWriter.closergr¢) rQrRrSr3rÀrzr rcrjrr`rYr>rrrrr:ßs     r:c@s„eZdZ efdd„Zddd„Zdd„Zdd „Zdd d „Zdd d„Z dd„Z dd„Z dd„Z dd„Z dd„Zdd„Zedd„ƒZdS) ÚBufferedRWPaircCs> | ¡s tdƒ‚| ¡stdƒ‚t||ƒ|_t||ƒ|_dS)Nz#"reader" argument must be readable.z#"writer" argument must be writable.)rwr7rzr;Úreaderr:Úwriter)rVr r rñrrrrÀXs zBufferedRWPair.__init__rcCs|durd}|j |¡S©Nr)r r‘r‰rrrr‘fs zBufferedRWPair.readcCó |j |¡Srg)r r¨rªrrrr¨kó zBufferedRWPair.readintocCrrg)r r rªrrrr nrzBufferedRWPair.writercCrrg)r r„r‰rrrr„qrzBufferedRWPair.peekcCrrg)r r®r‰rrrr®trzBufferedRWPair.read1cCrrg)r r³rªrrrr³wrzBufferedRWPair.readinto1cCrÆrg)r rwr_rrrrwzrÁzBufferedRWPair.readablecCrÆrg)r rzr_rrrrz}rÁzBufferedRWPair.writablecCrÆrg)r rjr_rrrrj€rÁzBufferedRWPair.flushcCs(z |j ¡W|j ¡dS|j ¡wrg)r r>r r_rrrr>ƒs zBufferedRWPair.closecCs|j ¡p |j ¡Srg)r r2r r_rrrr2‰rÏzBufferedRWPair.isattycCrÉrg)r rlr_rrrrlŒrÊzBufferedRWPair.closedNr£r¢)rQrRrSr3rÀr‘r¨r r„r®r³rwrzrjr>r2r¤rlrrrrr Hs     r c@sleZdZ efdd„Zddd„Zdd„Zdd d „Zdd d „Zd d„Z ddd„Z ddd„Z dd„Z dd„Z dS)r9cCs(| ¡t |||¡t |||¡dSrg)rur;rÀr:rõrrrrÀšszBufferedRandom.__init__rcCs®|tvrtdƒ‚| ¡|jr/|j�|j |jt|jƒd¡Wdƒn1s*wY|j ||¡}|j� |  ¡Wdƒn1sHwY|dkrUt dƒ‚|S)Nrÿr rz seek() returned invalid position) rr.rjrörôrErYr÷r-ròr7r[rrrrYŸsÿ ÿzBufferedRandom.seekcCs|jrt |¡St |¡Srg)rr:r`r;r_rrrr`°s  zBufferedRandom.tellNcCs|dur| ¡}t ||¡Srg)r`r:rcrdrrrrc¶s zBufferedRandom.truncatecCs |durd}| ¡t ||¡Sr)rjr;r‘r‰rrrr‘¼s zBufferedRandom.readcCó| ¡t ||¡Srg)rjr;r¨rªrrrr¨Âó zBufferedRandom.readintocCrrg)rjr;r„r‰rrrr„ÆrzBufferedRandom.peekrcCrrg)rjr;r®r‰rrrr®ÊrzBufferedRandom.read1cCrrg)rjr;r³rªrrrr³ÎrzBufferedRandom.readinto1cCsZ|jr'|j�|j |jt|jƒd¡| ¡Wdƒn1s"wYt ||¡SrŒ) rörôrErYr÷r-ròr:r rªrrrr Òs  þ zBufferedRandom.writer¢rgr£)rQrRrSr3rÀrYr`rcr‘r¨r„r®r³r rrrrr9‘s       r9csìeZdZdZdZdZdZdZdZdZ d0dd„Z dd „Z d d „Z d d „Z dd„Zd1dd„Zd1dd„Zdd„Zdd„Zdd„Zefdd„Zdd„Zd1dd„Z‡fd d!„Zd"d#„Zd$d%„Zd&d'„Zd(d)„Zd*d+„Zed,d-„ƒZed.d/„ƒZ ‡Z!S)2r1rFNTrc Cs0 |jdkrz|jrt |j¡Wd|_nd|_wt|tƒr"tdƒ‚t|tƒr2|}|dkr1tdƒ‚nd}t|t ƒs@td|fƒ‚t |ƒt dƒksOtd|fƒ‚t dd„|Dƒƒd ksa|  d ¡d kretd ƒ‚d |vrvd |_ d |_tjtjB}n(d|vr€d |_d}nd|vrŽd |_tjtjB}nd|vržd |_d |_tjtjB}d |vr¨d |_d |_|jr´|jr´|tjO}n|jr½|tjO}n|tjO}|ttddƒO}ttddƒpÕttddƒ}||O}d}z¨|dk�r|sètdƒ‚|durôt ||d¡}n|||ƒ}t|tƒ�stdƒ‚|dk�r tdƒ‚|}|�st |d¡||_t |¡} zt | j¡�r2t t!j"t #t!j"¡|ƒ‚Wn t$�y=Ynwt| ddƒ|_%|j%d k�rNt&|_%t'�rWt'|tj(ƒ||_)|j�rƒz t *|dt+¡Wnt�y‚} z| j!t!j,k�rx‚WYd} ~ nd} ~ wwWn|du�r’t |¡‚||_dS)Nrrz$integer argument expected, got floatznegative file descriptorzinvalid mode: %szxrwab+css�|]}|dvVqdS)ZrwaxNr)Ú.0ÚcrrrÚ s€z"FileIO.__init__..r rzKMust have exactly one of create/read/write/append mode and at most one plusrTrrrÚO_BINARYZ O_NOINHERITÚ O_CLOEXECz'Cannot use closefd=False with file namei¶zexpected integer from openerzNegative file descriptorFr6)-Ú_fdÚ_closefdr'r>r%Úfloatr+r&r.r)r,ÚsumÚcountÚ_createdÚ _writableÚO_EXCLÚO_CREATÚ _readableÚO_TRUNCÚ _appendingÚO_APPENDÚO_RDWRÚO_RDONLYÚO_WRONLYÚgetattrrIr7Úset_inheritabler4ÚstatÚS_ISDIRÚst_modeÚIsADirectoryErrorrZEISDIRrr8Ú_blksizer3Ú_setmoderrNÚlseekrZESPIPE) rVr?r=rCr$ÚfdrZnoinherit_flagZowned_fdZfdfstatrrrrrÀäs¾  €  ÿ $       ÿ       ÿÿý   ÿ€ÿ€   zFileIO.__init__cCsN|jdkr!|jr#|js%ddl}|jd|ftd|d�| ¡dSdSdSdS)Nrzunclosed file %rr )rÚsource)rrrlrrÚResourceWarningr>)rVrrrrrn]sÿ  üzFileIO.__del__cCrËrÌrÍr_rrrrÎdrÏzFileIO.__getstate__cCsjd|jj|jjf}|jrd|Sz|j}Wnty*d||j|j|jfYSwd|||j|jfS)Nz%s.%sz <%s [closed]>z<%s fd=%d mode=%r closefd=%r>z<%s name=%r mode=%r closefd=%r>) rUrRrSrlrNr8rr=r)rVÚ class_namerNrrrrÒgsÿ  ÿÿÿzFileIO.__repr__cCó|jstdƒ‚dS)NzFile not open for reading)r!rPr_rrrryuóÿzFileIO._checkReadablecCr5)NzFile not open for writing)rrPrsrrrr{yr6zFileIO._checkWritablecCsP | ¡| ¡|dus|dkr| ¡Szt |j|¡WSty'YdSwr›)riryr§r'r‘rrr‰rrrr‘}s ÿz FileIO.readcCsä | ¡| ¡t}zt |jdt¡}t |j¡j}||kr%||d}Wn t y/Ynwt ƒ} t |ƒ|krEt |ƒ}|t |tƒ7}|t |ƒ}z t  |j|¡}Wntye|rbYt|ƒSYdSw|sm t|ƒS||7}q4r^)riryr3r'r0rrr4Úst_sizer7r�r-rçr‘rr*)rVÚbufsizer\ÚendrFrˆrúrrrr§�s@ € ÿ   ûýþózFileIO.readallcCs6 t|ƒ d¡}| t|ƒ¡}t|ƒ}||d|…<|Srµ)r·r¸r‘r-)rVr!Úmr©rˆrrrr¨°s  zFileIO.readintocCs8 | ¡| ¡zt |j|¡WStyYdSwrg)rir{r'r rrrªrrrr ¸s ÿz FileIO.writecCs, t|tƒr tdƒ‚| ¡t |j||¡S)Nzan integer is required)r%rr+rir'r0rr[rrrrYÆs  z FileIO.seekcCs | ¡t |jdt¡Sr›)rir'r0rrr_rrrr`Ösz FileIO.tellcCs4 | ¡| ¡|dur| ¡}t |j|¡|Srg)rir{r`r'Ú ftruncaterr‰rrrrcÝszFileIO.truncatecsL |js$z|jrt |j¡Wtƒ ¡dSWtƒ ¡dStƒ ¡wdSrg)rlrr'r>rrÞr_rßrrr>êsýûz FileIO.closecCsJ | ¡|jdur"z| ¡Wntyd|_Y|jSwd|_|jS)NFT)riÚ _seekabler`r7r_rrrrq÷s   üzFileIO.seekablecCó | ¡|jSrg)rir!r_rrrrwózFileIO.readablecCr=rg)rirr_rrrrzr>zFileIO.writablecCr=rg)rirr_rrrr5 r>z FileIO.filenocCs | ¡t |j¡Srg)rir'r2rr_rrrr2s z FileIO.isattycCr|rg)rr_rrrrCszFileIO.closefdcCsB |jr |jr dSdS|jr|jrdSdS|jr|jrdSdSdS)Nzxb+Zxbzab+Zabzrb+rJÚwb)rr!r#rr_rrrr=sz FileIO.mode)rTNrg)"rQrRrSrrr!rr#r<rrÀrnrÎrÒryr{r‘r§r¨r rrYr`rcr>rqrwrzr5r2r¤rCr=rïrrrßrr1Ûs> y  #      r1c@s^eZdZ ddd„Zdd„Zddd„Zd d „Zd d „Zed d„ƒZ edd„ƒZ edd„ƒZ dS)Ú TextIOBasercCrXr­rZr‰rrrr‘:szTextIOBase.readcCrXr«rZ)rVÚsrrrr DózTextIOBase.writeNcCrXrbrZrdrrrrcHrBzTextIOBase.truncatecCrX)Nr•rZr_rrrr•LrƒzTextIOBase.readlinecCrXr¹rZr_rrrrºSr»zTextIOBase.detachcCó dSrgrr_rrrr\szTextIOBase.encodingcCrCrgrr_rrrÚnewlinesaszTextIOBase.newlinescCrCrgrr_rrrrAkszTextIOBase.errorsr£rg) rQrRrSr‘r rcr•rºr¤rrDrArrrrr@2s     r@c@sReZdZ ddd„Zddd„Zdd„Zd d „Zd d „Zd ZdZ dZ e dd„ƒZ dS)ÚIncrementalNewlineDecoderÚstrictcCs,tjj||d�||_||_d|_d|_dS)N)rArF)ÚcodecsÚIncrementalDecoderrÀÚ translateÚdecoderÚseennlÚ pendingcr)rVrJrIrArrrrÀ|s  z"IncrementalNewlineDecoder.__init__FcCsÔ|jdur|}n|jj||d�}|jr|s|rd|}d|_| d¡r.|s.|dd…}d|_| d¡}| d¡|}| d¡|}|j|oH|j|oL|jB|oQ|jBO_|j rh|r`|  dd¡}|rh|  dd¡}|S)N©Úfinalú FrTú Ú ) rJÚdecoderLr’rrKÚ_LFÚ_CRÚ_CRLFrIÚreplace)rVÚinputrNÚoutputZcrlfZcrZlfrrrrRƒs*   ÿ  z IncrementalNewlineDecoder.decodecCs@|jdur d}d}n|j ¡\}}|dK}|jr|dO}||fS)Nrárr )rJÚgetstaterL)rVrÖÚflagrrrrY¢s z"IncrementalNewlineDecoder.getstatecCs<|\}}t|d@ƒ|_|jdur|j ||d?f¡dSdSrŒ)ÚboolrLrJÚsetstate)rVÚstaterÖrZrrrr\­s  ÿz"IncrementalNewlineDecoder.setstatecCs(d|_d|_|jdur|j ¡dSdS)NrF)rKrLrJÚresetr_rrrr^³s  ÿzIncrementalNewlineDecoder.resetr r écCs d|jS)N)NrQrO)rOrQrP)rQrP)rOrP)rOrQrP)rKr_rrrrD½søz"IncrementalNewlineDecoder.newlinesN)rF)F) rQrRrSrÀrRrYr\r^rSrTrUr¤rDrrrrrEus   rEc@s€eZdZ dZdZ  dNdd„Zdd„Z  dNdd „Zd d „Ze d d „ƒZ e dd„ƒZ e dd„ƒZ e dd„ƒZ e dd„ƒZddedddœdd„Zdd„Zdd„Zdd„Zdd „Zd!d"„Ze d#d$„ƒZe d%d&„ƒZd'd(„Zd)d*„Zd+d,„Zd-d.„Zd/d0„Zd1d2„ZdOd3d4„Zd5d6„Zd7d8„Z 9 9dPd:d;„Z!dd?„Z#dOd@dA„Z$dBdC„Z%dQdDdE„Z&dOdFdG„Z'dHdI„Z(dOdJdK„Z)e dLdM„ƒZ*dS)Rr<iNFc Cs0| |¡t|ƒ}|dkr$z t | ¡¡pd}Wn ttfy#Ynw|dkr?zddl}Wn ty9d}Ynw|  d¡}t |t ƒsJt d|ƒ‚t  |¡jsXd}t||ƒ‚|dur_d}nt |t ƒsjt d|ƒ‚trqt  |¡||_d |_d|_d|_|j ¡|_|_t|jd ƒ|_| |||||¡dS) Nr rúutf-8FrzG%r is not a text encoding; use codecs.open() to handle arbitrary codecsrFrr#r®)Ú_check_newlinerr'Údevice_encodingr5r8rPr Ú ImportErrorZgetpreferredencodingr%r)r.rGÚlookupÚ_is_text_encodingÚ LookupErrorÚ _CHECK_ERRORSÚ lookup_errorrÔÚ_decoded_charsÚ_decoded_chars_usedÚ _snapshotrHrqr<Ú_tellingrŽÚ _has_read1Ú _configure) rVrHrrArBrGÚ write_throughr rtrrrrÀësF ÿ  þ         ÿzTextIOWrapper.__init__cCs>|durt|tƒstdt|ƒfƒ‚|dvrtd|fƒ‚dS)Nzillegal newline type: %r)Nr#rQrOrPzillegal newline value: %r)r%r)r+Útyper.)rVrBrrrras ÿzTextIOWrapper._check_newlinecCs®||_||_d|_d|_d|_| |_|du|_||_|dk|_|p$t j |_ ||_ ||_ |jrQ| ¡rS|j ¡}|dkrUz | ¡ d¡WdStyPYdSwdSdSdS)Nçr#r)Ú _encodingÚ_errorsÚ_encoderÚ_decoderÚ _b2cratioÚ_readuniversalÚ_readtranslateÚ_readnlÚ_writetranslater'ÚlinesepÚ_writenlÚ_line_bufferingÚ_write_throughr<rzrHr`Ú _get_encoderr\rf)rVrrArBrGroÚpositionrrrrns,     þûzTextIOWrapper._configurecCs|d |jj|jj¡}z|j}Wn tyYnw|d |¡7}z|j}Wn ty.Ynw|d |¡7}|d |j¡S)Nz<{}.{}z name={0!r}z mode={0!r}z encoding={0!r}>)rÐrUrRrSrNr8r=r)rVrFrNr=rrrrÒBs ÿ  ÿ  ÿzTextIOWrapper.__repr__cCrÇrg)rrr_rrrrSrÈzTextIOWrapper.encodingcCrÇrg)rsr_rrrrAWrÈzTextIOWrapper.errorscCrÇrg)r}r_rrrrG[rÈzTextIOWrapper.line_bufferingcCrÇrg)r~r_rrrro_rÈzTextIOWrapper.write_throughcCrÇrg)rÔr_rrrrHcrÈzTextIOWrapper.buffer)rrArBrGrocCsØ |jdur|dus|dus|turtdƒ‚|dur%|dur"|j}nd}n t|tƒs0td|ƒ‚|dur8|j}n t|tƒsCtd|ƒ‚|turJ|j}|  |¡|durV|j }|dur]|j }|  ¡|  |||||¡dS)NzPIt is not possible to set the encoding or newline of stream after the first readrFrr)ruÚEllipsisrPrsr%r)r+rrryrarGrorjrn)rVrrArBrGrorrrÚ reconfiguregs8 ÿ      ÿzTextIOWrapper.reconfigurecCrér})rlr.r<r_rrrrq�rëzTextIOWrapper.seekablecCrÆrg)rHrwr_rrrrw•rÁzTextIOWrapper.readablecCrÆrg)rHrzr_rrrrz˜rÁzTextIOWrapper.writablecCs|j ¡|j|_dSrg)rHrjr<rlr_rrrrj›s  zTextIOWrapper.flushcCrÃrg)rHrlrjr>r_rrrr>Ÿs  üzTextIOWrapper.closecCrÉrg)rHrlr_rrrrl¦rÊzTextIOWrapper.closedcCrÉrg)rHrNr_rrrrNªrÊzTextIOWrapper.namecCrÆrg)rHr5r_rrrr5®rÁzTextIOWrapper.filenocCrÆrg)rHr2r_rrrr2±rÁzTextIOWrapper.isattycCsÊ |jrtdƒ‚t|tƒstd|jjƒ‚t|ƒ}|js|j o"d|v}|r4|jr4|j dkr4|  d|j ¡}|j p:|  ¡}| |¡}|j |¡|j rS|sOd|vrS| ¡| d¡d|_|jrc|j ¡|S)Nrâzcan't write %s to text streamrQrOr#)rlr.r%r)r+rUrQr-rzr}r|rVrtrÚencoderHr rjÚ_set_decoded_charsrkrur^)rVrAZlengthZhaslfÚencoderr!rrrr ´s* ÿ    zTextIOWrapper.writecCst |j¡}||jƒ|_|jSrg)rGÚgetincrementalencoderrrrsrt)rVZ make_encoderrrrrËs  zTextIOWrapper._get_encodercCs2t |j¡}||jƒ}|jrt||jƒ}||_|Srg)rGÚgetincrementaldecoderrrrsrwrErxru)rVZ make_decoderrJrrrÚ _get_decoderÐs   zTextIOWrapper._get_decodercCs ||_d|_dSr›)rirj)rVÚcharsrrrr„Ûs z TextIOWrapper._set_decoded_charscCsH |j}|dur|j|d…}n |j|||…}|jt|ƒ7_|Srg)rjrir-)rVrˆÚoffsetr‰rrrÚ_get_decoded_charsàsz TextIOWrapper._get_decoded_charscCs& |j|kr tdƒ‚|j|8_dS)Nz"rewind decoded_chars out of bounds)rjÚAssertionErrorr rrrÚ_rewind_decoded_charsês z#TextIOWrapper._rewind_decoded_charscCs¤ |jdur tdƒ‚|jr|j ¡\}}|jr|j |j¡}n|j |j¡}| }|j  ||¡}|  |¡|rBt |ƒt |j ƒ|_ nd|_ |jrO|||f|_| S)Nz no decoderrq)rur.rlrYrmrHr®Ú _CHUNK_SIZEr‘rRr„r-rirvrk)rVÚ dec_bufferÚ dec_flagsÚ input_chunkÚeofZ decoded_charsrrrÚ _read_chunkðs"  zTextIOWrapper._read_chunkrcCs(||d>B|d>B|d>Bt|ƒd>BS)Né@é€éÀé)r[)rVr€r�Ú bytes_to_feedÚneed_eofÚ chars_to_skiprrrÚ _pack_cookie s ÿ ÿzTextIOWrapper._pack_cookiecCsJt|dƒ\}}t|dƒ\}}t|dƒ\}}t|dƒ\}}|||t|ƒ|fS)Nl)Údivmodr[)rVZbigintÚrestr€r�r˜r™ršrrrÚ_unpack_cookie$ s zTextIOWrapper._unpack_cookiec Cs>|jstdƒ‚|jstdƒ‚| ¡|j ¡}|j}|dus#|jdur,|j r*t dƒ‚|S|j\}}|t |ƒ8}|j }|dkrD|  ||¡S| ¡}zÐt|j|ƒ}d}|dkr�| d|f¡t | |d|…¡ƒ} | |kr„| ¡\} } | s{| }|| 8}n|t | ƒ8}d}n||8}|d}|dksVd}| d|f¡||} |} |dkr¯|  | | ¡W| |¡Sd}d}d}t|t |ƒƒD]7}|d7}|t | |||d…¡ƒ7}| ¡\}}|sí||krí| |7} ||8}|dd} }}||krónq¼|t |jdd d �ƒ7}d }||k�r td ƒ‚|  | | |||¡W| |¡S| |¡w) Nú!underlying stream is not seekablez(telling position disabled by next() callzpending decoded textrr rár FTrMz'can't reconstruct logical file position)r<rPrlr7rjrHr`rurkrirŒr-rjr›rYr&rvr\rRÚrange)rVr€rJr�Z next_inputršZ saved_stateZ skip_bytesZ skip_backrˆr!ÚdÚ start_posZ start_flagsZ bytes_fedr™Z chars_decodedÚir�rrrr`+ s~      ï  æ  ÿ  ÿzTextIOWrapper.tellcCs$| ¡|dur | ¡}|j |¡Srg)rjr`rHrcrdrrrrcŽ s zTextIOWrapper.truncatecCrÄ)Nzbuffer is already detached)rHr.rjrÔ)rVrHrrrrº” rÅzTextIOWrapper.detachc s´‡fdd„}ˆjr tdƒ‚ˆjstdƒ‚|tkr'|dkr tdƒ‚d}ˆ ¡}n-|tkrT|dkr3tdƒ‚ˆ ¡ˆj  d|¡}ˆ  d¡dˆ_ ˆj rNˆj   ¡||ƒ|S|dkr_td |fƒ‚|dkrjtd |fƒ‚ˆ ¡ˆ |¡\}}}}} ˆj  |¡ˆ  d¡dˆ_ |dkr“ˆj r“ˆj   ¡nˆj sš|sš| r¯ˆj p ˆ ¡ˆ_ ˆj  d |f¡|d fˆ_ | rÔˆj |¡} ˆ  ˆj  | |¡¡|| fˆ_ tˆjƒ| krÑtd ƒ‚| ˆ_||ƒ|S) NcsL z ˆjpˆ ¡}Wn tyYdSw|dkr | d¡dS| ¡dSr›)rtrrfr\r^)r€r…r_rrÚ_reset_encoder� s þ z*TextIOWrapper.seek.._reset_encoderrêrŸrz#can't do nonzero cur-relative seeksz#can't do nonzero end-relative seeksr#zunsupported whence (%r)ræráz#can't restore logical file position)rlr.r<rPrr`rrjrHrYr„rkrur^ržrˆr\r‘rRr-rir7rj) rVZcookier]r¤r€r¢r�r˜r™ršr‘rr_rrYœ s`      ÿ      ÿ zTextIOWrapper.seekcCsÜ| ¡|dur d}nz|j}Wntyt|›d�ƒ‚w|ƒ}|jp(| ¡}|dkrE| ¡|j|j  ¡dd�}|  d¡d|_ |Sd}| |¡}t |ƒ|krl|sl|  ¡ }|| |t |ƒ¡7}t |ƒ|krl|rT|S)Nrr�rTrMr#F)ryr�r8r+rurˆr‹rRrHr‘r„rkr-r“)rVrŠr“rJrFr’rrrr‘ç s0  ÿÿ   þzTextIOWrapper.readcCs(d|_| ¡}|sd|_|j|_t‚|Srp)rlr•rkr<r—r˜rrrrš szTextIOWrapper.__next__c CsÔ|jrtdƒ‚|durd}nz|j}Wnty!t|›d�ƒ‚w|ƒ}| ¡}d}|js2| ¡d}} |jrN|  d|¡}|dkrI|d}nˆt |ƒ}nU|j r‘|  d|¡}|  d|¡}|dkro|dkrjt |ƒ}n9|d}nb|dkrx|d}nY||kr�|d}nP||dkrŒ|d }nE|d}n@|  |j ¡}|dkr£|t |j ƒ}n.|dkr°t |ƒ|kr°|}n!|  ¡r¼|jr¸n|  ¡s´|jrÆ|| ¡7}n | d ¡d|_|Sq7|dkrÛ||krÛ|}| t |ƒ|¡|d|…S) Nràrr�rTrQr rOr r#)rlr.r�r8r+r‹rurˆrxr†r-rwryr“rir„rkr�) rVrŠr“r™Ústartr\ÚendposZnlposZcrposrrrr• s|  ÿ       þ Â@ zTextIOWrapper.readlinecCs|jr|jjSdSrg)rurDr_rrrrDi szTextIOWrapper.newlines)NNNFFrg)rrFrr¢)+rQrRrSrŽrÔrÀrarnrÒr¤rrArGrorHr�r‚rqrwrzrjr>rlrNr5r2r rrˆr„r‹r�r“r›ržr`rcrºrYr‘ršr•rDrrrrr<Êsp ÿ- ÿ$      þ)    * ÿ  c  K ]r<csPeZdZ d‡fdd„ Zdd„Zdd„Zed d „ƒZed d „ƒZd d„Z ‡Z S)ÚStringIOr#rQcsjtt|ƒjtƒdd|d�|durd|_|dur3t|tƒs'td t |ƒj ¡ƒ‚|  |¡|  d¡dSdS)Nr`Ú surrogatepass)rrArBFz*initial_value must be str or None, not {0}r) rÞr§rÀrÓrzr%r)r+rÐrprQr rY)rVZ initial_valuerBrßrrrÀu sý  ÿ ûzStringIO.__init__c CsT| ¡|jp | ¡}| ¡}| ¡z|j|j ¡dd�W| |¡S| |¡w)NTrM) rjrurˆrYr^rRrHrÚr\)rVrJZ old_staterrrrÚ… szStringIO.getvaluecCs t |¡Srg)ÚobjectrÒr_rrrrÒ� s zStringIO.__repr__cCódSrgrr_rrrrA” ózStringIO.errorscCrªrgrr_rrrr˜ r«zStringIO.encodingcCs| d¡dSr¹rZr_rrrrºœ szStringIO.detach)r#rQ) rQrRrSrÀrÚrÒr¤rArrºrïrrrßrr§n s   r§)r )rrNNNTN)9r'ÚabcrGrr*r Ú_threadrróÚplatformZmsvcrtrr/ÚiorrrrrrŽÚaddr Ú SEEK_DATAr3rrÚdev_modermrgrÚ staticmethodrIrLÚ open_coder8rOrPr7r.ÚABCMetarTÚregisterr¦Ú_ior1r¬r¼rÓr;r:r r9r@rHrEr<r§rrrrÚsŒ       ÿ\  ÿ  ÿ # =   gkCiIJY @U)