§
    ¥”jÊ. ã                   ó¤  — d Z ddlZddlmZ ddlmZ ddlmZmZ ddlm	Z	 ddl
Z
ddlZddlZddlZddlmZ dd	lmZ dd
lmZmZ ddlmZ ddlmZmZmZmZ ddlmZmZ ddlmZ ddl m!Z!m"Z"m#Z# ddl$m%Z%m&Z&m'Z'm(Z( ddl)m*Z*m+Z+m,Z,m-Z-m.Z. ddl/m0Z0 ddl1m2Z2 ddl3m4Z4 ddl5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZC dZD edg d¢¦  «        ZE G d„ d¦  «        ZFd„ ZGd„ ZHd„ ZId6d „ZJd!„ ZKd7d"„ZLd#„ ZMd$„ ZNd%„ ZOd8d&„ZP G d'„ d(eQ¦  «        ZR G d)„ d*eQ¦  «        ZS G d+„ d,eQ¦  «        ZT G d-„ d.¦  «        ZUd/„ ZV	 	 	 d9d0„ZWd1„ ZXd2„ ZYd3„ ZZ	 d6d4„Z[	 	 	 	 d:d5„Z\dS );u°  Find and apply CSS.

This module takes care of steps 3 and 4 of â€œCSS 2.1 processing modelâ€�: Retrieve
stylesheets associated with a document and annotate every element with a value
for every CSS property.

https://www.w3.org/TR/CSS21/intro.html#processing-model

This module does this in more than two steps. The
:func:`get_all_computed_styles` function does everything, but it is itsef based
on other functions in this module.

é    N)Ú
namedtuple)Úgroupby)ÚDEBUGÚWARNING)Úinf)ÚImageCmsProfileé   )ÚCSS)ÚLOGGERÚPROGRESS_LOGGER)ÚFontConfiguration)ÚURLFetchingErrorÚfetchÚget_url_attributeÚurl_joiné   )ÚcountersÚmedia_queries)ÚCOMPUTER_FUNCTIONS)ÚFunctionÚ
check_mathÚ	check_var)Ú	INHERITEDÚINITIAL_NOT_COMPUTEDÚINITIAL_VALUESÚZERO_PIXELS)ÚANGLE_UNITSÚ
FONT_UNITSÚLENGTH_UNITSÚ	to_pixelsÚ
to_radians)Úpreprocess_declarations)Úpreprocess_descriptors)Úvalidate_non_shorthand)ÚEÚMINUS_INFINITYÚNANÚPIÚPLUS_INFINITYÚFontUnitInMathÚInvalidValuesÚPendingÚPercentageInMathÚ	get_angleÚget_urlÚremove_whitespaceÚsplit_on_commaÚtokenize)NÚbeforeÚafterÚmarkerz
first-linezfirst-letterzfootnote-callzfootnote-markerÚPageSelectorType)ÚsideÚblankÚfirstÚindexÚnamec                   óT   — e Zd ZdZd„ Zd
d„Z	 	 dd„Zd„ Zd„ Zd„ Z	e
d	„ ¦   «         ZdS )ÚStyleForz?Convenience function to get the computed styles for an element.c           	      ób  — i x| _         }i | _        || _        || _        t	          j        d¦  «         t          }t          |j        ||j	        ¦  «        D ]z\  }}	|	\  }
}}| 
                    |
d fi ¦  «        }t          ||¦  «        D ]F\  }}}t          d|¦  «        }|||f}|                     |d¦  «        d         }|�||k    r||f||<   ŒGŒ{|j                             ¦   «         D ]ý}
|D ]º\  }}}|j                             |
¦  «        D ]™}|\  }}}\  }}|€t          n|j                             |¦  «        }|p|}| 
                    |
j        |fi ¦  «        }|D ]F\  }}}t          ||¦  «        }|||f}|                     |d¦  «        d         }|�||k    r||f||<   ŒGŒšŒ»|
j        r|
j        j        nd }|                      |
j        |j        ||j	        |¬¦  «         Œþ|D ],\  }
}|r%|                      |
||j        |
|j	        |¬¦  «         Œ-| j                              ¦   «          d S )NzStep 3 - Applying CSSÚauthor©NNr   )ÚrootÚparentÚbase_urlÚtarget_collector)Úpseudo_typerA   rB   rC   rD   )Ú_cascaded_stylesÚ_computed_stylesÚ_sheetsÚfont_configr   Úinfor   Úfind_style_attributesÚetree_elementrC   Ú
setdefaultr"   Údeclaration_precedenceÚgetÚwrapper_elementÚiter_subtreeÚmatcherÚmatchÚlayersr:   rB   Úset_computed_stylesÚclear)ÚselfÚhtmlÚsheetsÚpresentational_hintsrI   rD   Úcascaded_stylesÚlayer_orderÚspecificityÚ
attributesÚelementÚdeclarationsrC   Ústyler;   ÚvaluesÚ
importanceÚ
precedenceÚweightÚ
old_weightÚsheetÚoriginÚsheet_specificityÚselectorÚorderrE   ÚlayerrB   s                               úf/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/weasyprint/css/__init__.pyÚ__init__zStyleFor.__init__7   sü  € ð 35Ð4ˆÔ ð !#ˆÔàˆŒØ&ˆÔåÔÐ4Ñ5Ô5Ð5ÝˆÝ'<ØÔ"Ð$8¸$¼-ñ(Iô (Ið 
	1ð 
	1Ñ#ˆK˜à.8Ñ+ˆG�\ 8Ø#×.Ò.°¸¨ÀÑCÔCˆEÝ,CØ˜lñ-,ô -,ð 1ð 1Ñ(��f˜jå3°H¸jÑIÔI�
Ø$ k°;Ð?�Ø"ŸYšY t¨\Ñ:Ô:¸1Ô=�
ØÐ%¨°vÒ)=Ð)=Ø"(¨& .�E˜$‘Køð1ð Ô+×8Ò8Ñ:Ô:ð 	Kð 	KˆGØ4:ð 9ð 9Ñ0��vÐ0à %¤× 3Ò 3°GÑ <Ô <ð 9ð 9�HØMUÑJ�K ¨Ñ5J°lÀEØ).¨¥# #¸E¼L×<NÒ<NÈuÑ<UÔ<U�KØ"3Ð"B°{�KØ+×6Ò6Ø Ô.°Ð<¸bñBô B�Eà4@ð 9ð 9Ñ0˜˜f jÝ%;¸FÀJÑ%OÔ%O˜
Ø",¨k¸;Ð!G˜Ø%*§Y¢Y¨t°\Ñ%BÔ%BÀ1Ô%E˜
Ø%Ð-°¸vÒ1EÐ1EØ*0°&¨.˜E $™Køð9ð9ð 6=´^ÐM�W”^Ô1Ð1ÈˆFØ×$Ò$ØÔ%¨DÔ,>ÀvØœÐ9Ið %ñ Kô Kð Kð Kð %4ð 	Oð 	OÑ ˆG�[Øð OØ×(Ò(Ø¨àÔ+°GØ!œ]Ð=Mð	 )ñ Oô Oð Oøð 	Ô×#Ò#Ñ%Ô%Ð%Ð%Ð%ó    Nc                 ó2  — | j                              ||f¦  «        x}rxd|d         v r|d         dk    rdD ]}t          |d|› �<   Œt          |d         ¦  «        dk    r7|d         \  }|                     d¦  «        r|d	k    rdD ]}t          |d
|› �<   Œ|S )NÚtableÚdisplayÚborder_collapseÚcollapse)ÚtopÚbottomÚleftÚrightÚpadding_r   ztable-ztable-captionÚmargin_)rG   rO   r   ÚlenÚ
startswith)rW   r_   rE   ra   r7   rr   s         rm   Ú__call__zStyleFor.__call__‰   sØ   € ØÔ)×-Ò-¨w¸Ð.DÑEÔEÐEˆ5ð 
	>Ø˜% 	Ô*Ð*Ð*¨uÐ5FÔ/GÈ:Ò/UÐ/Uà>ð ;ð ;�DÝ/:�EÐ+ TÐ+Ð+Ñ,Ð,Ý�5˜Ô#Ñ$Ô$¨Ò)Ð)Ø  Ô+‘�Ø×%Ò% hÑ/Ô/ð >°G¸Ò4NÐ4Nà Bð >ð >˜Ý2=˜Ð.¨Ð.Ð.Ñ/Ð/Øˆro   c           	      ó�  — |                       ¦   «         }|                      ¦   «         }||k    r|€|�J ‚d}	t          | j        ¦  «        }
