1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
Ë
³òúh©ãóT—ddlmZddlZddlmZddlmZmZmZGd„dee«Z    y)é)Ú annotationsN)ÚIterable)ÚIOÚAnyStrÚNoReturncóЗeZdZdZdd„Zdd„Zdd„Zejfdd„Z    dd„Z
dd„Z ddd„Z ddd    „Z ddd
„Zdd „Zdd „Zdd „Zd d!d„Zd"d„Zd#d„Zd"d„Zd$d„Zdd„Zd%d„Zd%d„Zy)&Ú ContainerIOzm
    A file object that provides read access to a part of an existing
    file (for example a TAR file).
    cór—||_d|_||_||_|jj    |«y)z­
        Create file object.
 
        :param file: Existing file.
        :param offset: Start of region, in bytes.
        :param length: Size of region, in bytes.
        rN)ÚfhÚposÚoffsetÚlengthÚseek)ÚselfÚfiler rs    úBH:\Change_password\venv_build\Lib\site-packages\PIL/ContainerIO.pyÚ__init__zContainerIO.__init__s0€ð#ˆŒØˆŒØˆŒ ؈Œ Ø ‰ ‰ VÕócó—y©NF©©rs rÚisattyzContainerIO.isatty.ó€Ørcó—y©NTrrs rÚseekablezContainerIO.seekable1ó€ØrcóR—|dk(r|j|z|_n!|dk(r|j|z|_n||_tdt|j|j««|_|jj |j |jz«|jS)aK
        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 rÚmaxÚminr rr )rr Úmodes   rrzContainerIO.seek4s|€ð 1Š9Ø—x‘x &Ñ(ˆDHØ QŠYØ—{‘{ VÑ+ˆDHàˆDŒHäqœ#˜dŸh™h¨¯ © Ó4Ó5ˆŒØ ‰ ‰ T—[‘[ 4§8¡8Ñ+Ô,؏x‰xˆrcó—|jS)ze
        Get current file pointer.
 
        :returns: Offset from start of region, in bytes.
        )r rs rÚtellzContainerIO.tellIs €ð x‰xˆrcó—yrrrs rÚreadablezContainerIO.readableQrrcó&—|dkDr$t||j|jz
«}n|j|jz
}|dkrd|jjvrdSdS|j|z|_|jj |«S)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.
        rÚbrÚ)r#rr r r$Úread)rÚns  rr,zContainerIO.readTsx€ð ˆqŠ5ܐAt—{‘{ T§X¡XÑ-Ó.‰Aà— ‘ ˜dŸh™hÑ&ˆAØ Š6Ø §¡§¡Ñ-3Ð 5°2Ð 5Ø—8‘8˜a‘<ˆŒØw‰w|‰|˜A‹Ðrcóؗd|jjvrdnd}d|jjvrdnd}    |jd«}|s    |S||z}||k(st|«|k(r    |SŒ2)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.
        r*rr+ó
ú
r )r r$r,Úlen)rr-ÚsÚnewline_characterÚcs     rÚreadlinezContainerIO.readlineesy€ð $§'¡'§,¡,Ñ.‘C°BˆØ%(¨D¯G©G¯L©LÑ%8™E¸dÐØØ—    ‘    ˜!“ ˆAÙØðˆðA‘ˆAØÐ%Ò%¬¨Q«°1ªØØˆðrcóx—g}    |j«}|s    |S|j|«t|«|k(r    |SŒ8)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.
        )r5Úappendr1)rr-Úlinesr2s    rÚ    readlineszContainerIO.readlinesxsI€ðˆØØ— ‘ “ˆAÙØðˆ ð L‰L˜ŒOܐ5‹z˜QŠØØˆ ðrcó—yrrrs rÚwritablezContainerIO.writableŠrrcó—t«‚©N©ÚNotImplementedError)rr*s  rÚwritezContainerIO.writeó €Ü!Ó#Ð#rcó—t«‚r=r>)rr8s  rÚ
writelineszContainerIO.writelinesrArNcó—t«‚r=r>)rÚsizes  rÚtruncatezContainerIO.truncate“rArcó—|Sr=rrs rÚ    __enter__zContainerIO.__enter__–ó€Øˆ rcó$—|j«yr=)Úclose)rÚargss  rÚ__exit__zContainerIO.__exit__™s €Ø 
‰
 rcó—|Sr=rrs rÚ__iter__zContainerIO.__iter__œrIrcóD—|j«}|s d}t|«‚|S)Nz end of region)r5Ú StopIteration)rÚlineÚmsgs   rÚ__next__zContainerIO.__next__Ÿs%€Ø}‰}‹ˆÙØ!ˆCÜ Ó$Ð $؈ rcó6—|jj«Sr=)r Úfilenors rrVzContainerIO.fileno¦s€Øw‰w~‰~ÓÐrcó8—|jj«yr=)r Úflushrs rrXzContainerIO.flush©ó€Ø ‰ ‰ rcó8—|jj«yr=)r rKrs rrKzContainerIO.close¬rYr)rz
IO[AnyStr]r Úintrr[ÚreturnÚNone)r\Úbool)r r[r$r[r\r[)r\r[)éÿÿÿÿ)r-r[r\r)r-ú
int | Noner\z list[AnyStr])r*rr\r)r8zIterable[AnyStr]r\rr=)rEr`r\r[)r\zContainerIO[AnyStr])rLÚobjectr\r])r\r)r\r])Ú__name__Ú
__module__Ú __qualname__Ú__doc__rrrÚioÚSEEK_SETrr&r(r,r5r9r;r@rCrFrHrMrOrTrVrXrKrrrr    r    st„ñó
ó"óð-/¯K©Kôó*óôô"ô&ó$ó$ó$ô$óóóóó óôrr    )
Ú
__future__rrfÚcollections.abcrÚtypingrrrr    rrrú<module>rks(ðõ #ã    Ý$ß'Ñ'ôV"V‘*õVr