§
    ±eîix  ã                   óÈ   — d dl Z d dlmZmZmZmZmZmZmZ d dl	m
Z
 erd dlmZmZ eeeee
         eeef         f         f         Z G d„ d¦  «        Z G d„ de¦  «        ZdS )	é    N)ÚTYPE_CHECKINGÚAnyÚDictÚOptionalÚTupleÚTypeÚUnion)ÚQRModuleDrawer)ÚActiveWithNeighborsÚQRCodec                   ó  — e Zd ZU dZdZee         ed<   dZee	e                  ed<   dZ
dZdZd„ Zej        d„ ¦   «         Zd	ed
eddfd„Zd„ Zej        dd„¦   «         Zd„ Zej        defd„¦   «         Zd„ Zd„ Zdd„Zd	ed
efd„ZdS )Ú	BaseImagez)
    Base QRCode image output class.
    NÚkindÚallowed_kindsFTc                 óî   — || _         || _        || _        | j        | j         dz  z   | j        z  | _        |                     d¦  «        | _         | j        di |¤Ž| _        |                      ¦   «          d S )Né   Úqrcode_modules© )	ÚborderÚwidthÚbox_sizeÚ
pixel_sizeÚpopÚmodulesÚ	new_imageÚ_imgÚinit_new_image)Úselfr   r   r   ÚargsÚkwargss         úU/home/div/.hermes/hermes-agent/venv/lib/python3.11/site-packages/qrcode/image/base.pyÚ__init__zBaseImage.__init__   sw   € ØˆŒØˆŒ
Ø ˆŒØœ:¨¬°a©Ñ7¸4¼=ÑHˆŒØ—z’zÐ"2Ñ3Ô3ˆŒØ"�D”NÐ,Ð, VÐ,Ð,ˆŒ	Ø×ÒÑÔÐÐÐó    c                 ó   — dS )z9
        Draw a single rectangle of the QR code.
        Nr   ©r   ÚrowÚcols      r!   ÚdrawrectzBaseImage.drawrect!   ó   € € € r#   r&   r'   Úqrr   c                 ó    — t          d¦  «        ‚)zV
        Draw a single rectangle of the QR code given the surrounding context
        zBaseImage.drawrect_context©ÚNotImplementedError)r   r&   r'   r*   s       r!   Údrawrect_contextzBaseImage.drawrect_context'   s   € õ "Ð">Ñ?Ô?Ð?r#   c                 ó    — t          d¦  «        ‚)z4
        Processes QR code after completion
        zBaseImage.drawimager,   ©r   s    r!   ÚprocesszBaseImage.process-   s   € õ "Ð"7Ñ8Ô8Ð8r#   c                 ó   — dS )z&
        Save the image file.
        Nr   )r   Ústreamr   s      r!   ÚsavezBaseImage.save3   r)   r#   c                 ó†   — || j         z   | j        z  }|| j         z   | j        z  }||f|| j        z   dz
  || j        z   dz
  ffS )z‡
        A helper method for pixel-based image generators that specifies the
        four pixel coordinates for a single rect.
        é   )r   r   )r   r&   r'   ÚxÚys        r!   Ú	pixel_boxzBaseImage.pixel_box9   s[   € ð
 �4”;Ñ $¤-Ñ/ˆØ�4”;Ñ $¤-Ñ/ˆà�ˆFØ�”Ñ Ñ" A¨¬Ñ$5¸Ñ$9Ð:ð
ð 	
r#   Úreturnc                 ó   — dS )zT
        Build the image class. Subclasses should return the class created.
        Nr   ©r   r    s     r!   r   zBaseImage.new_imageE   r)   r#   c                 ó   — d S ©Nr   r0   s    r!   r   zBaseImage.init_new_imageK   s   € Øˆr#   c                 ó   — | j         S )z@
        Return the image class for further processing.
        )r   r<   s     r!   Ú	get_imagezBaseImage.get_imageN   s   € ð ŒyÐr#   c                 ó¼   — |€| j         }| j         p|| j        v }|r ||¦  «        }|s	|| j        v }|s't          dt          | ¦  «        j        › d|› �¦  «        ‚|S )z%
        Get the image type.
        NzCannot set z	 type to )r   r   Ú
ValueErrorÚtypeÚ__name__)r   r   Ú	transformÚalloweds       r!   Ú
check_kindzBaseImage.check_kindT   sˆ   € ð ˆ<Ø”9ˆDØÔ(Ð(ÐF¨D°DÔ4FÐ,FˆØð 	5Ø�9˜T‘?”?ˆDØð 5Ø $Ô"4Ð4�Øð 	QÝÐO­4°©:¬:Ô+>ÐOÐOÈÐOÐOÑPÔPÐPØˆr#   c                 ój   — |dk     r|dk     p'|dk     o| j         |z
  dk     p| j         |z
  dk     o|dk     S )zB
        Find whether the referenced module is in an eye.
        é   é   )r   r%   s      r!   Úis_eyezBaseImage.is_eyec   sS   € ð
 �1ŠWÐ ˜˜qšð 2Ø�a’Ð0˜DœJ¨Ñ,¨qÒ0ð2à”
˜SÑ  1Ò$Ð0¨¨qªð	
r#   r>   )rD   Ú
__module__Ú__qualname__Ú__doc__r   r   ÚstrÚ__annotations__r   r   Úneeds_contextÚneeds_processingÚneeds_drawrectr"   ÚabcÚabstractmethodr(   Úintr.   r1   r4   r9   r   r   r   r@   rG   rK   r   r#   r!   r   r      s~  € € € € € € ðð ð €Dˆ(�3Œ-ÐÐÑØ*.€M�8˜E #œJÔ'Ð.Ð.Ñ.Ø€MØÐØ€Nðð ð ð 	Ôðð ñ Ôðð
@ Cð @¨cð @°xð @ð @ð @ð @ð9ð 9ð 9ð 	Ôðð ð ñ Ôðð