n|€J ‚||df         }	||df         }
|                     ||fi ¦  «        }t          |	||||
|| j        ¦  «        x}|||f<   |r%|d         r|                     |d         ¦  «         dS dS dS )a!  Set the computed values of styles to ``element``.

        Take the properties left by ``apply_style_rule`` on an element or
        pseudo-element and assign computed values with respect to the cascade,
        declaration priority (ie. ``!important``) and selector specificity.

        NÚanchor)Úget_cascaded_stylesÚget_computed_stylesÚInitialStylerI   rO   ÚComputedStyleÚcollect_anchor)rW   r_   rB   rA   rE   rC   rD   r[   Úcomputed_stylesÚparent_styleÚ
root_styleÚcascadedÚcomputeds                rm   rU   zStyleFor.set_computed_styles—   s  € ð ×2Ò2Ñ4Ô4ˆØ×2Ò2Ñ4Ô4ˆØ�dŠ?ˆ?˜{Ð2Ø�>�>�>ØˆLÝ% dÔ&6Ñ7Ô7ˆJˆJàÐ%Ð%Ð%Ø*¨6°4¨<Ô8ˆLØ(¨¨t¨Ô4ˆJà"×&Ò&¨°Ð'=¸rÑBÔBˆÝ;HØ˜( G¨[¸*ÀhØÔñ<ô <ð 	ˆ�? 7¨KÐ#7Ñ8ð ð 	@ ¨Ô 2ð 	@Ø×+Ò+¨H°XÔ,>Ñ?Ô?Ð?Ð?Ð?ð	@ð 	@ð 	@ð 	@ro   c                 óX  — d }| j         D ]Ÿ\  }}}|j        D ]‘\  }}}|D ]ˆ}	|	\  }
}}|                      ||¦  «        rj|p|
}
| j                             ||fi ¦  «        }|D ]F\  }}}t          ||¦  «        }|||
f}|                     |d¦  «        d         }|�||k    r||f||<   ŒGŒ‰Œ’Œ d S )Nr@   r   )rH   Ú
page_rulesÚ_page_type_matchrF   rM   rN   rO   )rW   Ú	page_typer\   rg   rh   ri   Ú_ruleÚselector_listr`   rj   r]   rE   Úpage_selector_typera   r;   rb   rc   rd   re   rf   s                       rm   Úadd_page_declarationszStyleFor.add_page_declarations²   s  € àˆØ04´ð 	=ð 	=Ñ,ˆE�6Ð,Ø6;Ô6Fð =ð =Ñ2��} lØ -ð =ð =�HØCKÑ@�K Ð.@Ø×,Ò,Ð-?ÀÑKÔKð 	=Ø&7Ð&F¸;˜Ø $Ô 5× @Ò @Ø&¨Ð4°bñ!:ô !:˜à8Dð =ð =Ñ4˜D &¨*Ý)?ÀÈ
Ñ)SÔ)S˜JØ&0°+¸{Ð%K˜FØ).¯ª°4¸Ñ)FÔ)FÀqÔ)I˜JØ)Ð1°ZÀ6Ò5IÐ5IØ.4°f¨n  d¡øøð=ð=ð	=ð 	=ro   c                 ó   — | j         S ©N)rF   ©rW   s    rm   r€   zStyleFor.get_cascaded_stylesÄ   ó   € ØÔ$Ð$ro   c                 ó   — | j         S r“   )rG   r”   s    rm   r�   zStyleFor.get_computed_stylesÇ   r•   ro   c                 ó¬  — | j         d |j         fvrdS | j        d |j        fvrdS | j        d |j        dk    fvrdS | j        d |j        fvrdS | j        �€| j        \  }}}|€*|j        }|dz   |z
  }|dk    r|dk    n||z  dk    o||z   S ||j        k    rdS |j        D ]2\  }}||k    rŒ|dz   |z
  }|dk    r|dk    rn||z  dk    r||z  s dS Œ3dS dS )NFr   r   T)r7   r8   r9   r:   r;   Úgroups)r�   r�   ÚaÚbr;   r:   ÚoffsetÚ
group_names           rm   rŒ   zStyleFor._page_type_matchÊ   sG  € àÔ"¨4°´Ð*@Ð@Ð@Ø�5ØÔ#¨D°)´/Ð+BÐBÐBØ�5ØÔ#¨D°)´/ÀQÒ2FÐ+GÐGÐGØ�5ØÔ"¨4°´Ð*@Ð@Ð@Ø�5ØÔ#Ð/Ø+Ô1‰JˆAˆq�$Øˆ|Ø!œ�Ø ™ Q™�Ø&'¨1¢f f�v ’{�{°6¸A±:À²?Ð3UÈ6ÐTUÉ:À~ÐVØ�y”~Ò%Ð%Ø�uØ%.Ô%5ð  ð  Ñ!�
˜EØ˜:Ò%Ð%ØØ ™ Q™�Ø#$¨¢6 6�F˜a’K�K�K°¸±
¸a²°ÈÐQRÉ
°Ø˜4˜4øØ�5Øˆtro   r“   ©NNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__rn   r}   rU   r‘   r€   r�   ÚstaticmethodrŒ   © ro   rm   r=   r=   5   s«   € € € € € ØIÐIðP&ð P&ð P&ðdð ð ð ð KOØ<@ð@ð @ð @ð @ð6=ð =ð =ð$%ð %ð %ð%ð %ð %ð ðð ñ „\ðð ð ro   r=   c                 óš   — | j         r| j         gng }| D ]#}|j        r|                     |j        ¦  «         Œ$d                     |¦  «        S )z9Return the text directly in the element, not descendants.Ú )ÚtextÚtailÚappendÚjoin)r_   ÚcontentÚchilds      rm   Úget_child_textr¬   æ   sV   € à '¤Ð4ˆwŒ|ˆnˆn°"€GØð 'ð 'ˆØŒ:ð 	'Ø�NŠN˜5œ:Ñ&Ô&Ð&øØ�7Š7�7ÑÔÐro   c                 óP   — d}| |v r|s|}n| dk    r|dk    r|dk    r|}n||z  }|S )N)Útext_decoration_colorÚtext_decoration_styleÚtext_decoration_thicknessÚtext_decoration_lineÚnoner£   )ÚkeyÚvalueÚparent_valuerˆ   Útext_propertiess        rm   Útext_decorationr·   ï   sY   € ð
W€Oà
ˆoÐÐØð 	!Ø ˆEøØ	Ð&Ò	&Ð	&Ø˜6Ò!Ð!Ø˜ŠˆØ$��à Ñ,�Ø€Lro   c	              #   ót  K  — ddl m}	 |                      dd¦  «        D �]—}
|
j        }|                     dd¦  «                             dd¦  «        d	                              ¦   «         }|dk    rŒS|                     d
d¦  «                             ¦   «         pd}d„ |                     d¦  «        D ¦   «         }t          j        ||¦  «        sŒ²|j	        dk    r,t          |¦  «        }t          |||||||||¬¦	  «	        }|V — Œé|j	        dk    r£|                     d¦  «        rŽ |	|d¦  «        r |	|d¦  «        r�Œ#t          |d|¦  «        }|�a	 t          ||||||||d¬¦	  «	        V — �ŒS# t          $ r7}t          j        d||¦  «         t          j        d|¬¦  «         Y d}~�Œ�d}~ww xY w�Œ™dS )zgYield the stylesheets in ``element_tree``.

    The output order is the same as the source order.

    r	   )Úelement_has_link_typera   ÚlinkÚtypeztext/cssú;r   r   Úmediar¥   Úallc                 ó6   — g | ]}|                      ¦   «         ‘ŒS r£   )Ústrip)Ú.0Ú
media_types     rm   ú
<listcomp>z$find_stylesheets.<locals>.<listcomp>  s$   € ÐLÐLÐL¨
�×!Ò!Ñ#Ô#ÐLÐLÐLro   ú,)	ÚstringrC   Úurl_fetcherrÂ   rI   Úcounter_styler‹   Úcolor_profilesrT   ÚhrefÚ
stylesheetÚ	alternateNT)	ÚurlrÆ   rÂ   rI   rÇ   rÈ   r‹   rT   Ú_check_mime_typez#Failed to load stylesheet at %s: %súError while loading stylesheet:©Úexc_info)rX   r¹   Ú	query_allrL   rO   ÚsplitrÀ   r   Úevaluate_media_queryÚtagr¬   r
   r   r   r   ÚerrorÚdebug)rP   Údevice_media_typerÆ   rC   rI   rÇ   rÈ   r‹   rT   r¹   Úwrapperr_   Ú	mime_typeÚ
media_attrr½   rª   ÚcssrÉ   Ú	exceptions                      rm   Úfind_stylesheetsrÝ     sN  è è € ð -Ð,Ð,Ð,Ð,Ð,à"×,Ò,¨W°fÑ=Ô=ð $Xñ $XˆØÔ'ˆØ—K’K ¨
Ñ3Ô3×9Ò9¸#¸qÑAÔAÀ!ÔD×JÒJÑLÔLˆ	à˜
Ò"Ð"ØØ—[’[ ¨"Ñ-Ô-×3Ò3Ñ5Ô5Ð>¸ˆ
ØLÐL°j×6FÒ6FÀsÑ6KÔ6KÐLÑLÔLˆÝÔ1°%Ð9JÑKÔKð 	ØØŒ;˜'Ò!Ð!õ % WÑ-Ô-ˆGõ Ø¨Ø'Ð4EØ'°}Ø%°nÈVð	Uñ Uô UˆCð
 ˆIˆIˆIˆIØŒ[˜FÒ"Ð" w§{¢{°6Ñ':Ô':Ð"Ø(Ð(¨°,Ñ?Ô?ð Ø)Ð)¨'°;Ñ?Ô?ðáÝ$ W¨f°hÑ?Ô?ˆDØÐðXÝØ ¨kÐFWØ$/¸}Ø'5À*Ø%¸ð	>ñ >ô >ð >ð >ð >ñ >øõ
 (ð Xð Xð XÝ”LÐ!FÈÈiÑXÔXÐXÝ”LÐ!BÈYÐWÑWÔWÐWÐWÐWÐWÐWÑWøøøøðXøøøùðE$Xð $Xs   ÅE2Å2
F3Å<,F.Æ.F3Fc              #   ó¢  ‡K  — ˆfd„}|                       ¦   «         D �]°}d}|                     d¦  «        }|r| |||¦  «        fV — |sŒ/d}|j        dk    �rdD ]Y\  }}d}d|› �|› d�fD ]5}	|                     |	¦  «        rd	|› d
|                     |	¦  «        › d�} nŒ6|r| |||¦  «        fV — ŒZ|                     d¦  «        r)d|                     d¦  «        › d�}| |||¦  «        fV — |                     d¦  «        r(d|                     d¦  «        › �}| |||¦  «        fV — |                     d¦  «        r(d|                     d¦  «        › �}| |||¦  «        fV — �ŒS|j        dk    r| ||d¦  «        fV — �Œp|j        dk    rY|                     dd¦  «                             ¦   «         }
|
dk    r| ||d¦  «        fV — �Œ»|
dv r| ||d|
› �¦  «        fV — �ŒÔ|j        dk    �r†|                     d¦  «        r&| ||d|                     d¦  «        › �¦  «        fV — |                     d¦  «        r&| ||d|                     d¦  «        › �¦  «        fV — |                     d¦  «        rù|                     d¦  «                             ¦   «         }|                     d ¦  «        }|                     d!¦  «        }|s|r|d"d…                              ¦   «         }	 t          |¦  «        }d#d$d%d&d'd(d)d*œ}|r|d+z  }n|r|d+z  }t          d"t          d,|¦  «        ¦  «        }| ||d-||         › �¦  «        fV — �Œ># t          $ r t          j        d.|¦  «         Y �Œ`w xY w�Œf|j        d/k    �r8|                     d0¦  «        r'| ||d1|                     d0¦  «        › d�¦  «        fV — |                     d2¦  «        rk|                     d2¦  «        }|                     ¦   «         r|dz  }|                      ¦   «         D ](}|j        d3v r| ||d4|› d5|› d6|› d7|› d8�	¦  «        fV — Œ)|                     d9¦  «        rD|                     d9¦  «        }|                     ¦   «         r|dz  }| ||d:|› d;|› �¦  «        fV — |                     d<¦  «        rD|                     d<¦  «        }|                     ¦   «         r|dz  }| ||d=|› d>|› �¦  «        fV — |                     d?¦  «        rTd@|                     d?¦  «        › �}|                     d?¦  «                             ¦   «         r|dz  }| |||¦  «        fV — |                     dA¦  «        rTdB|                     dA¦  «        › �}|                     dA¦  «                             ¦   «         r|dz  }| |||¦  «        fV — |                     d¦  «        r)d|                     d¦  «        › d�}| |||¦  «        fV — |                     d¦  «        r(d|                     d¦  «        › �}| |||¦  «        fV — |                     dC¦  «        r(dD|                     dC¦  «        › �}| |||¦  «        fV — |                     dE¦  «        r)dF|                     dE¦  «        › d�}| |||¦  «        fV — �Œª|j        dGv �r·|                     dd¦  «                             ¦   «         }
|
dk    r| ||d¦  «        fV — n|
dv r| ||d|
› �¦  «        fV — |                     d¦  «        r)d|                     d¦  «        › d�}| |||¦  «        fV — |                     d¦  «        r(d|                     d¦  «        › �}| |||¦  «        fV — |j        dHv rÛ|                     dA¦  «        rTdB|                     dA¦  «        › �}|                     dA¦  «                             ¦   «         r|dz  }| |||¦  «        fV — |j        d3v ri|                     d?¦  «        rTd@|                     d?¦  «        › �}|                     d?¦  «                             ¦   «         r|dz  }| |||¦  «        fV — �Œk|j        dIk    rY|                     dd¦  «                             ¦   «         }
|
dk    r| ||d¦  «        fV — �Œ¶|
dv r| ||d|
› �¦  «        fV — �ŒÏ|j        dJk    rk|                     d?¦  «        rTd@|                     d?¦  «        › �}|                     d?¦  «                             ¦   «         r|dz  }| |||¦  «        fV — �	ŒE|j        dKk    �r†dL}|                     d¦  «        rI	 t          |                     d¦  «        ¦  «        }n%# t          $ r t          j        d.|¦  «         Y nw xY w|                     d¦  «        |                     dM¦  «        fdNk    r|d"k    r| ||dF|dOz  › d�¦  «        fV — n4|d"k    r| ||dP¦  «        fV — n|d"k    r| ||dB|dOz
  › d�¦  «        fV — |                     d?¦  «        rTd@|                     d?¦  «        › �}|                     d?¦  «                             ¦   «         r|dz  }| |||¦  «        fV — |                     d¦  «        r&| ||d|                     d¦  «        › �¦  «        fV — �
