Ë
    ^ãjË$  ã                  ó  — d dl mZ ddhZd dlZd dlmZ d dlmZ ddlm	Z	m
Z
mZmZ 	 dd	lmZ d
ZdZd Zdd„Zdd„Zdd„Z G d„ dej                  «      Zdd„Z	 d	 	 	 	 	 	 	 	 	 dd„Z e
j0                  ej2                  ee«       erw e
j4                  ej2                  e«        e
j6                  ej2                  e«        e
j8                  ej2                  ddg«        e
j:                  ej2                  d«       yy# e$ r dZY ŒÙw xY w)é    )ÚannotationsÚioÚtypingN)ÚBytesIO)ÚIOé   )ÚExifTagsÚImageÚ	ImageFileÚImageSequence)Ú_avifTFÚautoc                óÖ   — t        j                  «       }|j                  d«      D ]A  }|j                  d«      d   | k(  sŒ|j                  d«      d   j                  d«      d   c S  y )Nz, z [r   ú:éÿÿÿÿú )r   Úcodec_versionsÚsplit)Ú
codec_nameÚversionsÚversions      úU/var/www/html/metafoliadorv2/venv/lib/python3.12/site-packages/PIL/AvifImagePlugin.pyÚget_codec_versionr      sg   € Ü×#Ñ#Ó%€HØ—>‘> $Ó'ò 8ˆØ�=‰=˜Ó˜qÑ! ZÓ/Ø—=‘= Ó% bÑ)×/Ñ/°Ó4°QÑ7Ò7ð8ð ó    c                ó:   — | dd dk7  ry| dd }|dv r	t         s	 yyy)	Né   é   s   ftypFé   )s   avifs   aviss   mif1s   msf1zEimage file could not be identified because AVIF support not installedT)Ú	SUPPORTED)ÚprefixÚmajor_brands     r   Ú_acceptr"       s@   € Øˆa�€{�gÒØØ˜˜2�,€KØð ñ õ àWðð Ør   c                 ó¦   — t         rt         S t        t        d«      rt        t        j                  d«      «      S t        j
                  «       xs dS )NÚsched_getaffinityr   r   )ÚDEFAULT_MAX_THREADSÚhasattrÚosÚlenr$   Ú	cpu_count© r   r   Ú_get_default_max_threadsr+   :   s=   € ÝÜ"Ð"ÜŒrÐ&Ô'Ü”2×'Ñ'¨Ó*Ó+Ð+ä�|‰|‹~Ò" Ð"r   c                  óL   ‡ — e Zd ZdZdZdZd	d„Zd
d„Zdˆ fd„Zdd„Z	dd„Z
ˆ xZS )ÚAvifImageFileÚAVIFz
AVIF imager   c                óP  — t         sd}t        |«      ‚t        dk7  r&t        j                  t        «      sd}t        |«      ‚| j                  €J ‚t        j                  | j                  j                  «       t        t        «       «      | _
        | j                  j                  «       \  | _        | _        | _        }}}}| j                  dkD  | _        |r|| j                   d<   |r|| j                   d<   |dk7  s|r†t#        j$                  «       }|r<|j'                  |«       |j)                  t*        j,                  j.                  d«      }nd}||k7  r-||t*        j,                  j.                  <   |j1                  «       }|r|| j                   d<   | j3                  d«       y )	NzAimage file could not be opened because AVIF support not installedr   zInvalid opening codecr   Úicc_profileÚxmpÚexifr   )r   ÚSyntaxErrorÚDECODE_CODEC_CHOICEr   Údecoder_codec_availableÚ
