ó
    ùŠÂje  ã                   ó    • S SK r S SKJrJrJrJr  S SKJr  \(       a  S SKJ	r	J
r
  \\\\\   \\\4   4   4   r " S S5      r " S S\5      rg)	é    N)ÚTYPE_CHECKINGÚAnyÚOptionalÚUnion)ÚQRModuleDrawer)ÚActiveWithNeighborsÚQRCodec                   ó  • \ rS rSr% SrSr\\   \S'   Sr	\\
\      \S'   SrSrSrS r\R                   S	 5       rS
\S\SS4S jrS r\R                   SS j5       rS r\R                   S\4S j5       rS rS rSS jrS
\S\4S jrSrg)Ú	BaseImageé   z!
Base QRCode image output class.
NÚkindÚallowed_kindsFTc                 óþ   • Xl         X l        X0l        U R                  U R                   S-  -   U R                  -  U l        UR	                  S5      U l        U R                  " S0 UD6U l        U R                  5         g )Né   Úqrcode_modules© )	ÚborderÚwidthÚbox_sizeÚ
pixel_sizeÚpopÚmodulesÚ	new_imageÚ_imgÚinit_new_image)Úselfr   r   r   ÚargsÚkwargss         ÚG/var/www/website/venv/lib/python3.13/site-packages/qrcode/image/base.pyÚ__init__ÚBaseImage.__init__   sb   € ØŒØŒ
Ø ŒØŸ:™:¨¯©°a©Ñ7¸4¿=¹=ÑHˆŒØ—z‘zÐ"2Ó3ˆŒØ—N’NÑ, VÑ,ˆŒ	Ø×ÑÕó    c                 ó   • g)z)
Draw a single rectangle of the QR code.
Nr   ©r   ÚrowÚcols      r   ÚdrawrectÚBaseImage.drawrect!   ó   � r"   r%   r&   Úqrr	   c                 ó   • [        S5      e)zF
Draw a single rectangle of the QR code given the surrounding context
zBaseImage.drawrect_context©ÚNotImplementedError)r   r%   r&   r*   s       r   Údrawrect_contextÚBaseImage.drawrect_context'   s   € ô "Ð">Ó?Ð?r"   c                 ó   • [        S5      e)z$
Processes QR code after completion
zBaseImage.drawimager,   ©r   s    r   ÚprocessÚBaseImage.process-   s   € ô "Ð"7Ó8Ð8r"   c                 ó   • g)z
Save the image file.
Nr   )r   Ústreamr   s      r   ÚsaveÚBaseImage.save3   r)   r"   c                 ó¸   • X R                   -   U R                  -  nXR                   -   U R                  -  nX44X0R                  -   S-
  X@R                  -   S-
  44$ )zo
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_boxÚBaseImage.pixel_box9   s]   € ð
 —;‘;Ñ $§-¡-Ñ/ˆØ—;‘;Ñ $§-¡-Ñ/ˆàˆFØ—‘Ñ Ñ" A¯©Ñ$5¸Ñ$9Ð:ð