Œ×|j        dQv �r?|j        dRk    s-|                     dSd¦  «                             ¦   «         dTk    �r|                     dd¦  «                             ¦   «         }
|
dUv r| ||dV¦  «        fV — |                     d9¦  «        rD|                     d9¦  «        }|                     ¦   «         r|dz  }| ||d:|› d;|› �¦  «        fV — |                     d<¦  «        rD|                     d<¦  «        }|                     ¦   «         r|dz  }| ||d=|› d>|› �¦  «        fV — |                     d?¦  «        rTd@|                     d?¦  «        › �}|                     d?¦  «                             ¦   «         r|dz  }| |||¦  «        fV — |                     dA¦  «        rTdB|                     dA¦  «        › �}|                     dA¦  «                             ¦   «         r|dz  }| |||¦  «        fV — |j        dWv r<|                     dE¦  «        r'| ||dF|                     dE¦  «        › dX�¦  «        fV — �Œ |j        dYk    r>|                     dZ¦  «        r'| ||d[|                     dZ¦  «        › d\�¦  «        fV — �Œi|j        d]k    r<|                     d^¦  «        r'| ||d[|                     d^¦  «        › d_�¦  «        fV — �Œ²dS )`a  Yield ``specificity, (element, declaration, base_url)`` rules.

    Rules from "style" attribute are returned with specificity
    ``(1, 0, 0)``.

    If ``presentational_hints`` is ``True``, rules from presentational hints
    are returned with specificity ``(0, 0, 0)``.

    c                 ó6   •— t          j        |¦  «        }| |‰fS r“   )Útinycss2Úparse_blocks_contents)r_   Ústyle_attributer`   rC   s      €rm   Úcheck_style_attributez4find_style_attributes.<locals>.check_style_attribute<  s    ø€ ÝÔ5°oÑFÔFˆØ˜ hÐ.Ð.ro   )r   r   r   ra   ©r   r   r   Úbody))Úheightru   )ræ   rv   )Úwidthrw   )rç   rx   NÚmarginzmargin-ú:ÚpxÚ
backgroundzbackground-image:url(ú)Úbgcolorzbackground-color:r¦   zcolor:Úcenterztext-align:centerÚdivÚalignr¥   Úmiddle)rî   rw   rx   Újustifyztext-align:ÚfontÚcolorÚfacezfont-family:Úsizeú+ú-r   zx-smallÚsmallÚmediumÚlargezx-largezxx-largeÚ48px)r   r	   é   é   é   é   é   rý   r  z
font-size:zInvalid value for size: %srq   Úcellspacingzborder-spacing:Úcellpadding)ÚtdÚthzpadding-left:z;padding-right:z;padding-top:z;padding-bottom:r¼   Úhspacezmargin-left:z;margin-right:Úvspacezmargin-top:z;margin-bottom:rç   zwidth:ræ   zheight:Úbordercolorzborder-color:Úborderzborder-width:)Útrr  r  ÚtheadÚtbodyÚtfoot)r
  r  r  ÚcaptionÚcolÚhrr   Únoshader@   r	   zborder-bottom-width:0)ÚiframeÚappletÚembedÚimgÚinputÚobjectr  r»   Úimage)rñ   rî   zvertical-align:middle)r  r  r  zpx;border-style:solidÚolÚstartzcounter-reset:list-item z;counter-increment:list-item -1Úlir´   z;counter-increment:none)ÚiterrO   rÔ   ÚlowerrÀ   r|   ÚintÚmaxÚminÚ
ValueErrorr   ÚwarningÚisdigit)ÚtreerZ   rC   rã   r_   r]   râ   ÚpartÚpositionÚproprð   rö   Úrelative_plusÚrelative_minusÚ
font_sizesr  Ú
subelementr  r  s     `                rm   rK   rK   2  s*  øè è € ð/ð /ð /ð /ð /ð —9’9‘;”;ð q.ñ q.ˆØˆØ!Ÿ+š+ gÑ.Ô.ˆØð 	OØÐ4Ð4°W¸oÑNÔNÐNÐNÐNÐNØ#ð 	ØØˆØŒ;˜&Ò Ñ ð#;ð 	Wð 	W‘��hð #'�Ø, d˜_˜_°Ð.AÐ.AÐ.AÐBð ð �DØ—{’{ 4Ñ(Ô(ð Ø*T°HÐ*TÐ*T¸w¿{º{È4Ñ?PÔ?PÐ*TÐ*TÐ*T˜Ø˜ðð #ð WØ%Ð'<Ð'<¸WÀoÑ'VÔ'VÐVÐVÐVÐVøØ�{Š{˜<Ñ(Ô(ð SØ"V¸'¿+º+ÀlÑ:SÔ:SÐ"VÐ"VÐ"V�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜9Ñ%Ô%ð SØ"N°g·k²kÀ)Ñ6LÔ6LÐ"NÐ"N�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜6Ñ"Ô"ð SØ"@¨7¯;ª;°vÑ+>Ô+>Ð"@Ð"@�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRùàŒ[˜HÒ$Ð$ØÐ4Ð4°WÐ>QÑRÔRÐRÐRÐRÐRÑRØŒ[˜EÒ!Ð!Ø—K’K ¨Ñ,Ô,×2Ò2Ñ4Ô4ˆEØ˜Ò Ð Ø!Ð#8Ð#8¸ÐBUÑ#VÔ#VÐVÐVÐVÐVÑVØÐ@Ð@Ð@Ø!Ð#8Ð#8¸ÐBWÐPUÐBWÐBWÑ#XÔ#XÐXÐXÐXÐXùØŒ[˜FÒ"Ñ"Ø�{Š{˜7Ñ#Ô#ð >Ø!Ð#8Ð#8ØÐ< g§k¢k°'Ñ&:Ô&:Ð<Ð<ñ$>ô $>ð >ð >ð >ð >à�{Š{˜6Ñ"Ô"ð CØ!Ð#8Ð#8ØÐA¨G¯KªK¸Ñ,?Ô,?ÐAÐAñ$Cô $Cð Cð Cð Cð Cà�{Š{˜6Ñ"Ô"ð BØ—{’{ 6Ñ*Ô*×0Ò0Ñ2Ô2�Ø $§¢°Ñ 4Ô 4�Ø!%§¢°Ñ!5Ô!5�Ø ð , Nð ,Ø   œ8Ÿ>š>Ñ+Ô+�DðBÝ˜t™9œ9�Dð
 %Ø"Ø#Ø"Ø$Ø%Ø!ð"ð "�Jð %ð "Ø ™	˜˜Ø'ð "Ø ™	˜Ý˜q¥# a¨¡,¤,Ñ/Ô/�DØ%Ð'<Ð'<ØÐ!@¨j¸Ô.>Ð!@Ð!@ñ(Bô (Bð Bð Bð Bð Bñ Bøõ# "ð Gð Gð GÝ”NÐ#?ÀÑFÔFÐFÐFÑFðGøøøñBð6 Œ[˜GÒ#Ñ#Ø�{Š{˜=Ñ)Ô)ð OØ!Ð#8Ð#8ØÐM¨w¯{ª{¸=Ñ/IÔ/IÐMÐMÐMñ$Oô $Oð Oð Oð Oð Oà�{Š{˜=Ñ)Ô)ð >Ø%Ÿkšk¨-Ñ8Ô8�Ø×&Ò&Ñ(Ô(ð (Ø 4Ñ'�Kà")§,¢,¡.¤.ð >ð >�JØ!”~¨Ð5Ð5Ø)Ð+@Ð+@Ø&ð=¨Kð =ð =Ø-8ð=ð =à+6ð=ð =ð /:ð=ð =ð =ñ,>ô ,>ð >ð >ð >ð >øð �{Š{˜8Ñ$Ô$ð LØ Ÿš XÑ.Ô.�Ø—>’>Ñ#Ô#ð #Ø˜d‘N�FØ!Ð#8Ð#8ØÐJ¨FÐJÐJÀ&ÐJÐJñ$Lô $Lð Lð Lð Lð Là�{Š{˜8Ñ$Ô$ð LØ Ÿš XÑ.Ô.�Ø—>’>Ñ#Ô#ð #Ø˜d‘N�FØ!Ð#8Ð#8ØÐJ¨6ÐJÐJÀ&ÐJÐJñ$Lô $Lð Lð Lð Lð Là�{Š{˜7Ñ#Ô#ð SØ"A¨7¯;ª;°wÑ+?Ô+?Ð"AÐ"A�Ø—;’;˜wÑ'Ô'×/Ò/Ñ1Ô1ð ,Ø# tÑ+�OØ!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜8Ñ$Ô$ð SØ"C¨G¯KªK¸Ñ,AÔ,AÐ"CÐ"C�Ø—;’;˜xÑ(Ô(×0Ò0Ñ2Ô2ð ,Ø# tÑ+�OØ!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜<Ñ(Ô(ð SàH¨G¯KªK¸Ñ,EÔ,EÐHÐHÐHð  à!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜9Ñ%Ô%ð SØ"N°g·k²kÀ)Ñ6LÔ6LÐ"NÐ"N�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜=Ñ)Ô)ð SØ"N°'·+²+¸mÑ2LÔ2LÐ"NÐ"N�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜8Ñ$Ô$ð SØ"K°'·+²+¸hÑ2GÔ2GÐ"KÐ"KÐ"K�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRùØŒ[ÐIÐIÑIØ—K’K ¨Ñ,Ô,×2Ò2Ñ4Ô4ˆEà˜Ò Ð Ø!Ð#8Ð#8ØÐ0ñ$2ô $2ð 2ð 2ð 2ð 2ð 2àÐ@Ð@Ð@Ø!Ð#8Ð#8¸ÐBWÐPUÐBWÐBWÑ#XÔ#XÐXÐXÐXÐXØ�{Š{˜<Ñ(Ô(ð SØ"V¸'¿+º+ÀlÑ:SÔ:SÐ"VÐ"VÐ"V�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜9Ñ%Ô%ð SØ"N°g·k²kÀ)Ñ6LÔ6LÐ"NÐ"N�Ø!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØŒ{Ð0Ð0Ð0Ø—;’;˜xÑ(Ô(ð WØ&G°·²¸HÑ0EÔ0EÐ&GÐ&G�OØ—{’{ 8Ñ,Ô,×4Ò4Ñ6Ô6ð 0Ø'¨4Ñ/˜Ø%Ð'<Ð'<¸WÀoÑ'VÔ'VÐVÐVÐVÐVØ”; ,Ð.Ð.Ø—{’{ 7Ñ+Ô+ð 6Ø*I°7·;²;¸wÑ3GÔ3GÐ*IÐ*I˜Ø"Ÿ;š; wÑ/Ô/×7Ò7Ñ9Ô9ð 4Ø+¨tÑ3˜OØ)Ð+@Ð+@Ø# _ñ,6ô ,6ð 6ð 6ð 6ð 6ùàŒ[˜IÒ%Ð%Ø—K’K ¨Ñ,Ô,×2Ò2Ñ4Ô4ˆEà˜Ò Ð Ø!Ð#8Ð#8¸ÐBUÑ#VÔ#VÐVÐVÐVÐVÑVØÐ@Ð@Ð@Ø!Ð#8Ð#8¸ÐBWÐPUÐBWÐBWÑ#XÔ#XÐXÐXÐXÐXùØŒ[˜EÒ!Ð!Ø�{Š{˜7Ñ#Ô#ð SØ"A¨7¯;ª;°wÑ+?Ô+?Ð"AÐ"A�Ø—;’;˜wÑ'Ô'×/Ò/Ñ1Ô1ð ,Ø# tÑ+�OØ!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRùØŒ[˜DÒ Ñ ØˆDØ�{Š{˜6Ñ"Ô"ð GðGÝ˜wŸ{š{¨6Ñ2Ô2Ñ3Ô3�D�DøÝ!ð Gð Gð GÝ”NÐ#?ÀÑFÔFÐFÐFÐFðGøøøà—’˜GÑ$Ô$ g§k¢k°)Ñ&<Ô&<Ð=ÀÒMÐMØ˜1’9�9Ø%Ð'<Ð'<ØÐ!=°¸±Ð!=Ð!=Ð!=ñ(?ô (?ð ?ð ?ð ?ð ?øà˜’�Ø!Ð#8Ð#8ØÐ4ñ$6ô $6ð 6ð 6ð 6ð 6ð 6à˜’�Ø!Ð#8Ð#8ØÐ3 t¨a¡xÐ3Ð3Ð3ñ$5ô $5ð 5ð 5ð 5ð 5à�{Š{˜7Ñ#Ô#ð SØ"A¨7¯;ª;°wÑ+?Ô+?Ð"AÐ"A�Ø—;’;˜wÑ'Ô'×/Ò/Ñ1Ô1ð ,Ø# tÑ+�OØ!Ð#8Ð#8¸À/Ñ#RÔ#RÐRÐRÐRÐRØ�{Š{˜7Ñ#Ô#ð >Ø!Ð#8Ð#8ØÐ< g§k¢k°'Ñ&:Ô&:Ð<Ð<ñ$>ô $>ð >ð >ð >ð >ùàŒ[ð Gð Gñ Gà”˜wÒ&Ð&Ø—K’K ¨Ñ+Ô+×1Ò1Ñ3Ô3°wÒ>Ñ>ØŸš G¨RÑ0Ô0×6Ò6Ñ8Ô8�ØÐ0Ð0Ð0à%Ð'<Ð'<ØÐ!8ñ(:ô (:ð :ð :ð :ð :à—;’;˜xÑ(Ô(ð PØ$Ÿ[š[¨Ñ2Ô2�FØ—~’~Ñ'Ô'ð 'Ø $™˜Ø%Ð'<Ð'<ØÐ!N°Ð!NÐ!NÀfÐ!NÐ!Nñ(Pô (Pð Pð Pð Pð Pà—;’;˜xÑ(Ô(ð PØ$Ÿ[š[¨Ñ2Ô2�FØ—~’~Ñ'Ô'ð 'Ø $™˜Ø%Ð'<Ð'<ØÐ!N¨vÐ!NÐ!NÀfÐ!NÐ!Nñ(Pô (Pð Pð Pð Pð Pð —;’;˜wÑ'Ô'ð WØ&E¨w¯{ª{¸7Ñ/CÔ/CÐ&EÐ&E�OØ—{’{ 7Ñ+Ô+×3Ò3Ñ5Ô5ð 0Ø'¨4Ñ/˜Ø%Ð'<Ð'<¸WÀoÑ'VÔ'VÐVÐVÐVÐVØ—;’;˜xÑ(Ô(ð WØ&G°·²¸HÑ0EÔ0EÐ&GÐ&G�OØ—{’{ 8Ñ,Ô,×4Ò4Ñ6Ô6ð 0Ø'¨4Ñ/˜Ø%Ð'<Ð'<¸WÀoÑ'VÔ'VÐVÐVÐVÐVØ”;Ð"<Ð<Ð<Ø—{’{ 8Ñ,Ô,ð 3Ø)Ð+@Ð+@Ø#ð2¨G¯KªK¸Ñ,AÔ,Að 2ð 2ð 2ñ,3ô ,3ð 3ð 3ð 3ð 3ùð Œ[˜DÒ Ð à�{Š{˜7Ñ#Ô#ð 6Ø!Ð#8Ð#8Øð5¨w¯{ª{¸7Ñ/CÔ/Cð 5ð 5ð 5ñ$6ô $6ð 6ð 6ð 6ð 6ùð Œ[˜DÒ Ð à�{Š{˜7Ñ#Ô#ð .Ø!Ð#8Ð#8Øð-¨w¯{ª{¸7Ñ/CÔ/Cð -ð -ð -ñ$.ô $.ð .ð .ð .ð .ùð]q.ð q.s$   Ë:MÍM>Í=M>æ"f)æ)gç
gc                 ó^   — | dk    rdS | dk    r|sdS | dk    r|sdS | dk    rdS | dk    sJ ‚dS )	zÝReturn the precedence for a declaration.

    Precedence values have no meaning unless compared to each other.

    Acceptable values for ``origin`` are the strings ``'author'``, ``'user'``
    and ``'user agent'``.

    ú
user agentr   Úuserr	   r?   rý   rþ   rÿ   r£   )rh   rc   s     rm   rN   rN   4  sd   € ð �ÒÐØˆqØ	�6Ò	Ð	 *Ð	ØˆqØ	�8Ò	Ð	 JÐ	ØˆqØ	�8Ò	Ð	Øˆqà˜ÒÐÐÐØˆqro   c                 óh  — t          |¦  «        sdS |€t          ¦   «         }|j        dk    s|j        dk    �r
g }|j        dk    r|j        n|j        }t          |¦  «        D ]b\  }}|j        dv r?t          | |||                     ¦   «         ¦  «        }| 	                    |€|fn|¦  «         ŒM| 
                    |¦  «         Œc|j        dk    r,t          j                             |j        |j        |¦  «        }n1t          j                             |j        |j        |j        |¦  «        }t          | |||¦  «        p|fS t%          |¦  «        }	|	                     dd¬¦  «        }
|
rt)          |
d	         ¦  «        d
k    rg S |
d	         d	         j                             dd¦  «        }||v rg S |                     |¦  «         t)          |
¦  «        d
k    r|
d
         ng }g }| |         p|D ]@}t          | |||                     ¦   «         ¦  «        }| 	                    |€|fn|¦  «         ŒA|S )z)Return token with resolved CSS variables.Nú() blockÚvarÚfunction)r2  r0  FT)Úsingle_tokensÚtrailingr   r   rø   Ú_)r   Úsetr»   Ú
