o
    h                     @  s:   d dl mZ d dlZddlmZ G dd deje ZdS )    )annotationsN   )ContainerIOc                      s"   e Zd ZdZd	 fddZ  ZS )
TarIOzHA file object that provides read access to a given member of a TAR file.tarfilestrfilereturnNonec                   s   t |d| _	 | jd}t|dkr| j  d}t||dd d}|d}|d	kr;| j  d
}t||d	krE|d| }t|dd d}||krSn| j	|d d@ t
j qt | j| j | dS )zz
        Create file object.

        :param tarfile: Name of TAR file.
        :param file: Name of member file.
        rbTi   zunexpected end of tar fileNd   zutf-8 r   zcannot find subfile|         i  i )openfhreadlencloseOSErrordecodefindintseekioSEEK_CURsuper__init__tell)selfr   r   smsgnameisize	__class__ K/var/www/html/optinet_system/venv/lib/python3.10/site-packages/PIL/TarIO.pyr      s*   


zTarIO.__init__)r   r   r   r   r	   r
   )__name__
__module____qualname____doc__r   __classcell__r(   r(   r&   r)   r      s    r   )
__future__r   r    r   bytesr   r(   r(   r(   r)   <module>   s   