ð 	
r"   Úreturnc                 ó   • g)zD
Build the image class. Subclasses should return the class created.
Nr   ©r   r   s     r   r   ÚBaseImage.new_imageE   r)   r"   c                 ó   • g ©Nr   r1   s    r   r   ÚBaseImage.init_new_imageK   s   € Ør"   c                 ó   • U R                   $ )z0
Return the image class for further processing.
)r   r@   s     r   Ú	get_imageÚBaseImage.get_imageN   s   € ð �y‰yÐr"   c                 ó  • Uc  U R                   nU R                  (       + =(       d    XR                  ;   nU(       a  U" U5      nU(       d  XR                  ;   nU(       d$  [        S[        U 5      R                   SU 35      eU$ )z
Get the image type.
zCannot set z	 type to )r   r   Ú
ValueErrorÚtypeÚ__name__)r   r   Ú	transformÚalloweds       r   Ú
check_kindÚBaseImage.check_kindT   sv   € ð ‰<Ø—9‘9ˆDØ×(Ñ(Ô(×F¨D×4FÑ4FÑ,FˆÞÙ˜T“?ˆDÞØ×"4Ñ"4Ñ4�ÞÜ˜{¬4°«:×+>Ñ+>Ð*?¸yÈÈÐOÓPÐPØˆr"   c                 ó¸   • US:  =(       a    US:  =(       dC    US:  =(       a    U R                   U-
  S:  =(       d    U R                   U-
  S:  =(       a    US:  $ )z2
Find whether the referenced module is in an eye.
é   é   )r   r$   s      r   Úis_eyeÚBaseImage.is_eyec   sW   € ð
 �1‰W× ˜˜q™÷ 2Ø�a‘×0˜DŸJ™J¨Ñ,¨qÑ0÷2à—
‘
˜SÑ  1Ñ$×0¨¨q©ð	
r"   )r   r   r   r   r   r   rC   )rK   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   ÚstrÚ__annotations__r   ÚtupleÚneeds_contextÚneeds_processingÚneeds_drawrectr    ÚabcÚabstractmethodr'   Úintr.   r2   r6   r<   r   r   r   rF   rN   rS   Ú__static_attributes__r   r"   r   r   r      sÞ   ‡ ñð €Dˆ(�3‰-ÓØ*.€M�8˜E #™JÑ'Ó.Ø€MØÐØ€Nòð 	×Ññó ðð
@ Cð @¨cð @°xô @ò9ð 	×Ñóó ðò


ð 	×Ñð Só ó ðò
òôð
˜#ð 
 C÷ 
r"   r   c                   óð   ^ • \ rS rSr% \\   \S'   0 r\\S'   S\4S jr	S\4S jr
SrS\S	'   S\S
'   SSS.S	\\\S4   S
\\\S4   4U 4S jjjrS\\\S4   S\\   4S jrU 4S jrS\S\SS4S jrSrU =r$ )ÚBaseImageWithDrawerén   Údefault_drawer_classÚdrawer_aliasesr>   c                 ó"   • U R                  5       $ rC   ©rf   r1   s    r   Úget_default_module_drawerÚ-BaseImageWithDrawer.get_default_module_drawerr   ó   € Ø×(Ñ(Ó*Ð*r"   c                 ó"   • U R                  5       $ rC   ri   r1   s    r   Úget_default_eye_drawerÚ*BaseImageWithDrawer.get_default_eye_draweru   rl   r"   Tr   Úmodule_drawerÚ
eye_drawerN)rp   rq   c                óÚ   >• U R                  U5      =(       d    U R                  5       U l        U R                  U5      =(       d    U R                  5       U l        [
        TU ]  " U0 UD6  g rC   )Ú
get_drawerrj   rp   rn   rq   Úsuperr    )r   rp   rq   r   r   Ú	__class__s        €r   r    ÚBaseImageWithDrawer.__init__}   sY   ø€ ð �O‰O˜MÓ*×N¨d×.LÑ.LÓ.Nð 	Ôð Ÿ/™/¨*Ó5×V¸×9TÑ9TÓ9VˆŒÜ‰Ò˜$Ð) &Ó)r"   Údrawerc                 ób   • [        U[        5      (       d  U$ U R                  U   u  p#U" S0 UD6$ )Nr   )Ú
isinstancerY   rg   )r   rw   Ú
drawer_clsr   s       r   rs   ÚBaseImageWithDrawer.get_drawer�   s7   € ô ˜&¤#×&Ñ&ØˆMØ!×0Ñ0°Ñ8Ñˆ
ÙÑ#˜FÑ#Ð#r"   c                 ó„   >• U R                   R                  U S9  U R                  R                  U S9  [        TU ]  5       $ )N)Úimg)rp   Ú
initializerq   rt   r   )r   ru   s    €r   r   Ú"BaseImageWithDrawer.init_new_image•   s=   ø€ Ø×Ñ×%Ñ%¨$Ð%Ñ/Ø�‰×"Ñ" tÐ"Ñ,ä‰wÑ%Ó'Ð'r"   r%   r&   r*   r	   c                 ó  • U R                  X5      nU R                  X5      (       a  U R                  OU R                  nUR                  (       a  UR                  X5      O[        UR                  U   U   5      nUR                  XF5        g rC   )	r<   rS   rq   rp   Úneeds_neighborsÚactive_with_neighborsÚboolr   r'   )r   r%   r&   r*   Úboxrw   Ú	is_actives          r   r.   Ú$BaseImageWithDrawer.drawrect_context›   sr   € Ø�n‰n˜SÓ&ˆØ$(§K¡K°×$9Ñ$9�—’¸t×?QÑ?Qˆð ×%×%ð ×$Ñ$ SÔ.ä�b—j‘j ‘o cÑ*Ó+ð 	ð 	�‰˜Õ'r"   )rq   rp   )rK   rU   rV   rW   rJ   r   rZ   rg   ÚDrawerAliasesrj   rn   r\   r   rY   r    r   rs   r   ra   r.   rb   Ú__classcell__)ru   s   @r   rd   rd   n   sË   ø‡ Ø˜~Ñ.Ó.Ø$&€N�MÓ&ð+¨>ô +ð+¨ô +ð €Mà#Ó#Ø Ó ð
 ;?Ø7;ò	*ð ˜^¨S°$Ð6Ñ7ð*ð ˜.¨#¨tÐ3Ñ4÷	*ð *ð $Ø˜N¨C°Ð5Ñ6ð$à	�.Ñ	!ô$õ(ð	( Cð 	(¨cð 	(°x÷ 	(ò 	(r"   rd   )r_   Útypingr   r   r   r   Ú&qrcode.image.styles.moduledrawers.baser   Úqrcode.mainr   r	   ÚdictrY   r[   rJ   r‡   r   rd   r   r"   r   Ú<module>r�      sX   ðÛ 
ß 6Ó 6å Aæß7ð �S˜%  ^Ñ 4°d¸3À¸8±nÐ DÑEÐEÑF€÷^
ñ ^
ôB6(˜)õ 6(r"   