lower_nameÚ	argumentsrª   Ú	enumerateÚresolve_varÚcopyÚextendr¨   rà   ÚastÚParenthesesBlockÚsource_lineÚsource_columnÚFunctionBlockr;   r   Úsplit_commar{   r´   ÚreplaceÚadd)r‰   Útokenr†   Úknown_variablesÚitemsÚtoken_itemsÚiÚargumentÚresolvedr2  r8  Úvariable_nameÚdefaultÚcomputed_valuer´   s                  rm   r:  r:  K  sj  € å�UÑÔð ØˆàÐÝ™%œ%ˆà„z�ZÒÐ 5Ô#3°uÒ#<Ñ#<ØˆØ).¬°zÒ)AÐ)A�e”o�oÀuÄ}ˆÝ$ [Ñ1Ô1ð 	'ð 	'‰KˆAˆxØŒ}Ð 8Ð8Ð8Ý&Ø˜h¨°o×6JÒ6JÑ6LÔ6LñNô N�à—’¨HÐ,<˜h˜[˜[À(ÑKÔKÐKÐKà—’˜XÑ&Ô&Ð&Ð&ØŒ:˜Ò#Ð#Ý”L×1Ò1ØÔ! 5Ô#6¸ñ?ô ?ˆEˆEõ ”L×.Ò.ØÔ! 5Ô#6¸¼
ÀEñKô KˆEå˜8 U¨L¸/ÑJÔJÐVÈuÈhÐVå˜‰Œ€HØ×$Ò$°5À4Ð$ÑHÔH€IØð �˜I aœLÑ)Ô)¨QÒ.Ð.Øˆ	Ø˜a”L ”OÔ)×1Ò1°#°sÑ;Ô;€MØ˜Ð'Ð'Øˆ	à×Ò˜MÑ*Ô*Ð*Ý! )™nœn¨qÒ0Ð0ˆi˜Œlˆl°b€GØ€NØ˜=Ô)Ð4¨Wð Jð JˆÝ˜x¨°¸o×>RÒ>RÑ>TÔ>TÑUÔUˆØ×Ò¨(Ð*:˜u˜h˜hÀÑIÔIÐIÐIØÐro   c                 ó&  — g g}|D ]³}|j         dk    r9|j        dv r0|                     |j        ¦  «         |                     g ¦  «         ŒF|j         dk    rGt          |j        ¦  «        }t          | |||¦  «        }|€ d S |d                              |¦  «         Œ˜|d                              |¦  «         Œ´d\  }}	}
d }|�r9|	€|                     d¦  «        }	|	dv sJ ‚�n|                     d¦  «        }|sJ ‚t          |t          ¦  «        sJ ‚	 t          | |||¦  «        }|€d S n*# t          $ r}|
dk    rt          ‚|}d}
d }	Y d }~ŒŒd }~ww xY w|j         d	k    rI|
€|j                             ¦   «         }
na|
dk    rt          ‚|
|j                             ¦   «         k    rd S n4|j         d
k    r)|�|j        dz  |z  |_        d}
n|
�|
dk    rd}
nt          ‚|	dk    r||j        z  }n
||j        z  }d }	|�°9|r|‚t          ||
¬¦  «        S )NÚliteralz+-r0  éÿÿÿÿ)r   r÷   Nr   ú%rê   Ú	dimensionÚ
percentageéd   r÷   ©Úunit)r»   r´   r¨   r0   rª   Ú_resolve_calc_sumÚpopÚ
isinstanceÚlistÚ_resolve_calc_productr*   r-   rW  r  r2   )r‰   ÚtokensÚproperty_nameÚrefer_tor˜   rE  rª   Úresultr´   ÚsignrW  rÜ   ÚgroupÚproductÚfont_exceptions                  rm   rX  rX  v  s§  € ØˆT€FØð %ð %ˆØŒ:˜Ò"Ð" u¤{°dÐ':Ð':Ø�MŠM˜%œ+Ñ&Ô&Ð&Ø�MŠM˜"ÑÔÐÐØŒZ˜:Ò%Ð%Ý'¨¬Ñ6Ô6ˆGÝ& x°¸-ÈÑRÔRˆFØˆ~Ø��Ø�2ŒJ×Ò˜fÑ%Ô%Ð%Ð%à�2ŒJ×Ò˜eÑ$Ô$Ð$Ð$à$Ñ€Eˆ4�Ø€IØ
ñ +Øˆ<Ø—:’:˜a‘=”=ˆDØ˜4�<�<�<�<‘<à—J’J˜q‘M”MˆEØˆLˆLˆLÝ˜e¥TÑ*Ô*Ð*Ð*Ð*ðÝ/Ø˜e ]°Hñ>ô >�ð �?Ø�Fð #øõ "ð ð ð ð ˜3’;�;Ý*Ð*Ø*�	Ø�Ø�Ø����øøøøðøøøð Œ|˜{Ò*Ð*Ø�<Ø"œ<×-Ò-Ñ/Ô/�D�DØ˜S’[�[Ý*Ð*Ø˜Wœ\×/Ò/Ñ1Ô1Ò1Ð1Ø�Fð 2à” Ò-Ð-ØÐ'Ø$+¤M°CÑ$7¸(Ñ$B�G”MØ�D�Dà�| t¨s¢{ {Ø"˜˜å.Ð.Ø�sŠ{ˆ{Ø˜œÑ&��à˜œÑ&�ØˆDðW ñ +ð\ ð Øˆå�E Ð%Ñ%Ô%Ð%s   ÄD, Ä,
EÄ6EÅEc                 óF  — g g}|D �]Ç}|j         dk    r9|j        dv r0|                     |j        ¦  «         |                     g ¦  «         ŒG|j         dk    r|d                              |¦  «         Œn|j         dk    r…|j                             ¦   «         t
          v re| €'|j                             ¦   «         t          v rt          ‚t          || |¦  «        }|d                              t          |d¬¦  «        ¦  «         Œþ|j         dk    rY|j                             ¦   «         t          v r9|d                              t          t          |¦  «        d¬¦  «        ¦  «         �Œb|j         d	k    r1|d                              t          |j        d
¬¦  «        ¦  «         �Œž|j         dk    r|d                              |¦  «         �ŒÆ d S d\  }}}	|r»|€|                     d¦  «        }|dv sJ ‚n›|                     d¦  «        }
t          |
t          ¦  «        sJ ‚t          | |
¦  «        }|€d S |j         dk    r$|	�|	d
k    r|j                             ¦   «         }	nd S |j         d	k    r|	€d
}	|dk    r||j        z  }n
||j        z  }d }|°»t          ||	¬¦  «        S )NrP  z*/ÚnumberrQ  rS  rê   rV  ÚradrT  rR  Úident)r   Ú*Nr   ri  )r»   r´   r¨   rW  r  r   r   r*   r    r2   r   r!   rY  rZ  r[  Ú_resolve_calc_value)r‰   r]  r^  r_  r˜   rE  Úpixelsr´   ra  rW  rb  Úcalcs               rm   r\  r\  »  sÄ  € ØˆT€FØð ñ ˆØŒ:˜Ò"Ð" u¤{°dÐ':Ð':Ø�MŠM˜%œ+Ñ&Ô&Ð&Ø�MŠM˜"ÑÔÐÐØŒZ˜8Ò#Ð#Ø�2ŒJ×Ò˜eÑ$Ô$Ð$Ð$ØŒZ˜;Ò&Ð&¨5¬:×+;Ò+;Ñ+=Ô+=ÅÐ+MÐ+MØÐ E¤J×$4Ò$4Ñ$6Ô$6½*Ð$DÐ$DÝ$Ð$Ý˜u h°Ñ>Ô>ˆFØ�2ŒJ×Ò�h v°DÐ9Ñ9Ô9Ñ:Ô:Ð:Ð:ØŒZ˜;Ò&Ð&¨5¬:×+;Ò+;Ñ+=Ô+=ÅÐ+LÐ+LØ�2ŒJ×Ò�h¥z°%Ñ'8Ô'8¸uÐEÑEÔEÑFÔFÐFÑFØŒZ˜<Ò'Ð'Ø�2ŒJ×Ò�h u¤{¸Ð=Ñ=Ô=Ñ>Ô>Ð>Ñ>ØŒZ˜7Ò"Ð"Ø�2ŒJ×Ò˜eÑ$Ô$Ð$Ñ$àˆFˆFà$Ñ€Eˆ4�Ø
ð Øˆ<Ø—:’:˜a‘=”=ˆDØ˜4�<�<�<�<�<à—J’J˜q‘M”MˆEÝ˜e¥TÑ*Ô*Ð*Ð*Ð*Ý& x°Ñ7Ô7ˆDØˆ|Ø�ØŒy˜KÒ'Ð'Ø�< 4¨3¢; ;Øœ9Ÿ?š?Ñ,Ô,�D�Dà�FØ”˜lÒ*Ð*Ø�<Ø�DØ�sŠ{ˆ{Ø˜œÑ#��à˜œÑ#�ØˆDð- ð õ0 �E Ð%Ñ%Ô%Ð%ro   c                 ó  — t          |¦  «        dk    rt|\  }|j        dv r|S |j        dk    r\|j        dk    rt          S |j        dk    rt          S |j        dk    rt
          S |j        dk    rt          S |j        dk    rt          S d S d S d S )	Nr   )rf  rS  rT  rh  ÚeÚpiÚinfinityz	-infinityÚnan)r{   r»   Úlower_valuer%   r(   r)   r&   r'   )r‰   r]  rE  s      rm   rj  rj  í  s³   € Ý
ˆ6�{„{�aÒÐØ‰ˆØŒ:Ð>Ð>Ð>ØˆLØŒZ˜7Ò"Ð"ØÔ  CÒ'Ð'Ý�ØÔ" dÒ*Ð*Ý�	ØÔ" jÒ0Ð0Ý$Ð$ØÔ" kÒ1Ð1Ý%Ð%ØÔ" eÒ+Ð+Ý�
ð Ðð #Ð"ð ,Ð+ro   c                 ó   ‡‡‡‡"‡#‡$‡%‡&— t          | ¦  «        sdS g }t          | ¦  «        Š#‰#j        €dS ‰#                     d¬¦  «        D ]^}|                     g ¦  «         |D ]D}t          |¦  «        rt          |‰‰‰¦  «        }|€  dS |d                              |¦  «         ŒEŒ_‰#j        dk    r+t          ‰|d         ‰‰¦  «        }|€dS t          |¦  «        S ‰#j        dv �r#dx}x}	}
|D �]
}t          ‰|‰‰¦  «        } | € dS | j        dk    r3‰€|
d	v rt          ‚d
}
| Š&n“d}
t          | j
        dz  ‰z  d¬¦  «        x} Š&nr| j        dk    r/|
d
k    rt          ‚|
dk    r dS d}
t          | j
        d¬¦  «        Š&n8|
d
k    rt          ‚|
dk    r dS d}
t          t          | ‰‰¦  «        d¬¦  «        Š&|du p5‰#j        dk    o‰&j
        |j
        k     p‰#j        dk    o‰&j
        |j
        k    }|r‰&| }	}�Œt          |	¦  «        S ‰#j        dk    �râd\  }Š$t          |¦  «        dk    rt          ‰|d         ‰‰¦  «        }�n<t          |¦  «        dk    r²d}t          |d         ¦  «        dk    rE|d         d         j
        |v r0|d         d         j
        }t          ‰|d         ‰‰¦  «        }|€dS nÉt          ‰|d         ‰‰¦  «        }t          ‰|d         ‰‰¦  «        }d||fv rdS |j        |j        k    rdS |j
        Š$nwt          |¦  «        dk    rd|d         d         j
        }t          ‰|d         ‰‰¦  «        }t          ‰|d         ‰‰¦  «        }d||fv rdS |j        |j        k    rdS |j
        Š$|dk    rt          Š#nR|dk    rt          j        Š#n?|dk    rt          j        Š#n,|dk    r$|j
        dk    rt          j        nt          j        Š#ndS t          |ˆ#ˆ$fd„¦  «        S ‰#j        dv r–t          ‰|d         ‰‰¦  «        }t          ‰|d         ‰‰¦  «        }d||fv rdS |j        |j        k    rdS |j
        }|j
        }||z  Š&‰#j        dk    r||z  dk     r‰&t#          |¦  «        z  Š&t          |ˆ&fd„¦  «        S ‰#j        d v rtt          ‰|d         ‰‰¦  «        }|€dS |j        dk    r|j
        }nt%          |¦  «        x}€dS  t'          t          ‰#j        ¦  «        |¦  «        Š&t          ‰&¦  «        S ‰#j        d!v rst          ‰|d         ‰‰¦  «        }|�|j        dk    rdS 	  t'          t          ‰#j        ¦  «        |j
        ¦  «        Š&n# t(          $ r Y dS w xY wt          ‰&d"¬¦  «        S ‰#j        d#k    rbˆˆˆfd$„|D ¦   «         \  }}d||fv rdS |j        |j        hdhk    rdS |j
        |j
        }}t          t          j        ||¦  «        d"¬¦  «        S ‰#j        d%k    rÝg }d}
|D ]�}t          ‰|‰‰¦  «        } | € dS | j        dk    r3‰€|
dk    rt          ‚d
}
| Š&nPd}
t          | j
        dz  ‰z  d¬¦  «        } n1|