ð 

ð 

ð 	Ôð Sð ð ð ñ Ôðð
ð ð ðð ð ðð ð ð ð
˜#ð 
 Cð 
ð 
ð 
ð 
ð 
ð 
r#   r   c                   óö   ‡ — e Zd ZU ee         ed<   i Zeed<   defd„Zdefd„Z	dZ
ded<   ded	<   d
d
dœdeeed
f         d	eeed
f         fˆ fd„Zdeeed
f         dee         fd„Zˆ fd„Zdededdfd„Zˆ xZS )ÚBaseImageWithDrawerÚdefault_drawer_classÚdrawer_aliasesr:   c                 ó*   — |                       ¦   «         S r>   ©rY   r0   s    r!   Úget_default_module_drawerz-BaseImageWithDrawer.get_default_module_drawerr   ó   € Ø×(Ò(Ñ*Ô*Ð*r#   c                 ó*   — |                       ¦   «         S r>   r\   r0   s    r!   Úget_default_eye_drawerz*BaseImageWithDrawer.get_default_eye_draweru   r^   r#   Tr
   Úmodule_drawerÚ
eye_drawerN)ra   rb   c                óò   •— |                       |¦  «        p|                      ¦   «         | _        |                       |¦  «        p|                      ¦   «         | _         t          ¦   «         j        |i |¤Ž d S r>   )Ú
get_drawerr]   ra   r`   rb   Úsuperr"   )r   ra   rb   r   r    Ú	__class__s        €r!   r"   zBaseImageWithDrawer.__init__}   su   ø€ ð �OŠO˜MÑ*Ô*ÐN¨d×.LÒ.LÑ.NÔ.Nð 	Ôð Ÿ/š/¨*Ñ5Ô5ÐV¸×9TÒ9TÑ9VÔ9VˆŒØ�‰ŒÔ˜$Ð) &Ð)Ð)Ð)Ð)Ð)r#   Údrawerc                 ó`   — t          |t          ¦  «        s|S | j        |         \  }} |di |¤ŽS )Nr   )Ú
isinstancerO   rZ   )r   rg   Ú
drawer_clsr    s       r!   rd   zBaseImageWithDrawer.get_drawer�   sC   € õ ˜&¥#Ñ&Ô&ð 	ØˆMØ!Ô0°Ô8Ñˆ
�FØˆzÐ#Ð#˜FÐ#Ð#Ð#r#   c                 ó°   •— | j                              | ¬¦  «         | j                             | ¬¦  «         t          ¦   «                              ¦   «         S )N)Úimg)ra   Ú
initializerb   re   r   )r   rf   s    €r!   r   z"BaseImageWithDrawer.init_new_image•   sL   ø€ ØÔ×%Ò%¨$Ð%Ñ/Ô/Ð/ØŒ×"Ò" tÐ"Ñ,Ô,Ð,å‰wŒw×%Ò%Ñ'Ô'Ð'r#   r&   r'   r*   r   c                 ó   — |                       ||¦  «        }|                      ||¦  «        r| j        n| j        }|j        r|                     ||¦  «        nt          |j        |         |         ¦  «        }|                     ||¦  «         d S r>   )	r9   rK   rb   ra   Úneeds_neighborsÚactive_with_neighborsÚboolr   r(   )r   r&   r'   r*   Úboxrg   Ú	is_actives          r!   r.   z$BaseImageWithDrawer.drawrect_context›   s�   € Ø�nŠn˜S #Ñ&Ô&ˆØ$(§K¢K°°SÑ$9Ô$9ÐQ�”�¸tÔ?Qˆð Ô%ð,ˆB×$Ò$ S¨#Ñ.Ô.Ð.å�b”j ”o cÔ*Ñ+Ô+ð 	ð 	�Š˜˜YÑ'Ô'Ð'Ð'Ð'r#   )rD   rL   rM   r   r
   rP   rZ   ÚDrawerAliasesr]   r`   rQ   r	   rO   r"   r   rd   r   rV   r.   Ú__classcell__)rf   s   @r!   rX   rX   n   sj  ø€ € € € € € Ø˜~Ô.Ð.Ð.Ñ.Ø$&€N�MÐ&Ð&Ñ&ð+¨>ð +ð +ð +ð +ð+¨ð +ð +ð +ð +ð €Mà#Ð#Ð#Ñ#Ø Ð Ð Ñ ð
 ;?Ø7;ð	*ð *ð *ð ˜^¨S°$Ð6Ô7ð*ð ˜.¨#¨tÐ3Ô4ð	*ð *ð *ð *ð *ð *ð $Ø˜N¨C°Ð5Ô6ð$à	�.Ô	!ð$ð $ð $ð $ð(ð (ð (ð (ð (ð	( Cð 	(¨cð 	(°xð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(r#   rX   )rT   Útypingr   r   r   r   r   r   r	   Ú&qrcode.image.styles.moduledrawers.baser
   Úqrcode.mainr   r   rO   rt   r   rX   r   r#   r!   ú<module>ry      s  ðØ 
€
€
€
Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ Ià AÐ AÐ AÐ AÐ AÐ Aàð 8Ø7Ð7Ð7Ð7Ð7Ð7Ð7Ð7ð �S˜%  ^Ô 4°d¸3À¸8´nÐ DÔEÐEÔF€ð^
ð ^
ð ^
ð ^
ð ^
ñ ^
ô ^
ð ^
ðB6(ð 6(ð 6(ð 6(ð 6(˜)ñ 6(ô 6(ð 6(ð 6(ð 6(r#   