+
    ÂHàj'  ã                  ó~   € ^ RI Ht ^ RIt^ RIHtHt Rt]'       d   ^ RIHt ^ RIH	t	H
t
  ! R R]],          4      tR# )	é    )ÚannotationsN)ÚIOÚAnyStrF)ÚIterable)ÚNoReturnÚSelfc                  ó4  € ] tR t^tRtR R ltR R ltR R lt]P                  3R R	 llt
R
 R ltR R ltR,R R lltR,R R lltR,R R lltR R ltR R ltR R ltR-R R lltR R ltR R  ltR! R" ltR# R$ ltR% R& ltR' R( ltR) R* ltR+tR# ).ÚContainerIOza
A file object that provides read access to a part of an existing
file (for example a TAR file).
c               ó(   € V ^8„  d   QhRRRRRRRR/# )é   Úfilez
IO[AnyStr]ÚoffsetÚintÚlengthÚreturnÚNone© )Úformats   "Ú‘/home/ubuntu/.hermes/installs/5f0a1ff4045d044e/environments/88679baa1dc64374a0cd943b62eeefb9/venv/lib/python3.14/site-packages/PIL/ContainerIO.pyÚ__annotate__ÚContainerIO.__annotate__!   s(   € ÷ ñ ˜Zð °ð ¸cð Àdñ ó    c                ón   € Wn         ^ V n        W n        W0n        V P                   P	                  V4       R# )z…
Create file object.

:param file: Existing file.
:param offset: Start of region, in bytes.
:param length: Size of region, in bytes.
N)ÚfhÚposr   r   Úseek)Úselfr   r   r   s   &&&&r   Ú__init__ÚContainerIO.__init__!   s*   € ð #ŒØˆŒØŒØŒØ�‰�‰�VÖr   c               ó   € V ^8„  d   QhRR/# ©r   r   Úboolr   )r   s   "r   r   r   2   s   € ÷ ñ ˜ñ r   c                	ó   € R # ©Fr   ©r   s   &r   ÚisattyÚContainerIO.isatty2   ó   € Ùr   c               ó   € V ^8„  d   QhRR/# r!   r   )r   s   "r   r   r   5   ó   € ÷ ñ ˜$ñ r   c                	ó   € R # ©Tr   r%   s   &r   ÚseekableÚContainerIO.seekable5   ó   € Ùr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   r   r   Úmoder   r   )r   s   "r   r   r   8   s!   € ÷ ñ ˜3ð  cð ¸Cñ r   c                óp  € V^8X  d   V P                   V,           V n         M&V^8X  d   V P                  V,           V n         MWn         \        ^ \        V P                   V P                  4      4      V n         V P                  P                  V P                  V P                   ,           4       V P                   # )a  
Move file pointer.

:param offset: Offset in bytes.
:param mode: Starting position. Use 0 for beginning of region, 1
   for current offset, and 2 for end of region.  You cannot move
   the pointer outside the defined region.
:returns: Offset from start of region, in bytes.
)r   r   ÚmaxÚminr   r   r   )r   r   r1   s   &&&r   r   ÚContainerIO.seek8   sz   € ð �1Œ9Ø—x‘x &Õ(ˆD�HØ�QŒYØ—{‘{ VÕ+ˆD�HàŒHä�qœ#˜dŸh™h¨¯©Ó4Ó5ˆŒØ�‰�‰�T—[‘[ 4§8¡8Õ+Ô,Ø�x‰xˆr   c               ó   € V ^8„  d   QhRR/# ©r   r   r   r   )r   s   "r   r   r   M   s   € ÷ ñ �cñ r   c                ó   € V P                   # )zM
Get current file pointer.

:returns: Offset from start of region, in bytes.
)r   r%   s   &r   ÚtellÚContainerIO.tellM   s   € ð �x‰xˆr   c               ó   € V ^8„  d   QhRR/# r!   r   )r   s   "r   r   r   U   r*   r   c                	ó   € R # r,   r   r%   s   &r   ÚreadableÚContainerIO.readableU   r/   r   c               ó    € V ^8„  d   QhRRRR/# ©r   Únr   r   r   r   )r   s   "r   r   r   X   s   € ÷ ñ �cð  6ñ r   c                óJ  € V^ 8”  d(   \        WP                  V P                  ,
          4      pMV P                  V P                  ,
          pV^ 8:  d    RV P                  P                  9   d   R# R# V P                  V,           V n        V P                  P                  V4      # )z‡
Read data.

:param n: Number of bytes to read. If omitted, zero or negative,
    read until end of region.
:returns: An 8-bit string.
Úbr   Ú )r4   r   r   r   r1   Úread)r   rA   s   &&r   rE   ÚContainerIO.readX   sv   € ð ˆqŒ5Ü�A—{‘{ T§X¡XÕ-Ó.‰Aà—‘˜dŸh™hÕ&ˆAØ�Œ6Ø §¡§¡Ô-�3Ð5°2Ð5Ø—8‘8˜a•<ˆŒØ�w‰w�|‰|˜A‹Ðr   c               ó    € V ^8„  d   QhRRRR/# r@   r   )r   s   "r   r   r   i   s   € ÷ ñ ˜#ð  vñ r   c                óþ   € RV P                   P                  9   d   RMRpRV P                   P                  9   d   RMRp V P                  ^4      pV'       g    V# W$,           pWC8X  g   \        V4      V8X  g   K=   V# )z�
Read a line of text.

:param n: Number of bytes to read. If omitted, zero or negative,
    read until end of line.
:returns: An 8-bit string.
rC   r   rD   ó   
Ú
)r   r1   rE   Úlen)r   rA   ÚsÚnewline_characterÚcs   &&   r   ÚreadlineÚContainerIO.readlinei   so   € ð  $§'¡'§,¡,Ô.‘C°BˆØ%(¨D¯G©G¯L©LÔ%8™E¸dÐØØ—	‘	˜!“ˆAßØð ˆð •ˆAØÔ%¬¨Q«°1®ØØˆr   c               ó    € V ^8„  d   QhRRRR/# )r   rA   ú
int | Noner   zlist[AnyStr]r   )r   s   "r   r   r   |   s   € ÷ ñ ˜:ð ¨|ñ r   c                óŠ   € . p V P                  4       pV'       g    V# VP                  V4       \        V4      V8X  g   K?   V# )z§
Read multiple lines of text.