d
k    rt          ‚d}
t          | ‰‰¦  «        }t          |d¬¦  «        Š&|                     ‰&¦  «         Œž|\  }} }| j
        |j
        k     r|} | j
        |j
        k    r|} t          | ¦  «        S ‰#j        d&k    rCˆˆˆfd'„|D ¦   «         \  }Š%d|‰%fv rdS |j        ‰%j        hdhk    rdS t          |ˆ%fd(„¦  «        S ‰#j        d)k    r8t          ‰|d         ‰‰¦  «        }|�|j        dk    rdS t          |d*„ ¦  «        S ‰#j        d+k    rGˆˆˆfd,„|D ¦   «         }d|v rdS t          j        d-„ |D ¦   «         Ž Š&t          |d         ˆ&fd.„¦  «        S ‰#j        d/k    rˆt          ‰|d         ‰‰¦  «        }|�|j        dk    rdS t          |¦  «        dk    r/t          ‰|d         ‰‰¦  «        }|�|j        dk    rdS |j
        Š"nt          j        Š"t          |ˆ"fd0„¦  «        S ‰#j        d1k    rAt          ‰|d         ‰‰¦  «        }|�|j        dk    rdS t          |t          j        ¦  «        S ‰#j        d2k    r1t          ‰|d         ‰‰¦  «        }|€dS t          |t"          ¦  «        S ‰#j        d3k    r2t          ‰|d         ‰‰¦  «        }|€dS t          |j
        d4„ ¦  «        S g }t3          | j        ¦  «        D ]R\  } }!|!j        d5k    r-t          |!‰‰‰¦  «        }|€ dS |                     |¦  «         Œ=|                     |!¦  «         ŒSt6          j                             | j        | j        | j        |¦  «        } t          | ‰‰‰¦  «        p| S )6u¤  Return token with resolved math functions.

    Raise, in order of priority, ``PercentageInMath`` if percentages are mixed with
    other values with no ``refer_to`` size, or ``FontUnitInMath`` if no ``computed``
    style is available to get font size.

    ``PercentageInMath`` has to be raised before FontUnitInMath so that it can be used
    to discard validation of properties that donâ€™t accept percentages.

    NF)r3  rQ  rl  r   )r   r  rT  )rê   r¥   rR  rê   rU  rV  rf  r¥   r   r  Úround)Únearestr   r   r	   )ru  ÚupÚdownúto-zerorý   ru  rv  rw  rx  c                 ó&   •—  ‰| ‰z  ¦  «        ‰z  S r“   r£   )Úxr2  Úmultiples    €€rm   ú<lambda>zresolve_math.<locals>.<lambda>r  s   ø€ °°¸¸X¹Ñ0FÔ0FÈÑ0Q€ ro   )ÚmodÚremr~  c                 ó   •— ‰S r“   r£   ©rz  r´   s    €rm   r|  zresolve_math.<locals>.<lambda>€  s   ø€ °€ ro   )ÚsinÚcosÚtan)ÚasinÚacosÚatanrg  Úatan2c                 ó4   •— g | ]}t          ‰|‰‰¦  «        ‘ŒS r£   ©rX  ©rÁ   Úargr‰   r^  r_  s     €€€rm   rÃ   z resolve_math.<locals>.<listcomp>˜  s;   ø€ ð Wð Wð WØJMÕ˜h¨¨]¸HÑEÔEðWð Wð Wro   ÚclampÚpowc                 ó4   •— g | ]}t          ‰|‰‰¦  «        ‘ŒS r£   r‰  rŠ  s     €€€rm   rÃ   z resolve_math.<locals>.<listcomp>À  s;   ø€ ð %Wð %Wð %WØJMÕ˜h¨¨]¸HÑEÔEð%Wð %Wð %Wro   c                 ó   •— | ‰j         z  S r“   ©r´   )rz  Úpower_tokens    €rm   r|  zresolve_math.<locals>.<lambda>Æ  s   ø€ °°[Ô5FÑ0F€ ro   Úsqrtc                 ó   — | dz  S )Ng      à?r£   ©rz  s    rm   r|  zresolve_math.<locals>.<lambda>Ì  s
   € °°S±€ ro   Úhypotc                 ó4   •— g | ]}t          ‰|‰‰¦  «        ‘ŒS r£   r‰  )rÁ   r]  r‰   r^  r_  s     €€€rm   rÃ   z resolve_math.<locals>.<listcomp>Ï  s7   ø€ ð  ð  ð  àõ ˜h¨°¸xÑHÔHð ð  ð  ro   c                 ó   — g | ]	}|j         ‘Œ
