§
    §‘Új�  ã                   óZ   — d dl mZ d dlmZmZ ddlmZmZ ddlm	Z	  G d„ de	¦  «        Z
dS )	é    )ÚSequence)ÚAnyÚUnioné   )ÚFloatObjectÚNumberObject)ÚArrayObjectc                   óV  — e Zd ZdZdee         ddfd„Zdedeee	f         fd„Z
ded	edd fd
„Zdefd„Zedefd„¦   «         Zej        deddfd„¦   «         Zedefd„¦   «         Zej        deddfd„¦   «         Zedefd„¦   «         Zej        deddfd„¦   «         Zedefd„¦   «         Zej        deddfd„¦   «         Zedeeef         fd„¦   «         Zej        deeef         ddfd„¦   «         Zedeeef         fd„¦   «         Zej        deeef         ddfd„¦   «         Zedeeef         fd„¦   «         Zej        deeef         ddfd„¦   «         Zedeeef         fd„¦   «         Zej        deeef         ddfd„¦   «         Zedefd„¦   «         Zedefd„¦   «         ZdS )ÚRectangleObjectap  
    This class is used to represent *page boxes* in pypdf.

    These boxes include:

    * :attr:`artbox <pypdf._page.PageObject.artbox>`
    * :attr:`bleedbox <pypdf._page.PageObject.bleedbox>`
    * :attr:`cropbox <pypdf._page.PageObject.cropbox>`
    * :attr:`mediabox <pypdf._page.PageObject.mediabox>`
    * :attr:`trimbox <pypdf._page.PageObject.trimbox>`
    ÚarrÚreturnNc                 óž   ‡ — t          |¦  «        x}dk    rt          d|› d|› �¦  «        ‚t          j        ‰ ˆ fd„|D ¦   «         ¦  «         d S )Né   z*Expected four values for a rectangle, got z: c                 ó:   •— g | ]}‰                      |¦  «        ‘ŒS © ©Ú_ensure_is_number©Ú.0ÚxÚselfs     €úŠ/Users/tedpeters/Documents/Projects/Claude Projects/TPC Houses/house-viewer/.venv/lib/python3.11/site-packages/pypdf/generic/_rectangle.pyú