:param n: Number of lines to read. If omitted, zero, negative or None,
    read until end of region.
:returns: A list of 8-bit strings.
)rO   ÚappendrK   )r   rA   ÚlinesrL   s   &&  r   Ú	readlinesÚContainerIO.readlines|   sD   € ð ˆØØ—‘“ˆAßØð ˆð �L‰L˜ŒOÜ�5‹z˜QŽØØˆr   c               ó   € V ^8„  d   QhRR/# r!   r   )r   s   "r   r   r   Ž   s   € ÷ ñ ˜$ñ r   c                	ó   € R # r$   r   r%   s   &r   ÚwritableÚContainerIO.writableŽ   r(   r   c               ó    € V ^8„  d   QhRRRR/# )r   rC   r   r   r   r   )r   s   "r   r   r   ‘   s   € ÷ $ñ $�vð $ (ñ $r   c                	ó   € \        4       h©N©ÚNotImplementedError)r   rC   s   &&r   ÚwriteÚContainerIO.write‘   ó   € Ü!Ó#Ð#r   c               ó    € V ^8„  d   QhRRRR/# )r   rU   zIterable[AnyStr]r   r   r   )r   s   "r   r   r   ”   s   € ÷ $ñ $Ð 0ð $°Xñ $r   c                	ó   € \        4       hr^   r_   )r   rU   s   &&r   Ú
writelinesÚContainerIO.writelines”   rc   r   Nc               ó    € V ^8„  d   QhRRRR/# )r   ÚsizerR   r   r   r   )r   s   "r   r   r   —   s   € ÷ $ñ $˜Zð $°3ñ $r   c                	ó   € \        4       hr^   r_   )r   ri   s   &&r   ÚtruncateÚContainerIO.truncate—   rc   r   c               ó   € V ^8„  d   QhRR/# ©r   r   r   r   )r   s   "r   r   r   š   s   € ÷ ñ ˜4ñ r   c                	ó   € V # r^   r   r%   s   &r   Ú	__enter__ÚContainerIO.__enter__š   ó   € Øˆr   c               ó    € V ^8„  d   QhRRRR/# )r   ÚargsÚobjectr   r   r   )r   s   "r   r   r   �   s   € ÷ ñ ˜fð ¨ñ r   c                	ó&   € V P                  4        R # r^   )Úclose)r   rt   s   &*r   Ú__exit__ÚContainerIO.__exit__�   s   € Ø�
‰
Žr   c               ó   € V ^8„  d   QhRR/# rn   r   )r   s   "r   r   r       r*   r   c                	ó   € V # r^   r   r%   s   &r   Ú__iter__ÚContainerIO.__iter__    rr   r   c               ó   € V ^8„  d   QhRR/# )r   r   r   r   )r   s   "r   r   r   £   s   € ÷ ñ ˜&ñ r   c                	óP   € V P                  4       pV'       g   R p\        V4      hV# )zend of region)rO   ÚStopIteration)r   ÚlineÚmsgs   &  r   Ú__next__ÚContainerIO.__next__£   s%   € Ø�}‰}‹ˆßØ!ˆCÜ Ó$Ð$Øˆr   c               ó   € V ^8„  d   QhRR/# r7   r   )r   s   "r   r   r   ª   s   € ÷  ñ  ˜ñ  r   c                	ó6   € V P                   P                  4       # r^   )r   Úfilenor%   s   &r   r‡   ÚContainerIO.filenoª   s   € Ø�w‰w�~‰~ÓÐr   c               ó   € V ^8„  d   QhRR/# ©r   r   r   r   )r   s   "r   r   r   ­   ó   € ÷ ñ �tñ r   c                	ó:   € V P                   P                  4        R # r^   )r   Úflushr%   s   &r   r�   ÚContainerIO.flush­   ó   € Ø�‰�‰Žr   c               ó   € V ^8„  d   QhRR/# rŠ   r   )r   s   "r   r   r   °   r‹   r   c                	ó:   € V P                   P                  4        R # r^   )r   rw   r%   s   &r   rw   ÚContainerIO.close°   r�   r   )r   r   r   r   )éÿÿÿÿr^   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r&   r-   ÚioÚSEEK_SETr   r9   r=   rE   rO   rV   rZ   ra   rf   rk   rp   rx   r|   rƒ   r‡   r�   rw   Ú__static_attributes__r   r   r   r
   r
      sy   † ñõ
õ"õð -/¯K©K÷ õ*õ÷÷"÷&õ$õ$õ$÷$õõõõõ õ÷ñ r   r
   )Ú
__future__r   r™   Útypingr   r   ÚTYPE_CHECKINGÚcollections.abcr   r   r   r
   r   r   r   Ú<module>r       s0   ðõ  #ã 	ß à€ßÝ(ß%ôV�"�V•*ö Vr   