S r£   r�  ©rÁ   rE  s     rm   rÃ   z resolve_math.<locals>.<listcomp>Ô  s   € Ð?Ð?Ð?¨U˜Uœ[Ð?Ð?Ð?ro   c                 ó   •— ‰S r“   r£   r€  s    €rm   r|  zresolve_math.<locals>.<lambda>Õ  s   ø€ ¨u€ ro   Úlogc                 ó.   •— t          j        | ‰¦  «        S r“   )Úmathrš  )rz  Úbases    €rm   r|  zresolve_math.<locals>.<lambda>â  s   ø€ µ´¸¸DÑ0AÔ0A€ ro   ÚexpÚabsra  c                 ó&   — | dk    rdn	| dk    rdndS )Nr   r   rQ  r£   r”  s    rm   r|  zresolve_math.<locals>.<lambda>õ  s   € ¨q°Aªv¨v¨!¨!ÀÀAÂÀ¸1¸1È2€ ro   r2  ) r   r   r;   rB  r¨   Úresolve_mathrX  r2   r»   r-   r´   r    r{   rt  rœ  ÚceilÚfloorrŸ  r.   Úgetattrr!  r‡  r•  rn  rž  r9  r8  rà   r=  rA  r?  r@  )'rE  r‰   r^  r_  Úargsr%  r‹  r`  Útarget_valueÚtarget_tokenrW  r]  Úupdate_conditionÚstrategyÚnumber_tokenÚ
strategiesÚmultiple_tokenÚparameter_tokenrf  Ú	parameterÚangleÚy_tokenÚx_tokenÚyrz  Úpixels_listrk  Ú	min_tokenÚ	max_tokenrK  Ú
base_tokenr8  rI  rJ  r�  r2  r{  r‘  r´   s'    ```                              @@@@@rm   r¡  r¡  ÿ  s;  øøøøøøøø€ õ �eÑÔð Øˆà€DÝ˜‰Œ€HØ„}ÐØˆØ×$Ò$°5Ð$Ñ9Ô9ð !ð !ˆØ�Š�B‰ŒˆØð 	!ð 	!ˆCÝ˜#‰Œð Ý" 3¨°-ÀÑJÔJ�Ø�;Ø�F�F�FØ�ŒH�OŠO˜CÑ Ô Ð Ð ð	!ð „}˜ÒÐÝ" 8¨T°!¬W°mÀXÑNÔNˆØˆ>ØˆFå˜FÑ#Ô#Ð#à	Œ˜.Ð	(Ñ	(Ø-1Ð1ˆÐ1�| dØð  	:ñ  	:ˆFÝ% h°¸ÀxÑPÔPˆEØˆ}Ø��ØŒz˜\Ò)Ð)ØÐ#Ø˜zÐ)Ð)Ý.Ð.Ø�DØ!�E�Eà�DÝ$,¨U¬[¸3Ñ->ÀÑ-IÐPTÐ$UÑ$UÔ$UÐU�E˜E˜EØ”˜xÒ'Ð'Ø˜3’;�;Ý*Ð*Ø˜T’\�\Ø�F�FØ�Ý  ¤°4Ð8Ñ8Ô8��à˜3’;�;Ý*Ð*Ø˜R’Z�ZØ�F�FØ�Ý ¥¨5°(¸MÑ!JÔ!JÐQUÐVÑVÔV�à Ð$ð NØ” %Ò'ÐL¨E¬K¸,Ô:LÒ,LðNà” %Ò'ÐL¨E¬K¸,Ô:LÒ,Lð ð  ð :Ø-2°E˜l�ùÝ˜Ñ%Ô%Ð%à	Œ˜'Ò	!Ñ	!Ø)Ñˆ�(Ýˆt‰9Œ9˜Š>ˆ>Ý,¨X°t¸A´wÀÈxÑXÔXˆL‰LÝ�‰YŒY˜!Š^ˆ^Ø=ˆJÝ�4˜”7‰|Œ|˜qÒ Ð  T¨!¤W¨Q¤ZÔ%5¸Ð%CÐ%CØ œ7 1œ:Ô+�Ý0Ø˜d 1œg }°hñ @ô  @�àÐ'Ø�Fð (õ  1Ø˜d 1œg }°hñ @ô  @�å!2Ø˜d 1œg }°hñ"@ô "@�à˜L¨.Ð9Ð9Ð9Ø�FØÔ$¨Ô(;Ò;Ð;Ø�FØ)Ô/��Ý�‰YŒY˜!Š^ˆ^Ø˜A”w˜q”zÔ'ˆHÝ,¨X°t¸A´wÀÈxÑXÔXˆLÝ.Ø˜$˜qœ' =°(ñ<ô <ˆNà˜ nÐ5Ð5Ð5Ø�ØÔ  NÔ$7Ò7Ð7Ø�Ø%Ô+ˆHØ�yÒ Ð õ ˆHˆHØ˜ÒÐÝ”yˆHˆHØ˜ÒÐÝ”zˆHˆHØ˜Ò"Ð"Ø%1Ô%7¸!Ò%;Ð%;•t”z�zÅÄˆHˆHàˆFÝ˜Ð&QÐ&QÐ&QÐ&QÐ&QÑRÔRÐRà	Œ˜.Ð	(Ð	(Ý(¨°4¸´7¸MÈ8ÑTÔTˆÝ+¨H°d¸1´g¸}ÈhÑWÔWˆØ�L /Ð2Ð2Ð2ØˆFØÔ Ô 4Ò4Ð4ØˆFØÔ#ˆØ#Ô)ˆ	Ø˜Ñ"ˆØŒ=˜EÒ!Ð! f¨yÑ&8¸1Ò&<Ð&<Ø•S˜‘^”^Ñ#ˆEÝ˜ o o o oÑ6Ô6Ð6à	ŒÐ/Ð	/Ð	/Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐØˆFØÔ Ò(Ð(Ø Ô&ˆEˆEÝ  Ñ.Ô.Ð.ˆeÐ7ØˆFØ,•�˜hœmÑ,Ô,¨UÑ3Ô3ˆÝ˜‰ŒÐà	ŒÐ2Ð	2Ð	2Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐ <Ô#4¸Ò#@Ð#@ØˆFð	Ø0•G�D (¤-Ñ0Ô0°Ô1CÑDÔDˆEˆEøÝð 	ð 	ð 	ØˆFˆFð	øøøå˜ EÐ*Ñ*Ô*Ð*à	Œ˜'Ò	!Ð	!ðWð Wð Wð Wð Wð WØQUðWñ Wô WÑˆ�à�G˜WÐ%Ð%Ð%ØˆFØŒL˜'œ,Ð'¨H¨:Ò5Ð5ØˆFØŒ}˜gœmˆ1ˆÝ�œ
 1 aÑ(Ô(¨uÐ5Ñ5Ô5Ð5à	Œ˜'Ò	!Ð	!ØˆØˆØð 	&ð 	&ˆFÝ% h°¸ÀxÑPÔPˆEØˆ}Ø��ØŒz˜\Ò)Ð)ØÐ#Ø˜t’|�|Ý.Ð.Ø�DØ!�E�Eà�DÝ$ U¤[°3Ñ%6¸Ñ%AÈÐMÑMÔM�E�Eà˜3’;�;Ý*Ð*Ø�Ý" 5¨(°MÑBÔB�Ý  ¨dÐ3Ñ3Ô3�Ø×Ò˜uÑ%Ô%Ð%Ð%Ø&1Ñ#ˆ	�5˜)ØŒ;˜œÒ(Ð(ØˆEØŒ;˜œÒ(Ð(ØˆEÝ˜‰ŒÐà	Œ˜%Ò	Ð	ð%Wð %Wð %Wð %Wð %Wð %WØQUð%Wñ %Wô %WÑ!ˆ�kà�L +Ð.Ð.Ð.ØˆFØÔ˜{Ô/Ð0°X°JÒ>Ð>ØˆFÝ˜Ð&FÐ&FÐ&FÐ&FÑGÔGÐGà	Œ˜&Ò	 Ð	 Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐ <Ô#4¸Ò#@Ð#@ØˆFÝ˜Ð&8Ð&8Ñ9Ô9Ð9à	Œ˜'Ò	!Ð	!ð ð  ð  ð  ð  ð  àð ñ  ô  ˆð �8ÐÐØˆFÝ”
Ð?Ð?°hÐ?Ñ?Ô?Ð@ˆÝ˜ œ _ _ _ _Ñ5Ô5Ð5à	Œ˜%Ò	Ð	Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐ <Ô#4¸Ò#@Ð#@ØˆFÝˆt‰9Œ9˜Š>ˆ>Ý*¨8°T¸!´W¸mÈXÑVÔVˆJØÐ! Z¤_¸Ò%@Ð%@Ø�ØÔ#ˆDˆDå”6ˆDÝ˜Ð&AÐ&AÐ&AÐ&AÑBÔBÐBà	Œ˜%Ò	Ð	Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐ <Ô#4¸Ò#@Ð#@ØˆFÝ˜¥d¤hÑ/Ô/Ð/à	Œ˜%Ò	Ð	Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐØˆFÝ˜¥cÑ*Ô*Ð*à	Œ˜&Ò	 Ð	 Ý(¨°4¸´7¸MÈ8ÑTÔTˆØÐØˆFÝØÔÐ MÐ MñOô Oð 	Oð €IÝ  ¤Ñ1Ô1ð 'ð '‰ˆˆ8ØŒ=˜JÒ&Ð&Ý! (¨H°mÀXÑNÔNˆFØˆ~Ø��Ø×Ò˜VÑ$Ô$Ð$Ð$à×Ò˜XÑ&Ô&Ð&Ð&ÝŒL×&Ò&ØÔ˜5Ô.°´
¸IñGô G€Eå˜˜x¨¸ÑAÔAÐJÀUÐJs   Õ(U0 Õ0
U>Õ=U>c                   ó   — e Zd ZdZd„ Zd„ ZdS )r‚   z2Dummy computed style used to store initial values.c                 ó>   — d | _         | | _        i | _        || _        d S r“   )r†   Ú	specifiedÚcacherI   )rW   rI   s     rm   rn   zInitialStyle.__init__  s&   € Ø ˆÔØˆŒØˆŒ
Ø&ˆÔÐÐro   c                 ó*   — t           |         x}| |<   |S r“   )r   ©rW   r³   r´   s      rm   Ú__missing__zInitialStyle.__missing__  s   € Ý*¨3Ô/Ð/ˆ��S‘	Øˆro   N)rž   rŸ   r    r¡   rn   r½  r£   ro   rm   r‚   r‚     s8   € € € € € Ø<Ð<ð'ð 'ð 'ðð ð ð ð ro   r‚   c                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )ÚAnonymousStylez(Computed style used for anonymous boxes.c                 ó–   — |                       ddddddœ¦  «         || _        d| _        | | _        |j        | _        |j        | _        d S )Nr   )Úborder_top_widthÚborder_bottom_widthÚborder_left_widthÚborder_right_widthÚoutline_widthF)Úupdater†   Úis_root_elementr¹  rº  rI   )rW   r†   s     rm   rn   zAnonymousStyle.__init__  sg   € ð 	�ŠØ !Ø#$Ø!"Ø"#Øð
ð 
ñ 	ô 	ð 	ð )ˆÔØ$ˆÔØˆŒØ!Ô'ˆŒ
Ø'Ô3ˆÔÐÐro   c                 óX   — t          | j        ¦  «        }|                     | ¦  «         |S r“   )r¿  r†   rÆ  ©rW   r;  s     rm   r;  zAnonymousStyle.copy%  s)   € Ý˜dÔ/Ñ0Ô0ˆØ�Š�DÑÔÐØˆro   c                 óv  — |t           v s|d d…         dk    r| j        |         x}| |<   nŽ|dk    r| j        |         x}| |<   nu|d d…         dk    r/t          |t          |         | j        |         d¬¦  «        x}| |<   n8t          |         }|t          v rt          |         | ||¦  «        x}| |<   n|| |<   |S )Nr	   Ú__Úpageé   Útext_decoration_F)rˆ   )r   r†   r·   r   r   r   r¼  s      rm   r½  zAnonymousStyle.__missing__*  sî   € Ø•)ÐÐ˜s 2 A 2œw¨$š˜Ø $Ô 1°#Ô 6Ð6ˆE�D˜‘I�IØ�FŠ]ˆ]à $Ô 1°#Ô 6Ð6ˆE�D˜‘I�IØ��"�ŒXÐ+Ò+Ð+Ý /Ø•^ CÔ(¨$Ô*;¸CÔ*@È5ð!Rñ !Rô !Rð RˆE�D˜‘I�Iõ # 3Ô'ˆEØÕ*Ð*Ð*å$6°sÔ$;¸DÀ#ÀuÑ$MÔ$MÐM�˜˜S™	˜	ð "��S‘	Øˆro   N©rž   rŸ   r    r¡   rn   r;  r½  r£   ro   rm   r¿  r¿    sG   € € € € € Ø2Ð2ð4ð 4ð 4ð"ð ð ð
ð ð ð ð ro   r¿  c                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )rƒ   z,Computed style used for non-anonymous boxes.c                 ó¨   — i | _         || _        || _        |d u | _        || _        || _        || _        || _        || _        |r|j	        ni | _	        d S r“   )
r¹  r†   rˆ   rÇ  r_   rE   r‡   rC   rI   rº  )rW   r†   rˆ   r_   rE   r‡   rC   rI   s           rm   rn   zComputedStyle.__init__@  sb   € àˆŒØ(ˆÔØ ˆŒØ+¨tÐ3ˆÔØˆŒØ&ˆÔØ$ˆŒØ ˆŒØ&ˆÔØ+7Ð?�\Ô'Ð'¸RˆŒ
ˆ
ˆ
ro   c           	      óÜ   — t          | j        | j        | j        | j        | j        | j        | j        ¦  «        }|                     | ¦  «         | j	         
                    ¦   «         |_	        |S r“   )rƒ   r†   rˆ   r_   rE   r‡   rC   rI   rÆ  r¹  r;  rÉ  s     rm   r;  zComputedStyle.copyM  s`   € ÝØÔ˜tœ}¨d¬l¸DÔ<LØŒO˜Tœ]¨DÔ,<ñ>ô >ˆð 	�Š�DÑÔÐØœ×,Ò,Ñ.Ô.ˆŒØˆro   c                 ó–  — |dk    r	| d          n|dk    r| d          | j         }|| j        v r)| j        |         d         }t          |t          ¦  «        }n|t          v s|d d…         dk    rd}nd}d	}|dk    r|€d}|r¼g }|j        D ]@}t          | ||¦  «        }|€|                     |¦  «         Œ+|                     |¦  «         ŒA| 	                    d
d¦  «        }	 | 
                    ||¦  «        }nD# t          $ r7 |t          v r|�||         x| |<   }nt          |         }|t          vr|| |<   Y nw xY w|dk    r,|d d…         dk    rg nt          |         }|t          vr|| |<   n|dk    r||         x| |<   }|d d…         dk    rE|�C|t          v rt          |         | ||¦  «        }t          ||||         || j        v ¦  «        | |<   n.|dk    r|dk    r|€dn|d         }|| v r| |= n|dv r
|| j        |<   t#          |¦  «        �r|}	g }	 	 t%          |	| |¦  «        }|€t&          ‚|                     |¦  «         n%# t(          $ r |                     |	¦  «         Y nw xY w| 	                    d
d¦  «        }t+          ||¦  «        d         d         }nw# t&          $ rj t-          j        d|	j        |	j        |	                     ¦   «         ¦  «         |t          v r|�||         x| |<   }nt          |         }|t          vr|| |<   Y nw xY w|| v r| |         S |t          v rt          |         | ||¦  «        }|| |<   |S )NÚfloatr&  rr   r   r	   rË  ÚinheritÚinitialFr5  rø   rÍ  rÎ  rÌ  Úautor¥   )r&  rÔ  rr   r   z"Invalid math function at %d:%d: %s)r†   rˆ   rZ  r,   r   r]  r:  r¨   r<  rC  Úsolver+   r   r   r   r·   r¹  r   r¡  Ú	Exceptionr-   r$   r   r"  r?  r@  Ú	serialize)
rW   r³   r†   r´   ÚpendingÚsolved_tokensrE  r]  Úoriginal_keyr2  s
             rm   r½  zComputedStyle.__missing__U  sJ  € Ø�'Š>ˆ>à�ÔÐÐØ�IÒÐà�ŒMˆMàÔ(ˆà�$”-ÐÐà”M #Ô& qÔ)ˆEÝ  ­Ñ0Ô0ˆGˆGð •iÐÐ 3 r¨ r¤7¨d¢? ?Ø!��à!�ØˆGà�IÒÐ ,Ð"6àˆEàð 	*àˆMØœð 1ð 1�Ý$ T¨5°,Ñ?Ô?�Ø�>Ø!×(Ò(¨Ñ/Ô/Ð/Ð/à!×(Ò(¨Ñ0Ô0Ð0Ð0ØŸ;š; s¨CÑ0Ô0ˆLð
*ØŸš M°<Ñ@Ô@��øÝ ð *ð *ð *Ø�)Ð#Ð#¨Ð(@à(4°SÔ(9Ð9�D˜‘I  å*¨3Ô/�EØÕ"6Ð6Ð6à$)˜˜S™	øøð*øøøð �IÒÐØ˜b˜q˜bœ' Tš/˜/�B�B­~¸cÔ/BˆEØÕ.Ð.Ð.à!��S‘	øØ�iÒÐà ,¨SÔ 1Ð1ˆD�‰I˜àˆs�ˆsŒ8Ð)Ò)Ð)¨lÐ.Fð Õ(Ð(Ð(Ý*¨3Ô/°°c¸5ÑAÔA�Ý'Ø�U˜L¨Ô-¨s°d´mÐ/CñEô EˆD�‰IˆIà�FŠ]ˆ]˜u¨š˜ð 'Ð.�B�B°LÀÔ4HˆEØ�dˆ{ˆ{Ø˜�IøØÐ4Ð4Ð4ð #(ˆDŒN˜3Ñå�eÑÔñ 	*ØˆHØˆMð*ð0Ý(¨°4¸Ñ=Ô=�Eð �}Ý'˜Ø!×(Ò(¨Ñ/Ô/Ð/Ð/øõ (ð 3ð 3ð 3Ø!×(Ò(¨Ñ2Ô2Ð2Ð2Ð2ð3øøøð  #Ÿ{š{¨3°Ñ4Ô4�Ý.¨}¸lÑKÔKÈAÔNÈqÔQ��øÝð *ð *ð *Ý”Ø8ØÔ(¨(Ô*@À(×BTÒBTÑBVÔBVñXô Xð Xð �)Ð#Ð#¨Ð(@à(4°SÔ(9Ð9�D˜‘I  å*¨3Ô/�EØÕ"6Ð6Ð6à$)˜˜S™	øøð*øøøð �$ˆ;ˆ;à˜”9ÐàÕ$Ð$Ð$å& sÔ+¨D°#°uÑ=Ô=ˆEàˆˆS‰	ØˆsC   Ã"C9 Ã9>D:Ä9D:ÈI	 È*J! É	I+É(J! É*I+É+5J! Ê!A1LÌLNrÏ  r£   ro   rm   rƒ   rƒ   >  sO   € € € € € Ø6Ð6ð@ð @ð @ðð ð ðtð tð tð tð tro   rƒ   c                   ó@   — e Zd Zd„ Zed„ ¦   «         Zed„ ¦   «         ZdS )ÚColorProfilec                 óˆ   — |d         d         | _         |d         | _        |d         | _        t          |¦  «        | _        d S )NÚsrcr   úrendering-intentÚ
components)rá  Úrenderingintentrã  r   Ú_profile)rW   Úfile_objectÚdescriptorss      rm   rn   zColorProfile.__init__Í  s@   € Ø˜uÔ% aÔ(ˆŒØ*Ð+=Ô>ˆÔØ% lÔ3ˆŒÝ'¨Ñ4Ô4ˆŒˆˆro   c                 óF   — | j         j        j        p| j         j        j        S r“   )rå  ÚprofileÚmodelÚprofile_descriptionr”   s    rm   r;   zColorProfile.nameÓ  s$   € ð ŒMÔ!Ô'ð 6ØŒMÔ!Ô5ð	7ro   c                 ó4   — | j                              ¦   «         S r“   )rå  Útobytesr”   s    rm   rª   zColorProfile.contentÙ  s   € àŒ}×$Ò$Ñ&Ô&Ð&ro   N)rž   rŸ   r    rn   Úpropertyr;   rª   r£   ro   rm   rß  rß  Ì  sY   € € € € € ð5ð 5ð 5ð ð7ð 7ñ „Xð7ð
 ð'ð 'ñ „Xð'ð 'ð 'ro   rß  c                 ó  — d}|                       d¦  «        }d}|D ]m}|r|dz  }||z  }||v r|                     |¦  «        }Œ(|€(|                     |¦  «         t          |¦  «        dz
  }ŒR|                     ||¦  «         |dz  }ŒndS )z,Add layer to list of layers, handling order.Nú.r¥   r   )rÒ   r:   r¨   r{   Úinsert)rl   rT   r:   ÚpartsÚ
full_layerr%  s         rm   Ú
_add_layerrô  Þ  s¸   € à€EØ�KŠK˜ÑÔ€EØ€JØð ð ˆØð 	Ø˜#ÑˆJØ�dÑˆ
Ø˜ÐÐØ—L’L Ñ,Ô,ˆEØØˆ=Ø�MŠM˜*Ñ%Ô%Ð%Ý˜‘K”K !‘OˆEˆEà�MŠM˜% Ñ,Ô,Ð,Ø�Q‰JˆEˆEðð ro   c                 ó0   — |s|�t          |¦  «        S dS dS )zCGet a dict of computed style mixed from parent and cascaded styles.N)r¿  )r_   rˆ   r†   rE   r‡   rC   rD   s          rm   Úcomputed_from_cascadedrö  ò  s/   € ð ð ,˜Ð0Ý˜lÑ+Ô+Ð+ð,ð ,Ð0Ð0ro   c                 ó    — | sdS d}d}| D ]>}|j         dk    r|r||j        z  }d}Œ|j         dk    r|j        dk    r
|s|dz  }d}Œ< dS |s|S dS )z'Parse tokens representing a layer name.Nr¥   Trh  FrP  rð  )r»   r´   )r]  Ú	new_layerÚlast_dotrE  s       rm   Ú_parse_layerrú  ú  s›   € àð ØˆØ€IØ€HØð ð ˆØŒ:˜Ò Ð  XÐ Ø˜œÑ$ˆIØˆHˆHØŒZ˜9Ò$Ð$¨¬¸Ò);Ð);ÀHÐ);Ø˜ÑˆIØˆHˆHàˆFˆFØð ØÐðð ro   c                 óê   — t          t          | ¦  «        ¦  «        }t          |¦  «        dk    rd S |d         }|j        dk    rd S |j                             d¦  «        s|j        dk    r|j        S d S )Nr   r   rh  z--zdevice-cmyk)r[  r0   r{   r»   r´   r|   )Úpreluder]  rE  s      rm   Úparse_color_profile_namerý    s~   € ÝÕ# GÑ,Ô,Ñ-Ô-€Få
ˆ6�{„{�aÒÐØˆà�1ŒI€EØ„z�WÒÐØˆà„{×Ò˜dÑ#Ô#ð  u¤{°mÒ'CÐ'CØŒ{Ðð (DÐ'Cro   c           	      óÌ  — t          t          | j        ¦  «        ¦  «        }g }|s |                     dddddg d¢dœ¦  «         |S |�r›dddddg d¢dœ}|d         j        dk    r*|                     d¦  «        }|j        |d<   d|d         d<   t          |¦  «        dk    rdS |s|                     |¦  «         |S |�r|                     d¦  «        }|j        d	k    rdS |j        d
k    �r¶|sdS |d         j        dk    rt|                     d¦  «        }|j        }|dv r2|d         r|d         |k    rdS ||d<   |d         dxx         dz  cc<   Œ˜|dv rd||<   |d         dxx         dz  cc<   Œ¸�n+|d         j        dk    �r|                     d¦  «        }|j	        dk    rdS t          |j        ¦  «        D ]A\  }	}
|
j        dk    r1|
j        dk    r&|j        d|	dz
  …         }|j        |	dz   d…         } n
ŒB|j        }d}t          j                             |¦  «        }|€dS |�9d„ |D ¦   «         }t          |¦  «        dk    rdS |\  }|j        dk    rdS |j        }g |¢|‘R |d<   |d         dxx         dz  cc<   |r|d         dxx         dz  cc<   �ŒådS |j        dk    r|rt          |d         ¦  «        rndS |�°|                     |¦  «         |�°›|S )a©  Parse a page selector rule.

    Return a list of page data if the rule is correctly parsed. Page data are a
    dict containing:

    - 'side' ('left', 'right' or None),
    - 'blank' (True or None),
    - 'first' (True or None),
    - 'index' (page number or None),
    - 'name' (page name string or None), and
    - 'specificity' (list of numbers).

    Return ``None` if something went wrong while parsing the rule.

    Nrä   )r7   r8   r9   r:   r;   r]   r   rh  r;   r   r]   rP  ré   )rw   rx   r7   r	   )r8   r9   Tr2  ÚnthÚofc                 ó$   — g | ]}|j         d v¯|‘ŒS ))ÚcommentÚ