<listcomp>z,RectangleObject.__init__.<locals>.<listcomp>   s'   ø€ Ð#KÐ#KÐ#KÀ! D×$:Ò$:¸1Ñ$=Ô$=Ð#KÐ#KÐ#Kó    )ÚlenÚ
ValueErrorr	   Ú__init__)r   r   Úlengths   `  r   r   zRectangleObject.__init__   sg   ø€ Ý˜#‘h”hÐˆF 1Ò$Ð$ÝÐYÈ&ÐYÐYÐTWÐYÐYÑZÔZÐZåÔ˜TÐ#KÐ#KÐ#KÐ#KÀsÐ#KÑ#KÔ#KÑLÔLÐLÐLÐLr   Úvaluec                 ó\   — t          |t          t          f¦  «        st          |¦  «        S |S ©N)Ú
isinstancer   r   ©r   r   s     r   r   z!RectangleObject._ensure_is_number   s,   € Ý˜%¥+­|Ð!<Ñ=Ô=ð 	&Ý˜uÑ%Ô%Ð%Øˆr   ÚsxÚsyc                 óÐ   — t          t          | j        ¦  «        |z  t          | j        ¦  «        |z  t          | j        ¦  «        |z  t          | j        ¦  «        |z  f¦  «        S r!   )r   ÚfloatÚleftÚbottomÚrightÚtop)r   r$   r%   s      r   ÚscalezRectangleObject.scale    s_   € Ýå�d”iÑ Ô  2Ñ%Ý�d”kÑ"Ô" RÑ'Ý�d”jÑ!Ô! BÑ&Ý�d”h‘” "Ñ$ð	ñ
ô 
ð 	
r   c                 ó(   — dt          | ¦  «        ›d�S )NzRectangleObject(ú))Úlist©r   s    r   Ú__repr__zRectangleObject.__repr__*   s   € Ø1¥$ t¡*¤*Ð1Ð1Ð1Ð1r   c                 ó   — | d         }|S ©Nr   r   r#   s     r   r(   zRectangleObject.left-   ó   € à! !œWˆØˆr   Úfc                 ó*   — t          |¦  «        | d<   d S r3   ©r   ©r   r5   s     r   r(   zRectangleObject.left2   ó   € å˜a‘.”.ˆˆQ‰ˆˆr   c                 ó   — | d         }|S ©Nr   r   r#   s     r   r)   zRectangleObject.bottom6   r4   r   c                 ó*   — t          |¦  «        | d<   d S r;   r7   r8   s     r   r)   zRectangleObject.bottom;   r9   r   c                 ó   — | d         }|S ©Né   r   r#   s     r   r*   zRectangleObject.right?   r4   r   c                 ó*   — t          |¦  «        | d<   d S r>   r7   r8   s     r   r*   zRectangleObject.rightD   r9   r   c                 ó   — | d         }|S ©Né   r   r#   s     r   r+   zRectangleObject.topH   r4   r   c                 ó*   — t          |¦  «        | d<   d S rB   r7   r8   s     r   r+   zRectangleObject.topM   r9   r   c                 ó   — | j         | j        fS )zj
        Property to read and modify the lower left coordinate of this box
        in (x,y) form.
        )r(   r)   r0   s    r   Ú
lower_leftzRectangleObject.lower_leftQ   s   € ð Œy˜$œ+Ð%Ð%r   c                 ó6   ‡ — ˆ fd„|D ¦   «         \  ‰ d<   ‰ d<   d S )Nc              3   óB   •K  — | ]}‰                      |¦  «        V — Œd S r!   r   r   s     €r   ú	<genexpr>z-RectangleObject.lower_left.<locals>.<genexpr>[   ó1   øè è € ÐEÐE¸!˜D×2Ò2°1Ñ5Ô5ÐEÐEÐEÐEÐEÐEr   r   r   r   r#   s   ` r   rF   zRectangleObject.lower_leftY   ó-   ø€ àEÐEÐEÐE¸uÐEÑEÔEÑˆˆQ‰��a‘��r   c                 ó   — | j         | j        fS )zk
        Property to read and modify the lower right coordinate of this box
        in (x,y) form.
        )r*   r)   r0   s    r   Úlower_rightzRectangleObject.lower_right]   s   € ð Œz˜4œ;Ð&Ð&r   c                 ó6   ‡ — ˆ fd„|D ¦   «         \  ‰ d<   ‰ d<   d S )Nc              3   óB   •K  — | ]}‰                      |¦  «        V — Œd S r!   r   r   s     €r   rI   z.RectangleObject.lower_right.<locals>.<genexpr>g   rJ   r   r?   r   r   r#   s   ` r   rM   zRectangleObject.lower_righte   rK   r   c                 ó   — | j         | j        fS )zj
        Property to read and modify the upper left coordinate of this box
        in (x,y) form.
        )r(   r+   r0   s    r   Ú
upper_leftzRectangleObject.upper_lefti   s   € ð Œy˜$œ(Ð"Ð"r   c                 ó6   ‡ — ˆ fd„|D ¦   «         \  ‰ d<   ‰ d<   d S )Nc              3   óB   •K  — | ]}‰                      |¦  «        V — Œd S r!   r   r   s     €r   rI   z-RectangleObject.upper_left.<locals>.<genexpr>s   rJ   r   r   rC   r   r#   s   ` r   rQ   zRectangleObject.upper_leftq   rK   r   c                 ó   — | j         | j        fS )zk
        Property to read and modify the upper right coordinate of this box
        in (x,y) form.
        )r*   r+   r0   s    r   Úupper_rightzRectangleObject.upper_rightu   s   € ð Œz˜4œ8Ð#Ð#r   c                 ó6   ‡ — ˆ fd„|D ¦   «         \  ‰ d<   ‰ d<   d S )Nc              3   óB   •K  — | ]}‰                      |¦  «        V — Œd S r!   r   r   s     €r   rI   z.RectangleObject.upper_right.<locals>.<genexpr>   rJ   r   r?   rC   r   r#   s   ` r   rU   zRectangleObject.upper_right}   rK   r   c                 ó    — | j         | j        z
  S r!   )r*   r(   r0   s    r   ÚwidthzRectangleObject.width�   s   € àŒz˜DœIÑ%Ð%r   c                 ó    — | j         | j        z
  S r!   )r+   r)   r0   s    r   ÚheightzRectangleObject.height…   s   € àŒx˜$œ+Ñ%Ð%r   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r'   r,   Ústrr1   Úpropertyr(   Úsetterr)   r*   r+   ÚtuplerF   rM   rQ   rU   rY   r[   r   r   r   r   r      s)  € € € € € ð
ð 
ðM˜H SœMð M¨dð Mð Mð Mð Mð sð ¨u°[À,Ð5NÔ/Oð ð ð ð ð

˜ð 
 5ð 
Ð->ð 
ð 
ð 
ð 
ð2˜#ð 2ð 2ð 2ð 2ð ð�kð ð ð ñ „Xðð 
„[ð!�eð ! ð !ð !ð !ñ „[ð!ð ð˜ð ð ð ñ „Xðð „]ð!˜ð ! $ð !ð !ð !ñ „]ð!ð ð�{ð ð ð ñ „Xðð „\ð!�uð ! ð !ð !ð !ñ „\ð!ð ð�[ð ð ð ñ „Xðð 	„Zð!�Uð !˜tð !ð !ð !ñ „Zð!ð ð&˜E %¨ ,Ô/ð &ð &ð &ñ „Xð&ð ÔðF  e¨U lÔ 3ð F¸ð Fð Fð Fñ ÔðFð ð'˜U 5¨% <Ô0ð 'ð 'ð 'ñ „Xð'ð ÔðF  u¨e |Ô!4ð F¸ð Fð Fð Fñ ÔðFð ð#˜E %¨ ,Ô/ð #ð #ð #ñ „Xð#ð ÔðF  e¨U lÔ 3ð F¸ð Fð Fð Fñ ÔðFð ð$˜U 5¨% <Ô0ð $ð $ð $ñ „Xð$ð ÔðF  u¨e |Ô!4ð F¸ð Fð Fð Fñ ÔðFð ð&�uð &ð &ð &ñ „Xð&ð ð&˜ð &ð &ð &ñ „Xð&ð &ð &r   r   N)Úcollections.abcr   Útypingr   r   Ú_baser   r   Ú_data_structuresr	   r   r   r   r   ú<module>rh      s—   ðØ $Ð $Ð $Ð $Ð $Ð $Ø Ð Ð Ð Ð Ð Ð Ð à ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø )Ð )Ð )Ð )Ð )Ð )ð&ð &ð &ð &ð &�kñ &ô &ð &ð &ð &r   