σ <Χο[c@sdefd„ƒYZdS(t ContainerIOcBsMeZd„Zd„Zdd„Zd„Zdd„Zd„Zd„ZRS(cCs8||_d|_||_||_|jj|ƒdS(s­ Create file object. :param file: Existing file. :param offset: Start of region, in bytes. :param length: Size of region, in bytes. iN(tfhtpostoffsettlengthtseek(tselftfileRR((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyt__init__s     cCsdS(Ni((R((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pytisatty)sicCs†|dkr|j||_n(|dkr>|j||_n ||_tdt|j|jƒƒ|_|jj|j|jƒdS(s 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. iiiN(RRtmaxtminRRR(RRtmode((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyR,s   !cCs|jS(se Get current file pointer. :returns: Offset from start of region, in bytes. (R(R((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyttell?scCs\|r"t||j|jƒ}n|j|j}|s<dS|j||_|jj|ƒS(s₯ Read data. :param n: Number of bytes to read. If omitted or zero, read until end of region. :returns: An 8-bit string. t(R RRRtread(Rtn((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyRGscCsJd}x=trE|jdƒ}|s(Pn||}|dkr Pq q W|S(sJ Read a line of text. :returns: An 8-bit string. Ris (tTrueR(Rtstc((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pytreadlineXs   cCs:g}x-tr5|jƒ}|s%Pn|j|ƒq W|S(sZ Read multiple lines of text. :returns: A list of 8-bit strings. (RRtappend(RtlinesR((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyt readlineshs  ( t__name__t __module__RR RR RRR(((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyRs      N(tobjectR(((s//tmp/pip-build-SKekGm/pillow/PIL/ContainerIO.pyts