whitespace)r»   r˜  s     rm   rÃ   z(parse_page_selectors.<locals>.<listcomp>r  s3   € ð !Lð !Lð !LØ&+Ø$œzÐ1JÐJÐJð "ØJÐJÐJro   r:   rÄ   )r[  r0   rü  r¨   r»   rY  r´   r{   rr  r;   r9  r8  rà   rÿ  Ú	parse_nthÚany)Úruler]  Ú	page_dataÚtypesrE  rP  rh  Úpseudo_classr2  rI  rJ  rÿ  rb  Ú
nth_valuess                 rm   Úparse_page_selectorsr    sÿ  € õ$ Õ# D¤LÑ1Ô1Ñ2Ô2€FØ€Ið ð Ø×ÒØ 4°$ÀØ¨¨¨ð4ð 4ñ 	5ô 	5ð 	5ð Ðà
ñ T à 4°$ÀØ¨¨¨ð4ð 4ˆð �!Œ9Œ>˜WÒ$Ð$Ø—J’J˜q‘M”MˆEØ!œKˆE�&‰MØ&'ˆE�-Ô  Ñ#åˆv‰;Œ;˜!ÒÐØ�4Øð 	Ø×Ò˜UÑ#Ô#Ð#ØÐàñ B	 Ø—j’j ‘m”mˆGØŒ|˜yÒ(Ð(Ø�tàŒ} Ò#Ñ#Øð  Ø˜4à˜!”9”> WÒ,Ð,Ø"ŸJšJ q™MœM�EØ#(Ô#4�Là#Ð'8Ð8Ð8Ø  œ=ð (¨U°6¬]¸lÒ-JÐ-JØ#' 4Ø(4˜˜f™Ø˜mÔ,¨QÐ/Ð/Ô/°1Ñ4Ð/Ð/Ñ/Ø à%Ð);Ð;Ð;Ø.2˜˜lÑ+Ø˜mÔ,¨QÐ/Ð/Ô/°1Ñ4Ð/Ð/Ñ/Ø ñ <ð
 ˜A”Y”^ zÒ1Ñ1Ø%Ÿzšz¨!™}œ}�HØ”}¨Ò-Ð-Ø#˜tÝ'0°Ô1CÑ'DÔ'Dð %ð %™˜˜8Ø#œ=¨GÒ3Ð3¸¼È$Ò8NÐ8NØ"*Ô"4°V°a¸!±e°VÔ"<˜CØ$,Ô$6°q¸1±u°v°vÔ$>˜EØ!˜Eøà&Ô0˜Ø $˜å!)¤×!7Ò!7¸Ñ!<Ô!<�JØ!Ð)Ø#˜tàÐ(ð!Lð !LØ/4ð!Lñ !Lô !L˜õ ˜u™:œ:¨š?˜?Ø#' 4Ø!&™˜Ø œ:¨Ò0Ð0Ø#' 4Ø %¤˜à%9 zÐ%9°5Ð%9Ð%9�E˜'‘Nð ˜-Ô(¨Ð+Ð+Ô+¨qÑ0Ð+Ð+Ñ+Øð 5Ø˜mÔ,¨QÐ/Ð/Ô/°1Ñ4Ð/Ð/Ñ/Ùà�tØ” #Ò%Ð%Øð  �c %¨Ô"6Ñ7Ô7ð  Øà˜4ðE ñ B	 ðH 	×Ò˜ÑÔÐði ñ T ðl Ðro   c                 óÄ  — |D �][}t          |dd¦  «        €h|j        dk    r&t          j        d|j        |j        |j        ¦  «         |j        dk    rŒQ|j        dvr"t          j        d||j        |j        ¦  «         Œ||j        dk    �rI	 t          }t          j
        |j        ¦  «        }t          t          |||j        ¦  «        ¦  «        }|rÌt          |d	„ ¬
¦  «        }|D ]¶\  }}d„ |D ¦   «         }|D ] }|                     |||f¦  «         |j        t$          vrxt          j        |j        ¦  «        }|j                             d¦  «        r&t*          }t-          j        d|› d|j        › �¦  «        ‚t-          j        d|› d|j        › �¦  «        ‚Œ¡d}
Œ·nd}
�Œž# t,          j        $ r!}t          j        |d|¦  «         Y d}~�ŒÉd}~ww xY w|j        dk    �r¦|j        dk    �rš|
r:t          j        dt          j        |j        ¦  «        |j        |j        ¦  «         �Œ%t3          |j        ¦  «        }d}|ru|d         j        dk    r,t5          ||d         j        dd|j        |j        f¬¦  «        }n8t9          |d         |¦  «        }|r |d         d         dk    r|d         d         }|€�Œ¶d}t          |dd…         ¦  «        }|rç|d         j        dk    rr|d         j        dk    ra|                     d¦  «        }t?          |j         ¦  «        x}s5t          j        dt          j        |¦  «        |j        |j        ¦  «         �ŒSnI|d         j        dk    r8|d         j        dk    r'|                     d¦  «         dtC          |¦  «        › �}|r|�|› d |› �}tE          ||¦  «         tG          j$        |¦  «        }|€:t          j        d!t          j        |j        ¦  «        |j        |j        ¦  «         �ŒtG          j%        || ¦  «        s�Œ|�`	 tM          ||| |||	||||¬"¦
  «
         �Œ=# tN          $ r7}t          j(        d#||¦  «         t          j)        d$|¬%¦  «         Y d}~�Œyd}~ww xY w�Œƒ|j        dk    r¬|j        d&k    r¡tG          j$        |j        ¦  «        }|€:t          j        d't          j        |j        ¦  «        |j        |j        ¦  «         �ŒîtG          j%        || ¦  «        s�Œt          j*        |j        ¦  «        }tW          | |||||||||	d¬(¦  «         �Œ:|j        dk    �rK|j        d)k    �r?tY          |¦  «        }|€:t          j        d*t          j        |j        ¦  «        |j        |j        ¦  «         �Œ�d}
|D ]í}|                     d+¦  «        } t[          dGi |¤Ž}!t          j
        |j        ¦  «        }"t          t          ||"¦  «        ¦  «        }|r| d|!fg}#| .                    ||#|f¦  «         |"D ]q}$|$j        dk    s|$j        €Œt          t          |t          j
        |$j        ¦  «        ¦  «        ¦  «        }|r&| d,|$j        › �|!fg}#| .                    |$|#|f¦  «         ŒrŒî�Œ‘|j        dk    rž|j        d-k    r“d}
t          j
        |j        ¦  «        }"t_          ta          d-||"¦  «        ¦  «        }%d.D ]=}&|&|%vr7t          j        d/|& 1                    d0d¦  «        |j        |j        ¦  «          nŒ>|�| 2                    |%|¦  «         �Œ:|j        dk    �r½|j        d1k    �r±d}
tg          |j        ¦  «        x}'€:t          j        d2t          j        |j        ¦  «        |j        |j        ¦  «         �Œ¤t          j
        |j        ¦  «        }"ta          d1||"¦  «        }%dd3dd4œ}(|%D ]H\  })}*|)|(v r|*|(|)<   Œt          j        d5|)t          j        |j        ¦  «        |j        |j        ¦  «         ŒI|(d6         €:t          j        d7t          j        |j        ¦  «        |j        |j        ¦  «         �Œati          ||(d6         d         ¦  «        5 }+	 tk          |+|(¦  «        },|,|	|'<   nT# tl          $ rG t          j        d8t          j        |j        ¦  «        |j        |j        ¦  «         Y ddd¦  «         �Œåw xY w	 ddd¦  «         n# 1 swxY w Y   �	Œ|j        dk    �r³|j        d9k    �r§to          j8        |j        |¦  «        }'|'€:t          j        d:t          j        |j        ¦  «        |j        |j        ¦  «         �	Œqd}
t          j
        |j        ¦  «        }"dddddddddd;œ	}-ta          d9||"¦  «        }%|%D ]
\  })}*|*|-|)<   Œ|-d<         €d=}.n|-d<         }.|.d         €ê|.d         d>v rFtC          |-d?         pg ¦  «        dk     r*t          j        d@|'|j        |j        |.d         ¦  «         �
Œ nš|.d         dAv rFtC          |-d?         pg ¦  «        dBk     r*t          j        dC|'|j        |j        |.d         ¦  «         �
ŒpnJ|.d         dDk    r>tC          |-dE         pg ¦  «        dBk     r#t          j        dF|'|j        |j        ¦  «         �
Œ»|-||'<   �
ŒÂ|j        dk    �rl|j        dk    �r`g }/t3          |j        ¦  «        }|rts          |¦  «        ndG}0|0D ]4}t?          |¦  «        x}r|�|› d |› �}|/ .                    |¦  «         Œ2d}/ |/€:t          j        dHt          j        |j        ¦  «        |j        |j        ¦  «         �ŒvtC          |/¦  «        dk    r@|j        r"t          j        dI|j        |j        ¦  «         �Œ²|/D ]}tE          ||¦  «         Œ�ŒÉ|/r|/\  }ndtC          |¦  «        › �}|�|› d |› �}tE          ||¦  «         |j        €�Œt          j*        |j        ¦  «        }tW          | |||||||||	d|¬J¦  «         �Œ:t          j        dK||j        |j        ¦  «         �Œ]dS )LzDDo what can be done early on stylesheet, before being in a document.rª   NrÕ   zParse error at %d:%d: %szat-rule)Úimportrl   zUnknown empty rule %s at %d:%dzqualified-rulec                 ó   — | d         S )Nr   r£   r”  s    rm   r|  z'preprocess_stylesheet.<locals>.<lambda>«  s
   € ¸aÀ¼d€ ro   )r³   c                 ó   — g | ]
}|d          ‘ŒS )r   r£   )rÁ   Údeclarations     rm   rÃ   z)preprocess_stylesheet.<locals>.<listcomp>­  s/   € ð (Lð (Lð (LØ/:˜K¨œNð(Lð (Lð (Lro   rø   ú'z$', ignored prefixed pseudo-element: z', unknown pseudo-element: Tz#Invalid or unsupported selector, %sr  zP@import rule %r not at the beginning of the the whole rule was ignored at %d:%d.r   rÅ   Fz@import at %s:%s)Úallow_relativeÚcontextÚcontext_argsr   Úexternalr2  rl   zBInvalid layer name %r the whole @import rule was ignored at %d:%d.rh  z
@anonymousrð  zBInvalid media type %r the whole @import rule was ignored at %d:%d.)
rÌ   rÆ   rÂ   rI   rÇ   rÈ   rR   r‹   rT   rl   z$Failed to load stylesheet at %s : %srÎ   rÏ   r½   zAInvalid media type %r the whole @media rule was ignored at %d:%d.)Úignore_importsrÌ  zIUnsupported @page selector %r, the whole @page rule was ignored at %d:%d.r]   ú@z	font-face)rá  Úfont_familyz3Missing %s descriptor in '@font-face' rule at %d:%dr5  zcolor-profilezRInvalid color profile name %r, the whole @color-profile rule was ignored at %d:%d.zrelative-colorimetric)rá  râ  rã  z4Unknown descriptor %r for profile named %r at %d:%d.rá  zSNo source for profile named %r, the whole @color-profile rule was ignored at %d:%d.z^Invalid profile file for profile named %r, the whole @color-profile rule was ignored at %d:%d.zcounter-stylezRInvalid counter style name %r, the whole @counter-style rule was ignored at %d:%d.)	ÚsystemÚnegativeÚprefixÚsuffixÚrangeÚpadÚfallbackÚsymbolsÚadditive_symbolsr  )NÚsymbolicN)ÚcyclicÚfixedr"  r   zHIn counter style %r at %d:%d, counter style %r needs at least one symbol)Ú
alphabeticÚnumericr	   zIIn counter style %r at %d:%d, counter style %r needs at least two symbolsÚadditiver!  zZIn counter style %r at %d:%d, counter style "additive" needs at least two additive symbolsr£   zKUnsupported @layer selector %r, the whole @layer rule was ignored at %d:%d.zR@layer rule with multiple layer names, the whole @layer rule was ignored at %d:%d.)r  rl   zUnknown rule %s at %d:%d):r¤  r»   r   r"  r?  r@  ÚmessageÚlower_at_keywordr   rà   rá   rª   r[  r"   rü  r   Úadd_selectorÚpseudo_elementÚPSEUDO_ELEMENTSrÚ  r|   r   Ú
cssselect2ÚSelectorErrorrš  r0   r   r´   r/   r;   rY  rú  r8  r{   rô  r   Úparse_media_queryrÓ   r
   r   rÕ   rÖ   Úparse_rule_listÚpreprocess_stylesheetr  r6   r¨   Údictr#   rC  Úadd_font_facerý  r   rß  ÚBaseExceptionr   Úparse_counter_style_namer1   )1r×   rC   Ústylesheet_rulesrÆ   rR   r‹   rT   rI   rÇ   rÈ   r  rl   r  Úlogger_levelÚcontentsÚselectors_declarationsÚ	selectorsr`   rj   rü  Úexcr]  rÌ   Ú	url_tuplerø  Únext_tokensr2  r½   rÜ   Úcontent_rulesÚdatar  r]   r�   rª   r�   Úmargin_ruleÚrule_descriptorsr³   r;   rç  Údescriptor_nameÚdescriptor_valueÚresponseÚcolor_profileÚcounterr  Ú