ValueErrorÚfpÚAvifDecoderÚreadr+   Ú_decoderÚget_infoÚ_sizeÚn_framesÚ_modeÚis_animatedÚinfor
   ÚExifÚloadÚgetr	   ÚBaseÚOrientationÚtobytesÚseek)ÚselfÚmsgÚiccr2   Úexif_orientationr1   Ú	exif_dataÚoriginal_orientations           r   Ú_openzAvifImageFile._openH   se  € ÝØUˆCÜ˜cÓ"Ð"ä &Ò(´×1NÑ1NÜô2
ð *ˆCÜ˜S“/Ð!à�w‰wÐ"Ð"Ð"Ü×)Ñ)Ø�G‰G�L‰L‹NÜÜ$Ó&ó
ˆŒð �M‰M×"Ñ"Ó$ñ 	PˆŒ
�D”M 4¤:¨s°DÐ:JÈCð  Ÿ=™=¨1Ñ,ˆÔáØ'*ˆD�I‰I�mÑ$ÙØ"ˆD�I‰I�eÑà˜qÒ ¡DÜŸ
™
›ˆIÙØ—‘˜tÔ$Ø'0§}¡}´X·]±]×5NÑ5NÐPQÓ'RÑ$à'(Ð$ØÐ#7Ò7Ø7G�	œ(Ÿ-™-×3Ñ3Ñ4Ø ×(Ñ(Ó*�ÙØ $ˆD�I‰I�fÑØ�	‰	�!�r   c                ó  — | j                  |«      sy | j                  j                  dd «       | j                  j                  dd «       || _        t	        j
                  dddg| j                  ¢­d| j                  «      g| _        y )NÚ	timestampÚdurationÚrawr   )	Ú_seek_checkr@   ÚpopÚ_AvifImageFile__framer   Ú_TileÚsizeÚmodeÚtile)rH   Úframes     r   rG   zAvifImageFile.seeks   sk   € Ø×Ñ Ô&ØØ�	‰	�‰�k 4Ô(Ø�	‰	�‰�j $Ô'ð ˆŒÜ—_‘_ U¨Q°Ð,>°D·I±IÑ,>ÀÀ4Ç9Á9ÓMÐNˆ�	r   c                óˆ  •— | j                   r¨| j                  j                  | j                  «      \  }}}}t	        d||z  z  «      | j
                  d<   t	        d||z  z  «      | j
                  d<   | j                  r&| j                  r| j                  j                  «        t        |«      | _        t        ‰| �-  «       S )Niè  rP   rQ   )rY   r:   Ú	get_framerU   Úroundr@   r7   Ú_exclusive_fpÚcloser   ÚsuperrB   )rH   ÚdataÚ	timescaleÚpts_in_timescalesÚduration_in_timescalesÚ	__class__s        €r   rB   zAvifImageFile.load}   s£   ø€ Ø�9Š9ð —‘×'Ñ'¨¯©Ó5ñ GˆD�)Ð.Ð0Fô &+¨4Ð3DÀyÑ3PÑ+QÓ%RˆD�I‰I�kÑ"Ü$)¨$Ð2HÈ9Ñ2TÑ*UÓ$VˆD�I‰I�jÑ!à�wŠw˜4×-Ò-Ø—‘—‘”Ü˜d“mˆDŒGä‰w‰|‹~Ðr   c                 ó   — y ©Nr*   )rH   Úposs     r   Ú	load_seekzAvifImageFile.load_seekŒ   s   € Ør   c                ó   — | j                   S rg   )rU   )rH   s    r   ÚtellzAvifImageFile.tell�   s   € Ø�|‰|Ðr   )ÚreturnÚNone)rZ   Úintrl   rm   )rl   zImage.core.PixelAccess | None)rh   rn   rl   rm   ©rl   rn   )Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionrU   rN   rG   rB   ri   rk   Ú__classcell__)re   s   @r   r-   r-   C   s.   ø„ Ø€FØ%ÐØ€Gó)óVOõó÷r   r-   c                ó"   — t        | ||d¬«       y )NT)Úsave_all)Ú_save)Úimr7   Úfilenames      r   Ú	_save_allr{   “   s   € Ü	ˆ"ˆb�( TÖ*r   c                óŠ	  ‡#— | j                   j                  «       }|rt        |j                  dg «      «      }ng }h d£Š#t	        ˆ#fd„| g|z   D «       «      }|j                  dd«      }t        |t        «      r
|dk  s|dkD  rd}t        |«      ‚|j                  d	d«      }	|j                  d
|rdnd«      }
|j                  dd«      }|j                  dt        «       «      }|j                  dd«      }|dk7  r"t        j                  |«      sd}t        |«      ‚|j                  dd«      }|j                  dd«      }|j                  dd«      }t        |j                  dd«      «      }t        |j                  d||cxk(  xr dk(  nc «      «      }|j                  d| j                  j                  d«      «      }d}|j                  d«      x}rÆt        |t        j                  «      r|}n%t        j                  «       }|j                  |«       t         j"                  j$                  |v r>|j'                  t         j"                  j$                  «      }|r|j)                  «       nd}n*t        |t        j                  «      r|j)                  «       }|j                  d«      }t        |t*        «      r|j-                  d«      }|j                  d «      }|�Mt        |t.        «      r|j1                  «       }	 t3        |«      }t5        d!„ |D «       «      }|rd#}t        |«      ‚t        j8                  | j:                  |
||||||||||xs d|xs d||xs d|«      }d}d}| j=                  «       }| xr t?        | d$d«       }	 | g|z   D ]¿  }tA        jB                  |«      D ]¥  } | jD                  }!|jD                  d%vr3|jF                  rd&}!n|jD                  ‰#v rd'}!nd(}!| jI                  |!«      } t        |	t        t2        f«      r|	|   }n|	}|jK                  | j)                  d)|!«      || j:                  |!|«       |dz  }|rŒ¥ Œ¿ ŒÁ 	 | jM                  |«       |jO                  «       }"|"€d*}tQ        |«      ‚|jS                  |"«       y # t6        $ r d"}Y �ŒŠw xY w# | jM                  |«       w xY w)+NÚappend_images>   úI;16úI;16BúI;16LúI;16NÚ1ÚFÚIÚLc              3  ón   •K  — | ],  }t        j                  |«      D ]  }|j                  ‰v –— Œ Œ. y ­wrg   )r   ÚIteratorrX   )Ú.0ÚimsrZ   Úgrayscale_modess      €r   ú	<genexpr>z_save.<locals>.<genexpr>¡   sB   øè ø€ ò àÜ"×+Ñ+¨CÓ0òð ð 	�
‰
�oÔ%ðØ%ñùs   ƒ25ÚqualityéK   r   éd   zInvalid quality settingrQ   Úsubsamplingz4:0:0z4:2:0Úspeedé   Úmax_threadsÚcodecr   zInvalid saving codecÚrangeÚfullÚ	tile_rowsÚ	tile_colsÚalpha_premultipliedFÚ
autotilingr0   r   r2   r   r1   zutf-8Úadvancedc              3  ó^   K  — | ]%  }t        |t        «       xs t        |«      d k7  –— Œ' y­w)é   N)Ú
isinstanceÚtupler(   )rˆ   Úvs     r   r‹   z_save.<locals>.<genexpr>Ö   s*   è ø€ ÒTÀaœj¨¬EÓ2Ð2ÒA´c¸!³fÀ±kÓAÑTùs   ‚+-Tzcadvanced codec options must be a dict of key-value string pairs or a series of key-value two-tuplesr?   >   r…   ÚRGBÚRGBAr¡   r…   r    rR   z1cannot write file as AVIF (encoder returned None))*ÚencoderinfoÚcopyÚlistrC   Úallr�   rn   r6   r+   r   Úencoder_codec_availableÚboolr@   r
   rA   rB   r	   rD   rE   rT   rF   ÚstrÚencodeÚdictÚitemsrž   ÚanyÚ	TypeErrorÚAvifEncoderrW   rk   Úgetattrr   r‡   rX   Úhas_transparency_dataÚconvertÚaddrG   ÚfinishÚOSErrorÚwrite)$ry   r7   rz   rw   r@   r}   Ú	grayscalerŒ   rI   rQ   r�   r�   r’   r“   Úrange_Útile_rows_log2Útile_cols_log2r˜   r™   r0   rK   r2   rL   r1   rš   ÚinvalidÚencÚ	frame_idxÚframe_durationÚcur_idxÚis_single_framer‰   rZ   Úrawmodera   rŠ   s$                                      @r   rx   rx   —   sq  ø€ ð �>‰>×ÑÓ €DÙÜ˜TŸX™X o°rÓ:Ó;‰àˆâM€OÜó à�4˜-Ñ'ôó €Ið �h‰h�y "Ó%€GÜ�gœsÔ# w°¢{°gÀ²mØ'ˆÜ˜‹oÐà�x‰x˜
 AÓ&€HØ—(‘(˜=±Y©'ÀGÓL€KØ�H‰H�W˜aÓ €EØ—(‘(˜=Ô*BÓ*DÓE€KØ�H‰H�W˜fÓ%€EØ�‚œu×<Ñ<¸UÔCØ$ˆÜ˜‹oÐØ�X‰X�g˜vÓ&€FØ—X‘X˜k¨1Ó-€NØ—X‘X˜k¨1Ó-€NÜ˜tŸx™xÐ(=¸uÓEÓFÐÜ�d—h‘h˜|¨^¸~Ö-RÐQRÔ-RÓSÓT€Jà—(‘(˜=¨"¯'©'¯+©+°mÓ*DÓE€KØÐØ�x‰x˜ÓÐ€tÐÜ�dœEŸJ™JÔ'Ø‰IäŸ
™
›ˆIØ�N‰N˜4Ô Ü�=‰=×$Ñ$¨	Ñ1Ø(Ÿ}™}¬X¯]©]×-FÑ-FÓGÐÙ*3�9×$Ñ$Ô&¸‰DÜ˜œeŸj™jÔ)Ø×$Ñ$Ó&ˆDà
�(‰(�5‹/€Cä�#”sÔØ�j‰j˜Ó!ˆà�x‰x˜
Ó#€HØÐÜ�h¤Ô%Ø—~‘~Ó'ˆHð	UÜ˜X“ˆHô ÑTÈ8ÔTÓTˆGÙð<ð ô ˜S“/Ð!ô ×
Ñ
Ø
�‰ØØØØØØØØØØØÒ�sØŠ�ØØŠ
ˆsØó!€Cð( €IØ€NØ�g‰g‹i€GØ'Ð'ÒQ´¸¸MÈ5Ó0QÐ,Q€Oð$Ø�4˜-Ñ'ò  	ˆCÜ&×/Ñ/°Ó4ò �àŸ*™*�Ø—8‘8Ð#7Ñ7Ø×0Ò0Ø"(™ØŸ™ _Ñ4Ø"%™à"'˜Ø!ŸM™M¨'Ó2�Eô ˜h¬¬u¨Ô6Ø%-¨iÑ%8‘Nà%-�Nð —‘Ø—M‘M %¨Ó1Ø"Ø—J‘JØØ#ôð ˜Q‘�	âÙñ?ñ 	ðF 	�‰�Ôð �:‰:‹<€DØ€|ØAˆÜ�c‹lÐà‡H�HˆT…Nøôa ò 	Ø‹Gð	ûðP 	�‰�Õús%   ÌR ÎCR/ ÑR/ ÒR,Ò+R,Ò/Sz.avifz.avifsz
image/avif)r   r¨   rl   z
str | None)r    Úbytesrl   z
bool | strro   )ry   úImage.Imager7   ú	IO[bytes]rz   ústr | bytesrl   rm   )F)
ry   rÂ   r7   rÃ   rz   rÄ   rw   r§   rl   rm   )Ú
__future__r   Ú__lazy_modules__r'   r   r   r   r   Ú r	   r
   r   r   r   r   ÚImportErrorr4   r%   r   r"   r+   r-   r{   rx   Úregister_openrs   Úregister_saveÚregister_save_allÚregister_extensionsÚregister_mimer*   r   r   ú<module>rÎ      sA  ðÝ "à˜(Ð#Ð ã 	Ý Ý ç 7Ó 7ðÝà€Ið Ð ØÐ óóó4#ôM�I×'Ñ'ô Mó`+ð
 MRðLØðLØ"ðLØ.9ðLØEIðLà	óLð^ €× Ñ �M×(Ñ(¨-¸Ô AÙØ€E×Ñ˜×,Ñ,¨eÔ4Ø€E×Ñ˜M×0Ñ0°)Ô<Ø€E×Ñ˜m×2Ñ2°W¸hÐ4GÔHØ€E×Ñ˜×,Ñ,¨lÕ;ð	 øðq ò Ø‚Iðús   ¨D  Ä D
Ä	D