new_layersÚcomma_separated_tokenss1                                                    rm   r1  r1  �  s  € ð !ð S<ñ S<ˆÝ�4˜ DÑ)Ô)Ð1ØŒy˜GÒ#Ð#Ý”Ø.ØÔ$ dÔ&8¸$¼,ñHô Hð Hð Œy˜IÒ%Ð%ØØÔ$Ð,?Ð?Ð?Ý”Ø4Ø˜$Ô*¨DÔ,>ñ@ô @ð @ð àŒ9Ð(Ò(Ñ(ð Ý&�Ý#Ô9¸$¼,ÑGÔG�Ý)-Ý+¨H°hÀÄÑMÔMñ*Oô *OÐ&ð *ð *Ý-4Ø.°N°Nð.Dñ .Dô .DÐ*à3Ið .ð .Ñ/˜	 <ð(Lð (LØ>Jð(Lñ (Lô (L˜à(1ð Fð F˜HØ#×0Ò0°¸LÈ%Ð;PÑQÔQÐQØ'Ô6½oÐMÐMÝ*2Ô*<¸T¼\Ñ*JÔ*J Ø#+Ô#:×#EÒ#EÀcÑ#JÔ#Jð 
!FÝ38 LÝ*4Ô*Bð)E¨Gð )Eð )Eà+3Ô+Bð)Eð )Eñ+Fô +Fð %Fõ
 +5Ô*Bð)E¨Gð )Eð )Eà+3Ô+Bð)Eð )Eñ+Fô +Fð %Fð  Nð *.˜˜ð%.ð( &*�NùøÝÔ+ð ð ð Ý”
˜<Ð)NÐPSÑTÔTÐTØ���‘øøøøðøøøð ŒY˜)Ò#Ñ#¨Ô(=ÀÒ(IÑ(IØð Ý”ð;åÔ& t¤|Ñ4Ô4ØÔ$ dÔ&8ñ	:ô :ð :ñ
 å& t¤|Ñ4Ô4ˆFØˆCØð 	.Ø˜!”9”> XÒ-Ð-Ý"Ø  &¨¤)¤/À%Ø 2Ø&*Ô&6¸Ô8JÐ%KðMñ Mô M�C�Cõ
 !(¨¨q¬	°8Ñ <Ô <�IØ ð . Y¨q¤\°!¤_¸
Ò%BÐ%BØ'¨œl¨1œo˜Øˆ{ÙàˆIÝ˜v a b bœzÑ*Ô*ˆKØð 2Ø˜q”>Ô&¨*Ò4Ð4¸ÀQ¼Ô9LÐPWÒ9WÐ9WØ*Ÿš¨qÑ1Ô1�HÝ)5°hÔ6HÑ)IÔ)IÐI˜Ið !ÝœðKå$Ô.¨xÑ8Ô8Ø Ô,¨dÔ.@ñ	Bô Bð Bñ
 !ð!ð ! ”^Ô(¨GÒ3Ð3¸ÀA¼Ô8LÐPWÒ8WÐ8WØ—O’O AÑ&Ô&Ð&Ø :­S°©[¬[Ð :Ð :�IØð 2ØÐ(Ø',Ð$:Ð$:¨yÐ$:Ð$:˜	Ý˜y¨&Ñ1Ô1Ð1å!Ô3°KÑ@Ô@ˆEØˆ}Ý”ðCåÔ& t¤|Ñ4Ô4ØÔ$ dÔ&8ñ	:ô :ð :ñ
 Ý Ô5°eÐ=NÑOÔOð ÙØˆðXÝØ¨[ÐEVØ$/¸}Ø'5¸wØ#-°fÀIð	Oñ Oô Oð Oñ Oøõ
 (ð Xð Xð XÝ”LÐ!GÈÈiÑXÔXÐXÝ”LÐ!BÈYÐWÑWÔWÐWÐWÐWÐWÐWÑWøøøøðXøøøñ ð ŒY˜)Ò#Ð#¨Ô(=ÀÒ(HÐ(HÝ!Ô3°D´LÑAÔAˆEØˆ}Ý”ðBåÔ& t¤|Ñ4Ô4ØÔ$ dÔ&8ñ	:ô :ð :ñ
 Ý Ô5°eÐ=NÑOÔOð ÙÝ$Ô4°T´\ÑBÔBˆMÝ!Ø! 8¨]¸KÈØ˜F K°ÀØ#ð%ñ %ô %ð %ñ %ð
 ŒY˜)Ò#Ñ#¨Ô(=ÀÒ(GÑ(GÝ'¨Ñ-Ô-ˆDàˆ|Ý”ðAåÔ& t¤|Ñ4Ô4ØÔ$ dÔ&8ñ	:ô :ð :ñ
 à!ˆNØ!ð Vð V�	Ø'Ÿmšm¨MÑ:Ô:�Ý%5Ð%BÐ%B¸	Ð%BÐ%BÐ"Ý"Ô8¸¼ÑFÔF�Ý#Õ$;¸HÀgÑ$NÔ$NÑOÔO�àð KØ&1°4Ð9KÐ%LÐ$M�MØ×%Ò% t¨]¸LÐ&IÑJÔJÐJà#*ð 
Vð 
V�KØ"Ô'¨9Ò4Ð4¸Ô8KÐ8SØ Ý#'Õ(?Ø Ý Ô6°{Ô7JÑKÔKñ)Mô )Mñ $Nô $N�Lð $ð Và'Ð)K¨[Ô-IÐ)KÐ)KØ.ð*0ð )1˜ð #×)Ò)¨;¸À|Ð*TÑUÔUÐUøð
VñVð, ŒY˜)Ò#Ð#¨Ô(=ÀÒ(LÐ(LØ!ˆNÝÔ4°T´\ÑBÔBˆGÝ#Ý& {°H¸gÑFÔFñ Hô  HÐà-ð Mð M�ØÐ.Ð.Ð.Ý”NØMØŸš C¨Ñ-Ô-¨tÔ/?ÀÔASñUô Uð Uð �Eð	 /ð Ð*Ø×-Ò-Ð.>ÀÑLÔLÐLùàŒY˜)Ò#Ñ#¨Ô(=ÀÒ(PÑ(PØ!ˆNå0°´Ñ>Ô>Ð>�ÐGÝ”ð@åÔ& t¤|Ñ4Ô4°dÔ6FØÔ&ñ	(ô (ð (ñ
 åÔ4°T´\ÑBÔBˆGÝ5Ø ¨7ñ 4ô  4Ðð Ø$;Ø"ðð ˆKð
 6Fð >ð >Ñ1�Ð!1Ø" kÐ1Ð1Ø3C�K Ñ0Ð0å”NØNØ'­Ô);¸D¼LÑ)IÔ)IØÔ(¨$Ô*<ñ>ô >ð >ð >ð
 ˜5Ô!Ð)Ý”ð@åÔ& t¤|Ñ4Ô4°dÔ6FØÔ&ñ	(ô (ð (ñ
 å�{ K°Ô$6°qÔ$9Ñ:Ô:ð 9¸hð
9Ý$0°¸;Ñ$GÔ$G�Mð ,9�N 4Ñ(Ð(øõ %ð ð ð Ý”NðDå Ô*¨4¬<Ñ8Ô8¸$Ô:JØÔ*ñ	,ô ,ð ,ð
 ð9ð 9ð 9ñ 9ô 9ð 9ñ 9ðøøøð )ð9ð 9ð 9ñ 9ô 9ð 9ð 9ð 9ð 9ð 9ð 9øøøð 9ð 9ð 9ð 9ùð ŒY˜)Ò#Ñ#¨Ô(=ÀÒ(PÑ(PÝÔ4°T´\À=ÑQÔQˆDØˆ|Ý”ð@åÔ& t¤|Ñ4Ô4°dÔ6FØÔ&ñ	(ô (ð (ñ
 à!ˆNÝÔ4°T´\ÑBÔBˆGàØ ØØØØØ ØØ$(ð
ð 
ˆGõ  6Ø ¨7ñ 4ô  4Ðð 6Fð <ð <Ñ1�Ð!1Ø+;�˜Ñ(Ð(à�xÔ Ð(Ø1��à  Ô*�à�aŒyÐ Ø˜!”9Ð ?Ð?Ð?Ý˜7 9Ô-Ð3°Ñ4Ô4°qÒ8Ð8ÝœðIà  $Ô"2°DÔ4FÈÈqÌ	ñSô Sð Sñ !ð 9ð ˜A”YÐ";Ð;Ð;Ý˜7 9Ô-Ð3°Ñ4Ô4°qÒ8Ð8ÝœðJà  $Ô"2°DÔ4FÈÈqÌ	ñSô Sð Sñ !ð 9ð ˜A”Y *Ò,Ð,Ý˜7Ð#5Ô6Ð<¸"Ñ=Ô=ÀÒAÐAÝœðBð ! $Ô"2°DÔ4Fñ	Hô Hð Hñ
 !à")ˆM˜$ÑÑàŒY˜)Ò#Ñ#¨Ô(=ÀÒ(HÑ(HØˆJÝ'¨¬Ñ5Ô5ˆGØ@GÐ%O¥^°GÑ%<Ô%<Ð%<ÈRÐ"Ø0ð ð �Ý ,¨VÑ 4Ô 4Ð4�9ð ØÐ(Ø',Ð$:Ð$:¨yÐ$:Ð$:˜	Ø×%Ò% iÑ0Ô0Ð0Ð0à!%�JØØÐ!Ý”ðBåÔ& t¤|Ñ4Ô4ØÔ$ dÔ&8ñ	:ô :ð :ñ
 Ý�Z‘” 1Ò$Ð$Ø”<ð Ý”NðFàÔ(¨$Ô*<ñ>ô >ð >ñ Ø!+ð 2ð 2�IÝ˜y¨&Ñ1Ô1Ð1Ð1Ùàð 7Ø'‘
�	�	à6­¨V©¬Ð6Ð6�	ØÐ$Ø#(Ð 6Ð 6¨9Ð 6Ð 6�IÝ�y &Ñ)Ô)Ð)àŒ|Ð#ÙÝ$Ô4°T´\ÑBÔBˆMÝ!Ø! 8¨]¸KÈØ˜F K°ÀØ#¨9ð6ñ 6ô 6ð 6ñ 6õ ŒNØ*Ø�dÔ&¨Ô(:ñ<ô <ð <ñ <ðc
S<ð S<sh   ÂDF!Æ!GÆ0GÇGÐ%Q Ñ 
RÑ
,Q<Ñ<Râ c9âbâc9âAc)ãc9ã(c)ã)c9ã9c=	ä c=	c
                 óv  — g }
|€t          j        ¦   «         }|€t          ¦   «         }|                      ¦   «         D ]!}|                     ¦   «         D ]
\  }}|||<   ŒŒ"|                      |	¦  «        pg D ]}|
                     |ddf¦  «         Œ|r1|                      ¦   «         pg D ]}|
                     |ddf¦  «         Œt          | j	        | j
        | j        | j        |||||¦	  «	        D ]}|
                     |ddf¦  «         Œ|pg D ]}|
                     |ddf¦  «         Œt          | |
|||¦  «        S )a   Compute all the computed styles of all elements in ``html`` document.

    Do everything from finding author stylesheets to parsing and applying them.

    Return a ``style_for`` function that takes an element and an optional
    pseudo-element type, and return a style dict object.

    Nr-  r?   rä   r.  )r   ÚCounterStyler   Ú_ua_counter_stylerG  Ú_ua_stylesheetsr¨   Ú_ph_stylesheetsrÝ   rP   rÂ   rÆ   rC   r=   )rX   Úuser_stylesheetsrZ   rI   rÇ   rÈ   r‹   rT   rD   ÚformsrY   ra   r³   r´   rg   s                  rm   Úget_all_computed_stylesrP  ê  s–  € ð €FØÐÝ Ô-Ñ/Ô/ˆØÐÝ'Ñ)Ô)ˆØ×'Ò'Ñ)Ô)ð 'ð 'ˆØŸ+š+™-œ-ð 	'ð 	'‰JˆC�Ø!&ˆM˜#ÑÐð	'à×&Ò& uÑ-Ô-Ð3°ð 3ð 3ˆØ�Š�u˜l¨DÐ1Ñ2Ô2Ð2Ð2Øð 8Ø×*Ò*Ñ,Ô,Ð2°ð 	8ð 	8ˆEØ�MŠM˜5 (¨IÐ6Ñ7Ô7Ð7Ð7Ý!ØÔ  $¤/°4Ô3CØŒM˜;¨°~ÀzØñô ð /ð /ˆð 	�Š�u˜h¨Ð-Ñ.Ô.Ð.Ð.Ø"Ð( bð -ð -ˆØ�Š�u˜f dÐ+Ñ,Ô,Ð,Ð,å�D˜&Ð"6¸ÐEUÑVÔVÐVro   )FNr“   )NNNr�   )	NFNNNNNNF)]r¡   rœ  Úcollectionsr   Ú	itertoolsr   Úloggingr   r   r   r-  rà   Útinycss2.astÚtinycss2.nthÚPIL.ImageCmsr   r¥   r
   Úloggerr   r   Ú
text.fontsr   Úurlsr   r   r   r   r   r   Úcomputed_valuesr   Ú	functionsr   r   r   Ú
propertiesr   r   r   r   Úunitsr   r   r   r    r!   Ú
validationr"   Úvalidation.descriptorsr#   Úvalidation.propertiesr$   r]  r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r,  r6   r=   r¬   r·   rÝ   rK   rN   r:  rX  r\  rj  r¡  r2  r‚   r¿  rƒ   rß  rô  rö  rú  rý  r  r1  rP  r£   ro   rm   ú<module>ra     s  ððð ð €€€Ø "Ð "Ð "Ð "Ð "Ð "Ø Ð Ð Ð Ð Ð Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ø (Ð (Ð (Ð (Ð (Ð (à Ð Ð Ð Ð Ð Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø *Ð *Ð *Ð *Ð *Ð *Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ %Ð %Ð %Ð %Ð %Ð %Ð %Ð %Ø /Ð /Ð /Ð /Ð /Ð /Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TØ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OÐ OØ /Ð /Ð /Ð /Ð /Ð /Ø :Ð :Ð :Ð :Ð :Ð :Ø 9Ð 9Ð 9Ð 9Ð 9Ð 9ðWð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð Wð
(€ð �:ØÐCÐCÐCñEô EÐ ðnð nð nð nð nñ nô nð nðbð ð ðð ð ð&-Xð -Xð -Xð`.ð .ð .ð .ðDð ð ð.(ð (ð (ð (ðVB&ð B&ð B&ðJ/&ð /&ð /&ðdð ð ð$CKð CKð CKð CKðL
ð 
ð 
ð 
ð 
�4ñ 
ô 
ð 
ð)ð )ð )ð )ð )�Tñ )ô )ð )ðXKð Kð Kð Kð K�Dñ Kô Kð Kð\'ð 'ð 'ð 'ð 'ñ 'ô 'ð 'ð$ð ð ð( IMØ59Ø,0ð,ð ,ð ,ð ,ðð ð ð&ð ð ðrð rð rðn GKðW<ð W<ð W<ð W<ðt
 OTØQUØKOØ"'ð"Wð "Wð "Wð "Wð "Wð "Wro   