§
    ¥”j2 ã                   ó#  — d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
mZ ddlmZmZmZ dd	lmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$ d
Z% e&¦   «         Z' e&¦   «         Z(i Z) G d„ de¦  «        Z*	 	 dôd„Z+dõd„Z, e+¦   «         ee#d„ ¦   «         ¦   «         ¦   «         Z- e+d¦  «         e+d¦  «         e+d¦  «         e+d¦  «         e+d¦  «         e+dd¬¦  «         e+d¦  «        e$d„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z. e+¦   «         e$d„ ¦   «         ¦   «         Z/ e+¦   «         e#d„ ¦   «         ¦   «         Z0 e+¦   «         e#d„ ¦   «         ¦   «         Z1 e+d¦  «        e$d „ ¦   «         ¦   «         Z2 e+d!d¬"¦  «        ee$d#„ ¦   «         ¦   «         ¦   «         Z3 e+d$d¬"¦  «        e$d%„ ¦   «         ¦   «         Z4 e+¦   «         d&„ ¦   «         Z5 e+¦   «         ed'„ ¦   «         ¦   «         Z6 e+¦   «         ed(„ ¦   «         ¦   «         Z7 e+¦   «         ed)„ ¦   «         ¦   «         Z8 e+¦   «         ed*„ ¦   «         ¦   «         Z9 e+d+¦  «         e+d,¦  «        ee#d-„ ¦   «         ¦   «         ¦   «         ¦   «         Z: e+¦   «         d.„ ¦   «         Z; e+d/¦  «         e+d0¦  «         e+d1¦  «         e+d2¦  «        d3„ ¦   «         ¦   «         ¦   «         ¦   «         Z< e+d4¦  «         e+d5¦  «         e+d6¦  «         e+d7¦  «         e+d8d¬¦  «        e#d9„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z= e+d:¦  «         e+d;¦  «        e#d<„ ¦   «         ¦   «         ¦   «         Z> e+¦   «         e#d=„ ¦   «         ¦   «         Z? e+¦   «         e#d>„ ¦   «         ¦   «         Z@ e+¦   «         e$d?„ ¦   «         ¦   «         ZA e+d@d¬¦  «        e#dA„ ¦   «         ¦   «         ZB e+d¬¦  «        e$dB„ ¦   «         ¦   «         ZC e+d¬¦  «        e#dC„ ¦   «         ¦   «         ZD e+d¬¦  «        e$dD„ ¦   «         ¦   «         ZE e+dEd¬¦  «         e+dFd¬¦  «         e+dGd¬¦  «         e+dHd¬¦  «        e$dI„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ZF e+d¬¦  «        dJ„ ¦   «         ZG e+dK¦  «        e#dL„ ¦   «         ¦   «         ZH e+dM¦  «         e+dN¦  «         e+dO¦  «         e+dP¦  «         e+dQd¬¦  «         e+dR¦  «        e$dS„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ZI e+dTd¬"¦  «         e+dUd¬"¦  «        e$dV„ ¦   «         ¦   «         ¦   «         ZJ e+dW¦  «         e+dX¦  «        dY„ ¦   «         ¦   «         ZK e+dZ¦  «         e+d[¦  «        d\„ ¦   «         ¦   «         ZL e+d]¦  «         e+d^¦  «        d_„ ¦   «         ¦   «         ZM e+d`¦  «         e+da¦  «        db„ ¦   «         ¦   «         ZN e+¦   «         e#dc„ ¦   «         ¦   «         ZO e+d¬¦  «        e$dd„ ¦   «         ¦   «         ZP e+d¬¦  «        e#de„ ¦   «         ¦   «         ZQ e+¦   «         e#df„ ¦   «         ¦   «         ZR e+¦   «         e#dg„ ¦   «         ¦   «         ZS e+¦   «         e#dh„ ¦   «         ¦   «         ZT e+¦   «         e$di„ ¦   «         ¦   «         ZU e+d¬"¦  «        dj„ ¦   «         ZV e+¦   «         dk„ ¦   «         ZW e+¦   «         dl„ ¦   «         ZX e+¦   «         dm„ ¦   «         ZYdn„ ZZ e+do¦  «         e+dp¦  «         e+dq¦  «         e+dr¦  «         e+ds¦  «         e+dt¦  «         e+du¦  «         e+dv¦  «         e+dw¦  «        e$dx„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z[ e+dy¦  «         e+dz¦  «        e$d{„ ¦   «         ¦   «         ¦   «         Z\ e+d|d¬¦  «         e+d}d¬¦  «        e$d~„ ¦   «         ¦   «         ¦   «         Z] e+d¬¦  «        e#d„ ¦   «         ¦   «         Z^ e+¦   «         e#d€„ ¦   «         ¦   «         Z_ e+¦   «         d�„ ¦   «         Z` e+d‚¦  «        e#dƒ„ ¦   «         ¦   «         Za e+¦   «         ed„„ ¦   «         ¦   «         Zb e+¦   «         e#d…„ ¦   «         ¦   «         Zc e+¦   «         e$d†„ ¦   «         ¦   «         Zd e+¦   «         d‡„ ¦   «         Ze e+¦   «         e#dˆ„ ¦   «         ¦   «         Zf e+¦   «         e#d‰„ ¦   «         ¦   «         Zg e+¦   «         dŠ„ ¦   «         Zh e+¦   «         d‹„ ¦   «         Zi e+¦   «         e#dŒ„ ¦   «         ¦   «         Zj e+¦   «         d�„ ¦   «         Zk e+¦   «         dŽ„ ¦   «         Zl e+¦   «         e$d�„ ¦   «         ¦   «         Zm e+¦   «         e#d�„ ¦   «         ¦   «         Zn e+¦   «         e#d‘„ ¦   «         ¦   «         Zo e+¦   «         e$d’„ ¦   «         ¦   «         Zp e+¦   «         e#d“„ ¦   «         ¦   «         Zq e+d¬¦  «        e$d”„ ¦   «         ¦   «         Zr e+d•¦  «         e+d–¦  «        e$d—„ ¦   «         ¦   «         ¦   «         Zs e+¦   «         e$d˜„ ¦   «         ¦   «         Zt e+¦   «         e$d™„ ¦   «         ¦   «         Zu e+¦   «         e#dš„ ¦   «         ¦   «         Zv e+¦   «         e$d›„ ¦   «         ¦   «         Zw e+dœ¦  «         e+d�¦  «        e$dž„ ¦   «         ¦   «         ¦   «         Zx e+dŸ¦  «         e+d ¦  «         e+d¡¦  «         e+d¢¦  «        e$d£„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Zy e+d¤¦  «         e+d¥¦  «        e$d¦„ ¦   «         ¦   «         ¦   «         Zz e+¦   «         e$d§„ ¦   «         ¦   «         Z{ e+¦   «         e$d¨„ ¦   «         ¦   «         Z| e+d©¦  «         e+dª¦  «        e$d«„ ¦   «         ¦   «         ¦   «         Z} e+d¬¦  «        e$d¬„ ¦   «         ¦   «         Z~ e+¦   «         e#d­„ ¦   «         ¦   «         Z e+¦   «         e#d®„ ¦   «         ¦   «         Z€ e+¦   «         e$d¯„ ¦   «         ¦   «         Z� e+¦   «         d°„ ¦   «         Z‚ e+¦   «         e#d±„ ¦   «         ¦   «         Zƒ e+¦   «         e#d²„ ¦   «         ¦   «         Z„ e+¦   «         e#d³„ ¦   «         ¦   «         Z… e+¦   «         d´„ ¦   «         Z† e+¦   «         e#dµ„ ¦   «         ¦   «         Z‡ e+¦   «         e$d¶„ ¦   «         ¦   «         Zˆ e+¦   «         e$d·„ ¦   «         ¦   «         Z‰ e+¦   «         e#d¸„ ¦   «         ¦   «         ZŠ e+¦   «         e$d¹„ ¦   «         ¦   «         Z‹ e+¦   «         e#dº„ ¦   «         ¦   «         ZŒ e+¦   «         e#d»„ ¦   «         ¦   «         Z� e+¦   «         e#d¼„ ¦   «         ¦   «         ZŽ e+¦   «         e#d½„ ¦   «         ¦   «         Z� e+¦   «         e$d¾„ ¦   «         ¦   «         Z� e+¦   «         e#d¿„ ¦   «         ¦   «         Z‘ e+dÀ¦  «         e+dÁ¦  «        e$dÂ„ ¦   «         ¦   «         ¦   «         Z’dÃ„ Z“dÄ„ Z”dÅ„ Z•dÆ„ Z–dÇ„ Z— e+dÈ¦  «         e+dÉ¦  «        dÊ„ ¦   «         ¦   «         Z˜ e+¦   «         dË„ ¦   «         Z™ e+dÌ¦  «         e+dÍ¦  «        dÎ„ ¦   «         ¦   «         Zš e+¦   «         dÏ„ ¦   «         Z› e+dÐ¦  «         e+dÑ¦  «         e+dÒ¦  «         e+dÓ¦  «        dÔ„ ¦   «         ¦   «         ¦   «         ¦   «         Zœ e+¦   «         e#dÕ„ ¦   «         ¦   «         Z� e+¦   «         dÖ„ ¦   «         Zž e+¦   «         d×„ ¦   «         ZŸ e+¦   «         dØ„ ¦   «         Z  e+¦   «         dÙ„ ¦   «         Z¡ e+¦   «         dÚ„ ¦   «         Z¢ e+¦   «         dÛ„ ¦   «         Z£ e+¦   «         e$dÜ„ ¦   «         ¦   «         Z¤ e+d¬¦  «        e#dÝ„ ¦   «         ¦   «         Z¥ e+d¬¦  «        dÞ„ ¦   «         Z¦ e+d¬¦  «        dß„ ¦   «         Z§ e+d¬à¦  «        e$dá„ ¦   «         ¦   «         Z¨ e+dd¬â¦  «        e$dã„ ¦   «         ¦   «         Z© e+¦   «         e$dä„ ¦   «         ¦   «         Zª e+d¬¦  «        e$då„ ¦   «         ¦   «         Z« e+d¬¦  «        e$dæ„ ¦   «         ¦   «         Z¬ e+d¬¦  «        e$dç„ ¦   «         ¦   «         Z­ e+d¬¦  «        dè„ ¦   «         Z® e+d¬à¦  «        e$dé„ ¦   «         ¦   «         Z¯ e+dd¬ê¦  «        dë„ ¦   «         Z° e+d¬¦  «        e$dì„ ¦   «         ¦   «         Z± e+d¬¦  «        e#dí„ ¦   «         ¦   «         Z² e+d¬¦  «        e#dî„ ¦   «         ¦   «         Z³ e+d¬¦  «        e#dï„ ¦   «         ¦   «         Z´ e+dd¬ê¦  «        edð„ ¦   «         ¦   «         Zµ e+¦   «         dñ„ ¦   «         Z¶ e+¦   «         e$dò„ ¦   «         ¦   «         Z· e+¦   «         dó„ ¦   «         Z¸dS )öz^Validate properties.

See https://www.w3.org/TR/CSS21/propidx.html and various CSS3 modules.

é    )Úinf)Úparse_component_value_list©Úparse_coloré   )Úcomputed_values)ÚFunctionÚ	check_var)ÚKNOWN_PROPERTIESÚZERO_PIXELSÚ	Dimension)ÚInvalidValuesÚPendingÚcomma_separated_listÚ	get_angleÚget_content_listÚget_content_list_tokenÚget_custom_identÚ	get_imageÚget_keywordÚ
get_lengthÚ
get_numberÚget_percentageÚget_resolutionÚget_single_keywordÚget_urlÚparse_2d_positionÚparse_positionÚremove_whitespaceÚsingle_keywordÚsingle_tokenz-weasy-c                   ó   — e Zd ZdZd„ ZdS )ÚPendingPropertyz>Property with validation done when defining calculated values.c                 óD   — t          || j        ¦  «        d         d         S )Nr   é   )Úvalidate_non_shorthandÚname)ÚselfÚtokensÚ
wanted_keys      ús/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/weasyprint/css/validation/properties.pyÚvalidatezPendingProperty.validate$   s   € Ý% f¨d¬iÑ8Ô8¸Ô;¸AÔ>Ð>ó    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r,   © r-   r+   r#   r#   "   s)   € € € € € ØHÐHð?ð ?ð ?ð ?ð ?r-   r#   NFc                 ó   ‡ ‡‡‡— ˆ ˆˆˆfd„}|S )u@  Decorator adding a function to the ``PROPERTIES``.

    The name of the property covered by the decorated function is set to
    ``property_name`` if given, or is inferred from the function name
    (replacing underscores by hyphens).

    :param proprietary:
        Proprietary (vendor-specific, non-standard) are prefixed: anchors can
        for example be set using ``-weasy-anchor: attr(id)``.
        See https://www.w3.org/TR/CSS/#proprietary
    :param unstable:
        Mark properties that are defined in specifications that didn't reach
        the Candidate Recommandation stage. They can be used both
        vendor-prefixed or unprefixed.
        See https://www.w3.org/TR/CSS/#unstable-syntax
    :param wants_base_url:
        The function takes the stylesheetâ€™s base URL as an additional
        parameter.

    c                 ó&  •— ‰€| j                              dd¦  «        }n‰}|t          v s
J |¦   «         ‚|t          vs
J |¦   «         ‚‰| _        | t          |<   ‰rt
                               |¦  «         ‰rt                               |¦  «         | S )z'Add ``function`` to the ``PROPERTIES``.NÚ_ú-)r.   Úreplacer   Ú
PROPERTIESÚwants_base_urlÚPROPRIETARYÚaddÚUNSTABLE)Úfunctionr'   Úproperty_nameÚproprietaryÚunstabler9   s     €€€€r+   Ú	decoratorzproperty.<locals>.decorator@   s¦   ø€ àÐ ØÔ$×,Ò,¨S°#Ñ6Ô6ˆDˆDà ˆDØÕ'Ð'Ð'Ð'¨Ñ'Ô'Ð'Ø�:Ð%Ð%Ð% tÑ%Ô%Ð%à"0ˆÔØ#�
�4ÑØð 	"Ý�OŠO˜DÑ!Ô!Ð!Øð 	Ý�LŠL˜ÑÔÐØˆr-   r2   )r>   r?   r@   r9   rA   s   ```` r+   ÚpropertyrB   *   s6   øøøø€ ð,ð ð ð ð ð ð ð ð  Ðr-   c                 ó�  — |                      d¦  «        r|| ffS |s|t          vrt          d¦  «        ‚|s|t          vrt          d¦  «        ‚t          |         }| D ]&}t	          |¦  «        r|t          | |¦  «        ffc S Œ't          | ¦  «        }|dv r|}n(|j        r || |¦  «        }n || ¦  «        }|€t          ‚||ffS )z'Validator for non-shorthand properties.z--zunknown propertyzproperty not supported yet)ÚinitialÚinherit)Ú
startswithr   r   r8   r
   r#   r   r9   )r)   r'   Úbase_urlÚrequiredr=   ÚtokenÚkeywordÚvalues           r+   r&   r&   S   s  € à‡‚�tÑÔð !à�v�Ð Ð àð 0˜Õ$4Ð4Ð4ÝÐ.Ñ/Ô/Ð/àð :˜¥JÐ.Ð.ÝÐ8Ñ9Ô9Ð9å˜$Ô€HØð <ð <ˆÝ�UÑÔð 	<à�?¨6°4Ñ8Ô8Ð9Ð;Ð;Ð;Ð;ð	<õ ! Ñ(Ô(€GØÐ(Ð(Ð(ØˆˆàÔ"ð 	%Ø�H˜V XÑ.Ô.ˆEˆEà�H˜VÑ$Ô$ˆEØˆ=ÝÐØ�5ˆMÐÐr-   c                 ó
   — | dv S )z.``background-attachment`` property validation.)ÚscrollÚfixedÚlocalr2   ©rJ   s    r+   Úbackground_attachmentrQ   r   s   € ð
 Ð2Ð2Ð2r-   zbackground-colorzborder-top-colorzborder-right-colorzborder-bottom-colorzborder-left-colorzcolumn-rule-colorT)r@   ztext-decoration-colorc                 ó(   — t          | ¦  «        r| S d S ©Nr   ©rI   s    r+   Úother_colorsrU   z   s#   € õ �5ÑÔð Øˆðð r-   c                 óR   — t          | ¦  «        dk    rdS t          | ¦  «        r| S d S )NÚinvertÚcurrentcolor)r   r   rT   s    r+   Úoutline_colorrY   ‡   s;   € õ �5ÑÔ˜XÒ%Ð%Øˆ~Ý	�UÑ	Ô	ð Øˆðð r-   c                 ó
   — | dv S )N)ÚseparateÚcollapser2   rP   s    r+   Úborder_collapser]   �   s   € ð Ð.Ð.Ð.r-   c                 ó
   — | dv S )z$``empty-cells`` property validation.)ÚshowÚhider2   rP   s    r+   Úempty_cellsra   –   s   € ð Ð&Ð&Ð&r-   Úcolorc                 ó<   — t          | ¦  «        }|dk    rdS |r| S dS )z0``*-color`` and ``color`` properties validation.rX   rE   Nr   )rI   Úresults     r+   rb   rb   �   s8   € õ ˜ÑÔ€FØ�ÒÐØˆyØ	ð Øˆðð r-   zbackground-image)r9   c                 óL   — t          | ¦  «        dk    rdS t          | |¦  «        S ©NÚnone©rg   N©r   r   ©rI   rG   s     r+   Úbackground_imagerk   ¨   ó,   € õ �5ÑÔ˜VÒ#Ð#Øˆ|Ý�U˜HÑ%Ô%Ð%r-   zlist-style-imagec                 ó¸   — t          | ¦  «        dk    rdS t          | |¦  «        }|r.|d         dk    r$|d         d         dk    rd|d         d         fS dS dS dS )z)``list-style-image`` property validation.rg   rh   r   Úurlr%   ÚexternalN)r   r   )rI   rG   Ú
parsed_urls      r+   Úlist_style_imagerq   ±   s   € õ �5ÑÔ˜VÒ#Ð#Øˆ|Ý˜ Ñ)Ô)€JØð +Ø�aŒ=˜EÒ!Ð! j°¤m°AÔ&6¸*Ò&DÐ&DØ˜* Qœ-¨Ô*Ð*Ð*ð+ð +Ø!Ð!Ð&DÐ&Dr-   c                 óZ   — t          | ¦  «        dk    r
| dd…         } t          | ¦  «        S )z)``transform-origin`` property validation.é   Nr   )Úlenr   ©r)   s    r+   Útransform_originrv   ½   s0   € õ ˆ6�{„{�aÒÐà˜˜˜”ˆÝ˜VÑ$Ô$Ð$r-   c                 ó    — t          | ¦  «        S )z,``background-position`` property validation.©r   ru   s    r+   Úbackground_positionry   Æ   ó   € õ ˜&Ñ!Ô!Ð!r-   c                 ó    — t          | ¦  «        S )z(``object-position`` property validation.rx   ru   s    r+   Úobject_positionr|   Í   rz   r-   c                 óÜ   — t          t          t          | ¦  «        ¦  «        }|dk    rdS |dk    rdS |dv r|dz  S t          |¦  «        dk    rt	          d„ |D ¦   «         ¦  «        r|S dS dS )	z*``background-repeat`` property validation.)zrepeat-x)Úrepeatú	no-repeat)zrepeat-y)r   r~   ))r   )r~   )Úspace)Úroundr   c              3   ó   K  — | ]}|d v V — Œ	dS ))r   r~   r€   r�   Nr2   )Ú.0Úks     r+   ú	<genexpr>z$background_repeat.<locals>.<genexpr>ß   s<   è è € ð "ð "àð Ð:Ð:ð"ð "ð "ð "ð "ð "r-   N)ÚtupleÚmapr   rt   Úall©r)   Úkeywordss     r+   Úbackground_repeatr‹   Ô   s¤   € õ •S� fÑ-Ô-Ñ.Ô.€HØ�=Ò Ð Ø&Ð&Ø�=Ò Ð Ø&Ð&ØÐHÐHÐHØ˜!‰|ÐÝ
ˆ8�}„}˜ÒÐ�cð "ð "àð"ñ "ô "ñ ô Ðð ˆð ÐÐÐr-   c                 óÊ  — t          | ¦  «        dk    r?| d         }t          |¦  «        }|dv r|S |dk    rdS t          |dd¬¦  «        }|r|dfS d
S t          | ¦  «        d	k    r{g }| D ]T}t          |dd¬¦  «        }|r|                     |¦  «         Œ,t          |¦  «        dk    r|                     d¦  «         ŒUt          |¦  «        d	k    rt	          |¦  «        S d
S d
S )z#Validation for ``background-size``.r%   r   )ÚcontainÚcoverÚauto)r�   r�   FT©ÚnegativeÚ
percentager   N)rt   r   r   Úappendr†   )r)   rI   rJ   ÚlengthÚvaluess        r+   Úbackground_sizer–   å   s'  € õ ˆ6�{„{�aÒÐØ�q”	ˆÝ˜eÑ$Ô$ˆØÐ*Ð*Ð*ØˆNØ�fÒÐØ#Ð#Ý˜E¨E¸dÐCÑCÔCˆØð 	$Ø˜FÐ#Ð#ð	$ð 	$å	ˆV‰Œ˜Ò	Ð	ØˆØð 	&ð 	&ˆEÝ °À$ÐGÑGÔGˆFØð &Ø—’˜fÑ%Ô%Ð%Ð%Ý˜UÑ#Ô# vÒ-Ð-Ø—’˜fÑ%Ô%Ð%øÝˆv‰;Œ;˜!ÒÐÝ˜‘=”=Ð ð 
Ð	ð Ðr-   zbackground-clipzbackground-originc                 ó
   — | dv S )z\Validation for the ``<box>`` type used in ``background-clip``
    and ``background-origin``.)ú
border-boxúpadding-boxúcontent-boxr2   rP   s    r+   Úboxr›   ÿ   s   € ð ÐBÐBÐBr-   c                 óÊ   — d„ | D ¦   «         }t          |¦  «        rEt          |¦  «        dk    r|d         |d         fS t          |¦  «        dk    rt          |¦  «        S dS dS )z,Validator for the `border-spacing` property.c                 ó0   — g | ]}t          |d ¬¦  «        ‘ŒS ©F©r‘   ©r   ©rƒ   rI   s     r+   ú
<listcomp>z"border_spacing.<locals>.<listcomp>  ó%   € ÐEÐEÐE°U�z˜%¨%Ð0Ñ0Ô0ÐEÐEÐEr-   r%   r   r   N©rˆ   rt   r†   ©r)   Úlengthss     r+   Úborder_spacingr§   	  sy   € ð FÐE¸fÐEÑEÔE€GÝ
ˆ7�|„|ð "Ýˆw‰<Œ<˜1ÒÐØ˜A”J ¨¤
Ð+Ð+Ý�‰\Œ\˜QÒÐÝ˜‘>”>Ð!ð	"ð "ð Ðr-   zborder-top-right-radiuszborder-bottom-right-radiuszborder-bottom-left-radiuszborder-top-left-radiusc                 óÊ   — d„ | D ¦   «         }t          |¦  «        rEt          |¦  «        dk    r|d         |d         fS t          |¦  «        dk    rt          |¦  «        S dS dS )z/Validator for the `border-*-radius` properties.c                 ó2   — g | ]}t          |d d¬¦  «        ‘ŒS )FTr�   r    r¡   s     r+   r¢   z(border_corner_radius.<locals>.<listcomp>  s'   € ÐVÐVÐVÀe�z˜%¨%¸DÐAÑAÔAÐVÐVÐVr-   r%   r   r   Nr¤   r¥   s     r+   Úborder_corner_radiusrª     sy   € ð WÐVÈvÐVÑVÔV€GÝ
ˆ7�|„|ð "Ýˆw‰<Œ<˜1ÒÐØ˜A”J ¨¤
Ð+Ð+Ý�‰\Œ\˜QÒÐÝ˜‘>”>Ð!ð	"ð "ð Ðr-   zborder-top-stylezborder-right-stylezborder-left-stylezborder-bottom-stylezcolumn-rule-stylec                 ó
   — | dv S )z)``border-*-style`` properties validation.)
rg   ÚhiddenÚdottedÚdashedÚdoubleÚinsetÚoutsetÚgrooveÚridgeÚsolidr2   rP   s    r+   Úborder_stylerµ   "  s   € ð ð Fð Fð Fr-   zbreak-beforezbreak-afterc                 ó
   — | dv S )z;``break-before`` and ``break-after`` properties validation.)r�   Úavoidú
avoid-pageÚpageÚleftÚrightÚrectoÚversoúavoid-columnÚcolumnÚalwaysr2   rP   s    r+   Úbreak_before_afterrÁ   .  s   € ð
 ð Mð Mð Mr-   c                 ó
   — | dv S )z%``break-inside`` property validation.)r�   r·   r¸   r¾   r2   rP   s    r+   Úbreak_insiderÃ   7  s   € ð ÐEÐEÐEr-   c                 ó
   — | dv S )z-``box-decoration-break`` property validation.)ÚsliceÚcloner2   rP   s    r+   Úbox_decoration_breakrÇ   >  ó   € ð Ð(Ð(Ð(r-   c                 óX   — | j         dk    r	d| j        fS t          | ¦  «        }|dv r|S dS )z%``box-ellipsis`` property validation.Ústring©rg   r�   N)ÚtyperK   r   ©rI   rJ   s     r+   Úblock_ellipsisrÎ   E  sD   € ð „z�XÒÐØ˜%œ+Ð&Ð&å˜eÑ$Ô$ˆØÐ&Ð&Ð&ØˆNð 'Ð&r-   Úcontinuec                 ó
   — | dv S )z!``continue`` property validation.)r�   Údiscardr2   rP   s    r+   Ú	continue_rÒ   Q  ó   € ð Ð)Ð)Ð)r-   c                 óf   — t          | dd¬¦  «        x}r|j        S t          | ¦  «        dk    rdS d S )NFT©r‘   Úintegerrg   ©r   rK   r   ©rI   Únumbers     r+   Ú	max_linesrÚ   X  sH   € õ ˜E¨E¸4Ð@Ñ@Ô@Ð@€vð ØŒ|ÐÝ	�UÑ	Ô	˜vÒ	%Ð	%Øˆvð 
&Ð	%r-   c                 ó
   — | dv S )z%``margin-break`` property validation.)r�   ÚkeeprÑ   r2   rP   s    r+   Úmargin_breakrÝ   a  s   € ð Ð1Ð1Ð1r-   c                 óD   — | j         dk    r| j        dk    rdn| j        S dS )z``page`` property validation.Úidentr�   N)rÌ   Úlower_valuerK   rT   s    r+   r¹   r¹   h  s2   € ð „z�WÒÐØÔ*¨fÒ4Ð4ˆvˆv¸%¼+ÐEð Ðr-   z
bleed-leftzbleed-rightz	bleed-topzbleed-bottomc                 óJ   — t          | ¦  «        dk    rdS t          | ¦  «        S )z``bleed`` property validation.r�   ©r   r   rT   s    r+   Úbleedrã   p  s*   € õ �5ÑÔ˜VÒ#Ð#Øˆvå˜%Ñ Ô Ð r-   c                 óì   — t          | ¦  «        dk    r't          d„ | D ¦   «         ¦  «        }d|v rd|v r|S d
S d
S t          | ¦  «        dk    r$t          | d         ¦  «        x}dv r|fS |dk    rd	S d
S d
S )z``marks`` property validation.r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ©r   r¡   s     r+   r…   zmarks.<locals>.<genexpr>�  ó*   è è € Ð@Ð@°� UÑ+Ô+Ð@Ð@Ð@Ð@Ð@Ð@r-   ÚcropÚcrossr%   r   )rè   ré   rg   r2   N)rt   r†   r   )r)   rŠ   rJ   s      r+   Úmarksrê   }  s¯   € õ ˆ6�{„{�aÒÐÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�XÐÐ '¨XÐ"5Ð"5ØˆOð ÐÐ"5Ð"5å	ˆV‰Œ˜Ò	Ð	Ý" 6¨!¤9Ñ-Ô-Ð-ˆGÐ2CÐCÐCØ�:ÐØ˜ÒÐØ�2ð	 
Ð	ð Ðr-   zoutline-stylec                 ó
   — | dv S )z(``outline-style`` properties validation.)	rg   r­   r®   r¯   r°   r±   r²   r³   r´   r2   rP   s    r+   Úoutline_stylerì   ‹  s   € ð ð =ð =ð =r-   zborder-top-widthzborder-right-widthzborder-left-widthzborder-bottom-widthzcolumn-rule-widthzoutline-widthc                 óZ   — t          | d¬¦  «        x}r|S t          | ¦  «        x}dv r|S dS )z=Border, column rule and outline widths properties validation.FrŸ   )ÚthinÚmediumÚthickN©r   r   ©rI   r”   rJ   s      r+   Úborder_widthró   “  sJ   € õ ˜E¨EÐ2Ñ2Ô2Ð2€vð ØˆÝ˜uÑ%Ô%Ð%ˆÐ*EÐEÐEØˆð FÐEr-   zborder-image-sourcezmask-border-sourcec                 óL   — t          | ¦  «        dk    rdS t          | |¦  «        S rf   ri   rj   s     r+   Úborder_image_sourcerõ   ¢  rl   r-   zborder-image-slicezmask-border-slicec                 óà  — g }d}t          | ¦  «        D ]œ\  }}t          |d¬¦  «        x}r|                     |¦  «         Œ.t          |¦  «        dk    r0|s.|dt	          | ¦  «        dz
  fv rd}|                     d¦  «         Œqt          |d¬¦  «        x}r|                     |¦  «         Œš d S dt	          |¦  «        t          |¦  «        z
  cxk    rdk    rn d S t          |¦  «        S d S )NFrŸ   Úfillr   r%   Té   )Ú	enumerater   r“   r   rt   r   Úintr†   )r)   r•   r÷   ÚirI   r’   rÙ   s          r+   Úborder_image_slicerü   «  s$  € ð €FØ€DÝ˜fÑ%Ô%ð 
ð 
‰ˆˆ5å'¨¸Ð>Ñ>Ô>Ð>ˆ:ð 	Ø�MŠM˜*Ñ%Ô%Ð%Ð%Ý˜ÑÔ 6Ò)Ð)°$Ð)¸1ÀÅCÈÁKÄKÐRSÁOÐ@TÐ;TÐ;TØˆDØ�MŠM˜&Ñ!Ô!Ð!Ð!Ý! %°%Ð8Ñ8Ô8Ð8ˆVð 	Ø�MŠM˜&Ñ!Ô!Ð!Ð!àˆFˆFà�C�‰KŒK�#˜d™)œ)Ñ#Ð(Ð(Ò(Ð( qÒ(Ð(Ð(Ð(Ð(Ð(Ý�V‰}Œ}Ðð )Ð(r-   zborder-image-widthzmask-border-widthc                 ój  — g }| D ]€}t          |¦  «        dk    r|                     d¦  «         Œ+t          |d¬¦  «        x}r|                     |¦  «         ŒTt          |dd¬¦  «        x}r|                     |¦  «         Œ~ d S dt	          |¦  «        cxk    rdk    rn d S t          |¦  «        S d S )Nr�   FrŸ   Tr�   r%   rø   )r   r“   r   r   rt   r†   ©r)   r•   rI   rÙ   r”   s        r+   Úborder_image_widthrÿ   À  sæ   € ð €FØð ð ˆÝ�uÑÔ Ò'Ð'Ø�MŠM˜&Ñ!Ô!Ð!Ð!Ý! %°%Ð8Ñ8Ô8Ð8ˆVð 	Ø�MŠM˜&Ñ!Ô!Ð!Ð!Ý! %°%ÀDÐIÑIÔIÐIˆVð 	Ø�MŠM˜&Ñ!Ô!Ð!Ð!àˆFˆFà�C�‰KŒKÐÐÒÐ˜1ÒÐÐÐÐÐÝ�V‰}Œ}Ðð Ðr-   zborder-image-outsetzmask-border-outsetc                 ó  — g }| D ]V}t          |d¬¦  «        x}r|                     |¦  «         Œ+t          |d¬¦  «        x}r|                     |¦  «         ŒT d S dt          |¦  «        cxk    rdk    rn d S t	          |¦  «        S d S )NFrŸ   r%   rø   )r   r“   r   rt   r†   rþ   s        r+   Úborder_image_outsetr  Ò  s¼   € ð €FØð ð ˆÝ °Ð6Ñ6Ô6Ð6ˆ6ð 	Ø�MŠM˜&Ñ!Ô!Ð!Ð!Ý! %°%Ð8Ñ8Ô8Ð8ˆVð 	Ø�MŠM˜&Ñ!Ô!Ð!Ð!àˆFˆFà�C�‰KŒKÐÐÒÐ˜1ÒÐÐÐÐÐÝ�V‰}Œ}Ðð Ðr-   zborder-image-repeatzmask-border-repeatc                 ó¦   — dt          | ¦  «        cxk    rdk    r4n d S t          d„ | D ¦   «         ¦  «        }t          |¦  «        h d£k    r|S d S d S )Nr%   r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   z&border_image_repeat.<locals>.<genexpr>æ  rç   r-   >   r�   r€   r~   Ústretch)rt   r†   Úsetr‰   s     r+   Úborder_image_repeatr  â  sv   € ð 	�C�‰KŒKÐÐÒÐ˜1ÒÐÐÐÐÐÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆÝˆx‰=Œ=ÐCÐCÐCÒCÐCØˆOð ÐàCÐCr-   c                 ó
   — | dv S )N)Ú	luminanceÚalphar2   rP   s    r+   Úmask_border_moder
  ë  s   € ð Ð,Ð,Ð,r-   c                 ó^   — t          | d¬¦  «        x}r|S t          | ¦  «        }|dk    r|S dS )z%``column-width`` property validation.FrŸ   r�   Nrñ   rò   s      r+   Úcolumn_widthr  ñ  sH   € õ ˜E¨EÐ2Ñ2Ô2Ð2€vð ØˆÝ˜%Ñ Ô €GØ�&ÒÐØˆð Ðr-   c                 ó
   — | dv S )z$``column-span`` property validation.)rˆ   rg   r2   rP   s    r+   Úcolumn_spanr  ü  s   € ð �oÐ%Ð%r-   c                 ó
   — | dv S )z7Validation for the ``box-sizing`` property from css3-ui)r™   r˜   rš   r2   rP   s    r+   Ú
box_sizingr    s   € ð ÐBÐBÐBr-   c                 ó
   — | dv S )z'``caption-side`` properties validation.)ÚtopÚbottomr2   rP   s    r+   Úcaption_sider  
  s   € ð Ð'Ð'Ð'r-   c                 ó
   — | dv S )z``clear`` property validation.)rº   r»   Úbothrg   r2   rP   s    r+   Úclearr    ó   € ð Ð7Ð7Ð7r-   c                 ó‚  — t          | ¦  «        }|                     ¦   «         }|j        dk    r{t          |¦  «        dk    rhg }|D ]T}t	          |¦  «        dk    r|                     d¦  «         Œ+t          |¦  «        x}r|                     |¦  «         ŒR dS t          |¦  «        S t	          | ¦  «        dk    rdS dS )z%Validation for the ``clip`` property.Úrectrø   r�   Nr2   )r	   Úsplit_commar'   rt   r   r“   r   r†   )rI   r=   Ú	argumentsr•   Úargumentr”   s         r+   Úclipr    sÖ   € õ ˜‰Œ€HØ×$Ò$Ñ&Ô&€IØ„}˜ÒÐ¥3 y¡>¤>°QÒ#6Ð#6ØˆØ!ð 	ð 	ˆHÝ˜8Ñ$Ô$¨Ò.Ð.Ø—’˜fÑ%Ô%Ð%Ð%Ý% hÑ/Ô/Ð/�ð Ø—’˜fÑ%Ô%Ð%Ð%à��Ý�V‰}Œ}ÐÝ	�UÑ	Ô	˜vÒ	%Ð	%Øˆrð 
&Ð	%r-   c                 óF  — t          | ¦  «        } g }| r„t          | ¦  «        dk    rn| d         j        dk    r]| d         j        dk    rL| d         | dd…         } }t	          ||¦  «        pt          ||¦  «        x}r|                     |¦  «         ndS n| °„t          | ¦  «        dk    rdS t          | ¦  «        dk    r=| d         j        d	k    r,| d
         j        dk    r| d
         j        dk    r
| dd
…         } t          | ¦  «        }|dv r|fS t          | |¦  «        S )z ``content`` property validation.r   r%   Úliteralú,r   Nrs   éÿÿÿÿrÊ   éþÿÿÿú/©Únormalrg   )	Úlistrt   rÌ   rK   r   r   r“   r   r   )r)   rG   Úparsed_tokensrI   Úparsed_tokenrJ   s         r+   Úcontentr*  ,  sK  € õ �&‰\Œ\€FØ€MØ
ð Ýˆv‰;Œ;˜!ÒÐ  q¤	¤°)Ò ;Ð ;ÀÀqÄ	ÄÐSVÒ@VÐ@VØ" 1œI v¨a¨b¨b¤z�6ˆEÝ(¨°Ñ9Ô9ÐU½WÀUÈHÑ=UÔ=UÐUˆ|ð Ø×$Ò$ \Ñ2Ô2Ð2Ð2à�àð ð õ ˆ6�{„{�aÒÐØˆÝ
ˆ6�{„{�aÒÐ˜F 2œJœO¨xÒ7Ð7Ø�2ŒJŒO˜yÒ(Ð(¨V°B¬ZÔ-=ÀÒ-DÐ-Dà˜˜˜”ˆÝ  Ñ(Ô(€GØÐ$Ð$Ð$ØˆzÐÝ˜F HÑ-Ô-Ð-r-   c                 ó$   — t          | d¬¦  «        S )z*``counter-increment`` property validation.r%   ©Údefault_integer©Úcounterru   s    r+   Úcounter_incrementr0  G  ó   € õ �6¨1Ð-Ñ-Ô-Ð-r-   c                 ó$   — t          | d¬¦  «        S )z&``counter-reset`` property validation.r   r,  r.  ru   s    r+   Úcounter_resetr3  M  r1  r-   c                 ó$   — t          | d¬¦  «        S )z$``counter-set`` property validation.r   r,  r.  ru   s    r+   Úcounter_setr5  S  r1  r-   c                 ó¬  — t          | ¦  «        dk    rdS t          | ¦  «        } t          | d¦  «        }|s
J d¦   «         ‚g }|�‚|j        dk    rdS |j        }|dv rt          d|› �¦  «        ‚t          | d¦  «        }|r+t          |d¬	¦  «        x}r|j        }t          | d¦  «        }n|}|                     ||f¦  «         |­‚t          |¦  «        S )
zB``counter-increment`` and ``counter-reset`` properties validation.rg   r2   Nzgot an empty token listrß   )rg   rD   rE   zInvalid counter name: T©rÖ   )	r   ÚiterÚnextrÌ   rK   r   r   r“   r†   )r)   r-  rI   ÚresultsÚcounter_namerÙ   rÖ   s          r+   r/  r/  Y  s  € å˜&Ñ!Ô! VÒ+Ð+ØˆrÝ�&‰\Œ\€FÝ�˜ÑÔ€EØÐ+Ð+Ð+Ñ+Ô+Ð+Ø€GØ
Ð
ØŒ:˜Ò Ð ØˆFØ”{ˆØÐ9Ð9Ð9ÝÐ G¸Ð GÐ GÑHÔHÐHÝ�V˜TÑ"Ô"ˆØð 	&¥
¨5¸$Ð ?Ñ ?Ô ?Ð?�fð 	&à”lˆGÝ˜ Ñ&Ô&ˆEˆEð &ˆGØ�Š˜ gÐ.Ñ/Ô/Ð/ð Ð
õ  �‰>Œ>Ðr-   r  r»   rº   r  z
margin-topzmargin-rightzmargin-bottomzmargin-leftztext-underline-offsetc                 óZ   — t          | d¬¦  «        x}r|S t          | ¦  «        dk    rdS dS )z5``margin-*`` and various other properties validation.T©r’   r�   Nrñ   ©rI   r”   s     r+   Úlenght_precentage_or_autor?  t  sC   € õ ˜E¨dÐ3Ñ3Ô3Ð3€vð ØˆÝ�5ÑÔ˜VÒ#Ð#Øˆvð $Ð#r-   ÚheightÚwidthc                 ó\   — t          | dd¬¦  «        x}r|S t          | ¦  «        dk    rdS dS )z7Validation for the ``width`` and ``height`` properties.FTr�   r�   Nrñ   r>  s     r+   Úwidth_heightrC  †  sE   € õ
 ˜E¨E¸dÐCÑCÔCÐC€vð ØˆÝ�5ÑÔ˜VÒ#Ð#Øˆvð $Ð#r-   z
column-gapzrow-gapc                 ó`   — t          | dd¬¦  «        x}r|S t          | ¦  «        }|dk    r|S dS )z=Validation for the ``column-gap`` and ``row-gap`` properties.TF)r’   r‘   r&  Nrñ   rò   s      r+   ÚgaprE  ‘  sJ   € õ
 ˜E¨d¸UÐCÑCÔCÐC€vð ØˆÝ˜%Ñ Ô €GØ�(ÒÐØˆð Ðr-   c                 ó
   — | dv S )z$``column-fill`` property validation.)r�   Úbalancer2   rP   s    r+   Úcolumn_fillrH  �  rÓ   r-   c                 ó
   — | dv S )z"``direction`` property validation.)ÚltrÚrtlr2   rP   s    r+   Ú	directionrL  ¤  s   € ð �nÐ$Ð$r-   c                 óx  — | D ]}|j         dk    r dS Œt          | ¦  «        dk    rB| d         j        }|dv r|fS |dv r"t          |                     d¦  «        ¦  «        S |dk    rd	S dx}x}}| D ]1}|j        }|d
v r|r dS |}Œ|dv r|r dS |}Œ!|dk    r|r dS |}Œ/ dS |pd}|pd}|r|dv r|||fS dS ||fS )z ``display`` property validation.rß   Nr%   r   )	rg   ztable-captionztable-row-groupz
table-cellztable-header-groupztable-footer-groupz	table-rowztable-column-groupztable-column)zinline-tablezinline-flexzinline-gridr6   zinline-block)Úinlineú	flow-root)ÚblockrN  )ÚflowrO  ÚtableÚflexÚgridz	list-itemrP  rQ  )rQ  rO  )rÌ   rt   rK   r†   Úsplit)r)   rI   rK   ÚoutsideÚinsideÚ	list_items         r+   ÚdisplayrY  «  sw  € ð ð ð ˆØŒ:˜Ò Ð ØˆFˆFð !õ ˆ6�{„{�aÒÐØ�q”	”ˆØð 6ð 6ð 6ð �8ˆOØÐDÐDÐDÝ˜Ÿš SÑ)Ô)Ñ*Ô*Ð*Ø�nÒ$Ð$Ø*Ð*à#'Ð'€GÐ'ˆf�yØð ð ˆØ”ˆØÐ'Ð'Ð'Øð Ø��ØˆGˆGØÐDÐDÐDØð Ø��ØˆFˆFØ�kÒ!Ð!Øð Ø��ØˆIˆIàˆFˆFàÐ ˜€GØÐ�v€FØð !ØÐ*Ð*Ð*Ø˜V YÐ/Ð/ð +Ð*ð ˜Ð Ð r-   Úfloatc                 ó
   — | dv S )z``float`` property validation.)rº   r»   Úfootnoterg   r2   rP   s    r+   Úfloat_r]  Ù  s   € ð Ð;Ð;Ð;r-   c                 óà   — t          | ¦  «        dk    r| d         j        dk    r| d         j        S | r8t          d„ | D ¦   «         ¦  «        r!d                     d„ | D ¦   «         ¦  «        S dS dS )z$``font-family`` property validation.r%   r   rÊ   c              3   ó,   K  — | ]}|j         d k    V — ŒdS )rß   N©rÌ   r¡   s     r+   r…   zfont_family.<locals>.<genexpr>æ  s)   è è € ÐBÐB°%˜œ
 gÒ-ÐBÐBÐBÐBÐBÐBr-   ú c              3   ó$   K  — | ]}|j         V — Œd S rS   ©rK   r¡   s     r+   r…   zfont_family.<locals>.<genexpr>ç  ó$   è è € Ð8Ð8¨˜œÐ8Ð8Ð8Ð8Ð8Ð8r-   N)rt   rÌ   rK   rˆ   Újoinru   s    r+   Úfont_familyrf  à  sŒ   € õ ˆ6�{„{�aÒÐ˜F 1œIœN¨hÒ6Ð6Ø�aŒyŒÐØ	ð 9•CÐBÐB¸6ÐBÑBÔBÑBÔBð 9Ø�xŠxÐ8Ð8°Ð8Ñ8Ô8Ñ8Ô8Ð8ð9ð 9ð 9ð 9r-   c                 ó
   — | dv S )N)r�   r&  rg   r2   rP   s    r+   Úfont_kerningrh  ê  ó   € ð Ð0Ð0Ð0r-   c                 óX   — t          | ¦  «        }|dk    r|S | j        dk    r| j        S d S )Nr&  rÊ   ©r   rÌ   rK   rÍ   s     r+   Úfont_language_overriderl  ð  s>   € õ ˜%Ñ Ô €GØ�(ÒÐØˆØ	Œ�xÒ	Ð	ØŒ{Ðð 
 Ð	r-   c                 ó¬  ‡‡— t          | ¦  «        dk    rt          | d         ¦  «        }|dv r|S g Šd}g }|D ]}|                     |¦  «         Œ| D ]oŠ‰j        dk    r d S ‰j        |v rTt          ˆfd„|D ¦   «         ¦  «        }t          ˆfd„|D ¦   «         ¦  «        r d S ‰                     ‰j        ¦  «         Œm d S ‰rt          ‰¦  «        S d S )Nr%   r   r%  ))zcommon-ligatureszno-common-ligatures)zhistorical-ligatureszno-historical-ligatures)zdiscretionary-ligatureszno-discretionary-ligatures)Ú
contextualzno-contextualrß   c              3   ó.   •K  — | ]}‰j         |v ¯|V — Œd S rS   rc  ©rƒ   ÚcouplerI   s     €r+   r…   z)font_variant_ligatures.<locals>.<genexpr>  ó<   øè è € ð %Gð %GØ!°´¸vÐ0EÐ0E�Ð0EÐ0EÐ0EÐ0Eð%Gð %Gr-   c              3   ó    •K  — | ]}|‰v V — Œ	d S rS   r2   ©rƒ   rK   r•   s     €r+   r…   z)font_variant_ligatures.<locals>.<genexpr>  ó'   øè è € ÐBÐB u�5˜F�?ÐBÐBÐBÐBÐBÐBr-   ©	rt   r   ÚextendrÌ   rK   r9  Úanyr“   r†   ©r)   rJ   ÚcouplesÚ
all_valuesrq  Úconcurrent_valuesrI   r•   s         @@r+   Úfont_variant_ligaturesr}  ú  sH  øø€ å
ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØÐ(Ð(Ð(ØˆNØ€Fð)€Gð
 €JØð "ð "ˆØ×Ò˜&Ñ!Ô!Ð!Ð!Øð ð ˆØŒ:˜Ò Ð Ø�4�4ØŒ;˜*Ð$Ð$Ý $ð %Gð %Gð %Gð %GØ%,ð%Gñ %Gô %Gñ !Gô !GÐåÐBÐBÐBÐBÐ0AÐBÑBÔBÑBÔBð +Ø�t�tà—’˜eœkÑ*Ô*Ð*Ð*à�4�4Øð Ý�V‰}Œ}Ððð r-   c                 ó
   — | dv S )N)r&  ÚsubÚsuperr2   rP   s    r+   Úfont_variant_positionr�    ri  r-   c                 ó
   — | dv S )N)r&  z
small-capszall-small-capszpetite-capszall-petite-capsÚunicaseztitling-capsr2   rP   s    r+   Úfont_variant_capsr„    s   € ð ð 6ð 6ð 6r-   c                 ó°  ‡‡— t          | ¦  «        dk    rt          | d         ¦  «        }|dk    r|S g Šd}g }|D ]}|                     |¦  «         Œ| D ]oŠ‰j        dk    r d S ‰j        |v rTt          ˆfd„|D ¦   «         ¦  «        }t          ˆfd„|D ¦   «         ¦  «        r d S ‰                     ‰j        ¦  «         Œm d S ‰rt          ‰¦  «        S d S )Nr%   r   r&  ))zlining-numszoldstyle-nums)zproportional-numsztabular-nums)zdiagonal-fractionszstacked-fractions)Úordinal)zslashed-zerorß   c              3   ó.   •K  — | ]}‰j         |v ¯|V — Œd S rS   rc  rp  s     €r+   r…   z'font_variant_numeric.<locals>.<genexpr>:  rr  r-   c              3   ó    •K  — | ]}|‰v V — Œ	d S rS   r2   rt  s     €r+   r…   z'font_variant_numeric.<locals>.<genexpr><  ru  r-   rv  ry  s         @@r+   Úfont_variant_numericr‰  '  sG  øø€ å
ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØ�hÒÐØˆNØ€Fð)€Gð
 €JØð "ð "ˆØ×Ò˜&Ñ!Ô!Ð!Ð!Øð ð ˆØŒ:˜Ò Ð Ø�4�4ØŒ;˜*Ð$Ð$Ý $ð %Gð %Gð %Gð %GØ%,ð%Gñ %Gô %Gñ !Gô !GÐåÐBÐBÐBÐBÐ0AÐBÑBÔBÑBÔBð +Ø�t�tà—’˜eœkÑ*Ô*Ð*Ð*à�4�4Øð Ý�V‰}Œ}Ððð r-   c                 ó”   — t          | ¦  «        dk    rt          | d         ¦  «        dk    rdS t          d„ ¦   «         } || ¦  «        S )z.``font-feature-settings`` property validation.r%   r   r&  c                 óà  — d\  }}t          | ¦  «        dk    rW| d d…         | d         }} |j        dk    rdddœ                     |j        ¦  «        }n1t	          |dd	¬
¦  «        x}r|j        }nt          | ¦  «        dk    rd}t          | ¦  «        dk    rL| \  }|j        dk    r=t          |j        ¦  «        dk    r%t          d„ |j        D ¦   «         ¦  «        r|j        }|�|�||fS d S d S )N©NNr   r"  rß   r%   r   )ÚonÚoffFTrÕ   rÊ   rø   c              3   óP   K  — | ]!}d t          |¦  «        cxk    odk    nc V — Œ"dS )é    é   N)Úord)rƒ   Úletters     r+   r…   zLfont_feature_settings.<locals>.font_feature_settings_list.<locals>.<genexpr>\  sD   è è € ÐMÐM°v�t�s 6™{œ{Ð2Ð2Ò2Ð2¨dÒ2Ð2Ð2Ð2ÐMÐMÐMÐMÐMÐMr-   )rt   rÌ   ÚgetrK   r   rˆ   )r)   ÚfeaturerK   rI   rÙ   s        r+   Úfont_feature_settings_listz9font_feature_settings.<locals>.font_feature_settings_listL  s  € à#‰ˆ�åˆv‰;Œ;˜!ÒÐØ" 3 B 3œK¨°¬�EˆFØŒz˜WÒ$Ð$Ø ¨Ð+Ð+×/Ò/°´Ñ<Ô<��Ý% e°eÀTÐJÑJÔJÐJ�ð %Øœ�øÝ�‰[Œ[˜AÒÐØˆEåˆv‰;Œ;˜!ÒÐØ‰FˆEØŒz˜XÒ%Ð%­#¨e¬kÑ*:Ô*:¸aÒ*?Ð*?ÝÐMÐMÀÄÐMÑMÔMÑMÔMð *Ø#œk�GàÐ 5Ð#4Ø˜E�>Ð!ð ÐÐ#4Ð#4r-   ©rt   r   r   )r)   r–  s     r+   Úfont_feature_settingsr˜  F  s]   € õ ˆ6�{„{�aÒÐ�K¨¨q¬	Ñ2Ô2°hÒ>Ð>Øˆxåð"ð "ñ Ôð"ð* &Ð% fÑ-Ô-Ð-r-   c                 ó
   — | dv S )N)r&  zhistorical-formsr2   rP   s    r+   Úfont_variant_alternatesrš  e  s   € ð
 Ð4Ð4Ð4r-   c                 ó°  ‡‡— t          | ¦  «        dk    rt          | d         ¦  «        }|dk    r|S g Šd}g }|D ]}|                     |¦  «         Œ| D ]oŠ‰j        dk    r d S ‰j        |v rTt          ˆfd„|D ¦   «         ¦  «        }t          ˆfd„|D ¦   «         ¦  «        r d S ‰                     ‰j        ¦  «         Œm d S ‰rt          ‰¦  «        S d S )Nr%   r   r&  ))Újis78Újis83Újis90Újis04Ú
simplifiedÚtraditional)ú
full-widthzproportional-width)Úrubyrß   c              3   ó.   •K  — | ]}‰j         |v ¯|V — Œd S rS   rc  rp  s     €r+   r…   z*font_variant_east_asian.<locals>.<genexpr>  rr  r-   c              3   ó    •K  — | ]}|‰v V — Œ	d S rS   r2   rt  s     €r+   r…   z*font_variant_east_asian.<locals>.<genexpr>�  ru  r-   rv  ry  s         @@r+   Úfont_variant_east_asianr¦  m  sG  øø€ å
ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØ�hÒÐØˆNØ€Fð€Gð €JØð "ð "ˆØ×Ò˜&Ñ!Ô!Ð!Ð!Øð ð ˆØŒ:˜Ò Ð Ø�4�4ØŒ;˜*Ð$Ð$Ý $ð %Gð %Gð %Gð %GØ%,ð%Gñ %Gô %Gñ !Gô !GÐåÐBÐBÐBÐBÐ0AÐBÑBÔBÑBÔBð +Ø�t�tà—’˜eœkÑ*Ô*Ð*Ð*à�4�4Øð Ý�V‰}Œ}Ððð r-   c                 ó”   — t          | ¦  «        dk    rt          | d         ¦  «        dk    rdS t          d„ ¦   «         } || ¦  «        S )z0``font-variation-settings`` property validation.r%   r   r&  c                 ó†   — t          | ¦  «        dk    r)| \  }}|j        dk    r|j        dk    r|j        |j        fS d S d S d S )Nr   rÊ   rÙ   )rt   rÌ   rK   )r)   ÚkeyrK   s      r+   Úfont_variation_settings_listz=font_variation_settings.<locals>.font_variation_settings_list‘  sX   € åˆv‰;Œ;˜!ÒÐØ‰JˆC�ØŒx˜8Ò#Ð#¨¬
°hÒ(>Ð(>Ø”y %¤+Ð-Ð-ð Ðà#Ð#Ð(>Ð(>r-   r—  )r)   rª  s     r+   Úfont_variation_settingsr«  ‹  s]   € õ ˆ6�{„{�aÒÐ�K¨¨q¬	Ñ2Ô2°hÒ>Ð>Øˆxåð.ð .ñ Ôð.ð (Ð'¨Ñ/Ô/Ð/r-   c                 ó|   — t          | dd¬¦  «        x}r|S t          | ¦  «        }|dv r|S |t          j        v r|S dS )z"``font-size`` property validation.FTr�   )ÚsmallerÚlargerN)r   r   r   ÚFONT_SIZE_KEYWORDS)rI   r”   Úfont_size_keywords      r+   Ú	font_sizer±  ›  sa   € õ ˜E¨E¸dÐCÑCÔCÐC€vð ØˆÝ# EÑ*Ô*ÐØÐ1Ð1Ð1Ø Ð Ø�OÔ>Ð>Ð>Ø Ð ð ?Ð>r-   c                 ó
   — | dv S )z#``font-style`` property validation.)r&  ÚitalicÚobliquer2   rP   s    r+   Ú
font_stylerµ  ¨  s   € ð Ð5Ð5Ð5r-   c                 ó
   — | dv S )z-Validation for the ``font-stretch`` property.)	zultra-condensedzextra-condensedÚ	condensedzsemi-condensedr&  zsemi-expandedÚexpandedzextra-expandedzultra-expandedr2   rP   s    r+   Úfont_stretchr¹  ¯  s   € ð ð Ið Ið Ir-   c                 ó|   — t          | ¦  «        }|dv r|S | j        dk    r| j        �| j        dv r| j        S dS dS dS )z$``font-weight`` property validation.)r&  ÚboldÚbolderÚlighterrÙ   N)	éd   éÈ   i,  i�  iô  iX  i¼  i   i„  )r   rÌ   Ú	int_valuerÍ   s     r+   Úfont_weightrÁ  ¹  s`   € õ ˜%Ñ Ô €GØÐ9Ð9Ð9ØˆØ„z�XÒÐ %¤/Ð"=ØŒ?ÐKÐKÐKØ”?Ð"ð ÐÐ"=Ð"=ØKÐKr-   c                 ó
   — | dv S )N)r÷   r�   rŽ   rg   z
scale-downr2   rP   s    r+   Ú
object_fitrÃ  Å  s   € ð ÐHÐHÐHr-   c                 ó    — t          | ¦  «        S rS   )r   rT   s    r+   Úimage_resolutionrÅ  Î  s   € õ ˜%Ñ Ô Ð r-   zletter-spacingzword-spacingc                 óV   — t          | ¦  «        dk    rdS t          | ¦  «        x}r|S dS )z7Validation for ``letter-spacing`` and ``word-spacing``.r&  Nrâ   r>  s     r+   ÚspacingrÇ  Õ  s@   € õ
 �5ÑÔ˜XÒ%Ð%ØˆxÝ˜EÑ"Ô"Ð"€vð Øˆðð r-   c                 ó,   — t          | ¦  «        x}r|S dS )z"Validation for ``outline-offset``.Nr    r>  s     r+   Úoutline_offsetrÉ  à  s(   € õ ˜EÑ"Ô"Ð"€vð Øˆðð r-   c                 ó†   — t          | ¦  «        dk    rdS t          | d¬¦  «        x}r|S t          | dd¬¦  «        x}r|S dS )z$``line-height`` property validation.r&  FrŸ   Tr�   N)r   r   r   )rI   rÙ   r”   s      r+   Úline_heightrË  è  sf   € õ �5ÑÔ˜XÒ%Ð%ØˆxÝ˜e¨eÐ4Ñ4Ô4Ð	4ˆð ØˆÝ˜e¨eÀÐEÑEÔEÐ	Eˆð Øˆðð r-   c                 ó
   — | dv S )z,``list-style-position`` property validation.)rW  rV  r2   rP   s    r+   Úlist_style_positionrÍ  ô  s   € ð Ð+Ð+Ð+r-   c                 ó®  — | j         dk    r| j        S | j         dk    r	d| j        fS | j         dk    �r | j        dk    �rd}t          | j        ¦  «        x}sdS g }|d         j         dk    r4|d         j        |v r#d}|                     |d         j        ¦  «         ndS |                     d	¦  «         d}t          |¦  «        |dz   k     rdS t          |t          |¦  «        ¦  «        D ]6}||         j         dk    r dS |                     ||         j        ¦  «         Œ7|d         d
v rt          |¦  «        dk     rdS dt          |¦  «        fS dS dS )z(``list-style-type`` property validation.rß   rÊ   r=   Úsymbols)ÚcyclicÚnumericÚ
alphabeticÚsymbolicrN   Nr   r%   rÓ  )rÒ  rÑ  rs   z	symbols())	rÌ   rK   r'   r   r  r“   rt   Úranger†   )rI   Úallowed_typesÚfunction_argumentsr  Úindexrû   s         r+   Úlist_style_typerØ  û  sœ  € ð „z�WÒÐØŒ{ÐØ	Œ�xÒ	Ð	Ø˜%œ+Ð&Ð&Ø	Œ�zÒ	!Ñ	! e¤j°IÒ&=Ñ&=ØPˆÝ&7¸¼Ñ&HÔ&HÐHÐ"ð 	ØˆFØˆ	Ø˜aÔ Ô%¨Ò0Ð0Ø! !Ô$Ô*¨mÐ;Ð;Ø�Ø× Ò Ð!3°AÔ!6Ô!<Ñ=Ô=Ð=Ð=à�à×Ò˜ZÑ(Ô(Ð(ØˆEÝÐ!Ñ"Ô" U¨Q¡YÒ.Ð.ØˆFÝ�u�cÐ"4Ñ5Ô5Ñ6Ô6ð 	:ð 	:ˆAØ! !Ô$Ô)¨XÒ5Ð5Ø��Ø×ÒÐ/°Ô2Ô8Ñ9Ô9Ð9Ð9Ø�QŒ<Ð4Ð4Ð4Ý�9‰~Œ~ Ò!Ð!Ø�Ø�U 9Ñ-Ô-Ð.Ð.ð/ 
"Ð	!Ð&=Ð&=r-   z	min-widthz
min-heightc                 óL   — t          | ¦  «        dk    rdS t          | g¦  «        S )z7``min-width`` and ``min-height`` properties validation.r�   )r   Úlength_or_precentagerT   s    r+   Úmin_width_heightrÛ    s,   € õ �5ÑÔ˜VÒ#Ð#Øˆvå# U GÑ,Ô,Ð,r-   zpadding-topzpadding-rightzpadding-bottomzpadding-leftc                 ó2   — t          | dd¬¦  «        x}r|S dS )z$``padding-*`` properties validation.FTr�   Nr    r>  s     r+   rÚ  rÚ  )  s/   € õ ˜E¨E¸dÐCÑCÔCÐC€vð Øˆðð r-   z	max-widthz
max-heightc                 ó‚   — t          | dd¬¦  «        x}r|S t          | ¦  «        dk    rt          t          d¦  «        S dS )z'Validation for max-width and max-heightFTr�   rg   ÚpxN)r   r   r   r   r>  s     r+   Úmax_width_heightrß  4  sP   € õ
 ˜E¨E¸dÐCÑCÔCÐC€vð ØˆÝ�5ÑÔ˜VÒ#Ð#Ý�˜dÑ#Ô#Ð#ð $Ð#r-   c                 óÜ   — t          | ¦  «        x}r#t          dt          d|j        ¦  «        ¦  «        S t	          | ¦  «        x}r&t          dt          d|j        dz  ¦  «        ¦  «        S dS )z(Validation for the ``opacity`` property.r%   r   r¾  N)r   ÚminÚmaxrK   r   )rI   rÙ   r’   s      r+   Úopacityrã  ?  sv   € õ ˜EÑ"Ô"Ð"€vð 6Ý�1•c˜!˜Vœ\Ñ*Ô*Ñ+Ô+Ð+Ý% eÑ,Ô,Ð	,ˆð 6Ý�1•c˜!˜ZÔ-°Ñ3Ñ4Ô4Ñ5Ô5Ð5ð6ð 6r-   c                 ód   — t          | ¦  «        dk    rdS t          | d¬¦  «        x}r|j        S dS )z(Validation for the ``z-index`` property.r�   Tr7  N)r   r   rK   rØ   s     r+   Úz_indexrå  I  sH   € õ �5ÑÔ˜VÒ#Ð#ØˆvÝ˜e¨TÐ2Ñ2Ô2Ð	2ˆð ØŒ|Ððð r-   ÚorphansÚwidowsc                 óV   — t          | dd¬¦  «        x}r|j        dk    r	|j        S dS dS )z9Validation for the ``orphans`` and ``widows`` properties.FTrÕ   r%   N©r   rK   rØ   s     r+   Úorphans_widowsrê  S  sE   € õ
 ˜E¨E¸4Ð@Ñ@Ô@Ð@€vð  ØŒ<˜1ÒÐØ”<Ðð ð  ØÐr-   c                 ó€   — t          | dd¬¦  «        x}r|j        dk    r|j        S dS t          | ¦  «        dk    rdS dS )z-Validation for the ``column-count`` property.FTrÕ   r%   r�   Nr×   rØ   s     r+   Úcolumn_countrì  ]  ó]   € õ ˜E¨E¸4Ð@Ñ@Ô@Ð@€vð ØŒ<˜1ÒÐØ”<Ðð Ðå	�UÑ	Ô	˜vÒ	%Ð	%Øˆvð 
&Ð	%r-   c                 ó
   — | dv S )z)Validation for the ``overflow`` property.)r�   Úvisibler¬   rM   r2   rP   s    r+   Úoverflowrð  h  s   € ð Ð=Ð=Ð=r-   c                 ó
   — | dv S )z.Validation for the ``text-overflow`` property.)r  Úellipsisr2   rP   s    r+   Útext_overflowró  o  s   € ð Ð*Ð*Ð*r-   c                 óâ   — | j         dk    rM| j        dk    rBt          | j        ¦  «        dk    r*| j        d         j         dk    rd| j        d         j        fS t          | g¦  «        }|dv r|S dS )	z!``position`` property validation.r=   Úrunningr%   r   rß   z	running())ÚstaticÚrelativeÚabsoluterN   N)rÌ   r'   rt   r  rK   r   rÍ   s     r+   Úpositionrù  v  sƒ   € ð „z�ZÒÐ E¤J°)Ò$;Ð$;ÝˆuŒÑÔ 1Ò$Ð$¨¬¸Ô);Ô)@ÀGÒ)KÐ)KØ ¤°Ô!3Ô!9Ð:Ð:Ý  % Ñ)Ô)€GØÐ=Ð=Ð=Øˆð >Ð=r-   c                 ó*  — t          | ¦  «        dk    rt          | d         ¦  «        x}dv r|S | r^t          | ¦  «        dz  dk    rJt          d„ | D ¦   «         ¦  «        r3t          d„ | D ¦   «         ¦  «        }|ddd…         |ddd…         fS dS dS dS )z``quotes`` property validation.r%   r   )r�   rg   r   c              3   ó,   K  — | ]}|j         d k    V — ŒdS )rÊ   Nr`  r¡   s     r+   r…   zquotes.<locals>.<genexpr>‰  s)   è è € Ð;Ð;¨5�”
˜hÒ&Ð;Ð;Ð;Ð;Ð;Ð;r-   c              3   ó$   K  — | ]}|j         V — Œd S rS   rc  r¡   s     r+   r…   zquotes.<locals>.<genexpr>Š  rd  r-   N)rt   r   rˆ   r†   )r)   rJ   Ústringss      r+   Úquotesrþ  ‚  sÅ   € õ ˆ6�{„{�aÒÐÝ" 6¨!¤9Ñ-Ô-Ð-ˆGÐ2BÐBÐBØˆNØð +•3�v‘;”; ‘? aÒ'Ð'ÝÐ;Ð;°FÐ;Ñ;Ô;Ñ;Ô;ð (åÐ8Ð8°Ð8Ñ8Ô8Ñ8Ô8ˆð �s�s˜�sŒ|˜W Q T¨ Tœ]Ð*Ð*ð+ð +Ð'Ð'Ð'Ð'r-   c                 ó   — | dv r| S dS )z,Validation for the ``table-layout`` property)rN   r�   Nr2   rP   s    r+   Útable_layoutr   �  s   € ð Ð#Ð#Ð#Øˆð $Ð#r-   c                 ó
   — | dv S )z'``text-align-all`` property validation.)rº   r»   ÚcenterÚjustifyÚstartÚendr2   rP   s    r+   Útext_align_allr  ˜  s   € ð ÐLÐLÐLr-   c                 ó
   — | dv S )z(``text-align-last`` property validation.)r�   rº   r»   r  r  r  r  r2   rP   s    r+   Útext_align_lastr  Ÿ  ó   € ð ÐTÐTÐTr-   c                 óª   — d„ | D ¦   «         x}dhk    rdS h d£}t          | ¦  «        t          |¦  «        k    r|                     |¦  «        r|S dS dS )z-``text-decoration-line`` property validation.c                 ó,   — h | ]}t          |¦  «        ’ŒS r2   ræ   r¡   s     r+   ú	<setcomp>z'text_decoration_line.<locals>.<setcomp>©  s    € Ð<Ð<Ð<¨E•[ Ñ'Ô'Ð<Ð<Ð<r-   rg   >   úline-throughÚblinkÚoverlineÚ	underlineN)rt   Úissubset)r)   rŠ   Úallowed_valuess      r+   Útext_decoration_liner  ¦  sq   € ð =Ð<°VÐ<Ñ<Ô<Ð<ˆÀ&ÀÒIÐIØˆvØGÐGÐG€NÝ
ˆ6�{„{•c˜(‘m”mÒ#Ð#¨×(9Ò(9¸.Ñ(IÔ(IÐ#Øˆð $Ð#Ð#Ð#r-   c                 ó   — | dv r| S dS )z.``text-decoration-style`` property validation.)r´   r¯   r­   r®   ÚwavyNr2   rP   s    r+   Útext_decoration_styler  °  s   € ð ÐAÐAÐAØˆð BÐAr-   c                 óZ   — t          | d¬¦  «        x}r|S t          | ¦  «        x}dv r|S dS )z2``text-decoration-thickness`` property validation.Tr=  )r�   z	from-fontNrñ   rò   s      r+   Útext_decoration_thicknessr  ¸  sJ   € õ ˜E¨dÐ3Ñ3Ô3Ð3€vð ØˆÝ  Ñ'Ô'Ð
'ˆ'Ð,AÐ	AÐ	AØˆð 
BÐ	Ar-   c                 ó0   — t          | d¬¦  «        x}r|S dS )z$``text-indent`` property validation.Tr=  Nr    r>  s     r+   Útext_indentr  Â  s-   € õ ˜E¨dÐ3Ñ3Ô3Ð3€vð Øˆðð r-   c                 ó
   — | dv S )z#``text-align`` property validation.)rg   Ú	uppercaseÚ	lowercaseÚ
capitalizer¢  r2   rP   s    r+   Útext_transformr  Ê  r	  r-   c                 óZ   — t          | d¬¦  «        x}r|S t          | ¦  «        }|dv r|S dS )z.Validation for the ``vertical-align`` propertyTr=  )ÚbaselineÚmiddler  r€  ztext-topztext-bottomr  r  Nrñ   rò   s      r+   Úvertical_alignr#  Ñ  sQ   € õ ˜E¨dÐ3Ñ3Ô3Ð3€vð ØˆÝ˜%Ñ Ô €GØð ?ð ?ð ?àˆð?ð ?r-   c                 ó
   — | dv S )ú$``white-space`` property validation.)rï  r¬   r\   r2   rP   s    r+   Ú
visibilityr&  Ý  r  r-   c                 ó
   — | dv S )r%  )r&  ÚpreÚnowrapzpre-wrapzpre-liner2   rP   s    r+   Úwhite_spacer*  ä  s   € ð ÐIÐIÐIr-   c                 ó
   — | dv S )z&``overflow-wrap`` property validation.)Úanywherer&  z
break-wordr2   rP   s    r+   Úoverflow_wrapr-  ë  ó   € ð Ð:Ð:Ð:r-   c                 ó
   — | dv S )z#``word-break`` property validation.)r&  z	break-allr2   rP   s    r+   Ú
word_breakr0  ò  s   € ð Ð-Ð-Ð-r-   c                 óX   — t          | g¦  «        x}�|S t          | ¦  «        dk    rdS dS )z#``flex-basis`` property validation.Nr*  )rC  r   )rI   Úbasiss     r+   Ú
flex_basisr3  ù  s>   € õ ˜u˜gÑ&Ô&Ð&ˆÐ3ØˆÝ	�UÑ	Ô	˜yÒ	(Ð	(Øˆyð 
)Ð	(r-   c                 ó
   — | dv S )z'``flex-direction`` property validation.)Úrowzrow-reverser¿   zcolumn-reverser2   rP   s    r+   Úflex_directionr6    s   € ð ÐHÐHÐHr-   z	flex-growzflex-shrinkc                 ó6   — t          | ¦  «        x}r|j        S d S rS   ré  rØ   s     r+   Úflex_grow_shrinkr8  
  s+   € õ ˜EÑ"Ô"Ð"€vð ØŒ|Ððð r-   c                 ód   — t          | ¦  «        x}dv r|S |rdS t          | dd¬¦  «        x}r|S dS )zParse ``inflexible-breadth``.)r�   úmin-contentúmax-contentNFTr�   râ   )rI   rJ   r”   s      r+   Ú_inflexible_breadthr<    sX   € å˜uÑ%Ô%Ð%ˆÐ*PÐPÐPØˆØ	ð ØˆÝ˜e¨eÀÐEÑEÔEÐ	Eˆð Øˆðð r-   c                 óÞ   — | j         dk    rT| j        dk    rI| j                             ¦   «         dk    r,t	          | j        | j                             ¦   «         ¦  «        S t          | ¦  «        S )zParse ``track-breadth``.Ú	dimensionr   Úfr)rÌ   rK   ÚunitÚlowerr   r<  rT   s    r+   Ú_track_breadthrB    sb   € à„z�[Ò Ð  U¤[°AÒ%5Ð%5¸%¼*×:JÒ:JÑ:LÔ:LÐPTÒ:TÐ:TÝ˜œ e¤j×&6Ò&6Ñ&8Ô&8Ñ9Ô9Ð9Ý˜uÑ%Ô%Ð%r-   c                 ó   — t          | ¦  «        x}r|S t          | ¦  «        }|                     ¦   «         }|j        dk    rLt	          |¦  «        dk    r3t          |d         ¦  «        }t          |d         ¦  «        }|r	|r	d||fS dS dS dS |j        dk    r1t	          |¦  «        dk    r t          |d         dd¬	¦  «        x}rd
|fS dS dS dS )zParse ``track-size``.Úminmaxr   r   r%   úminmax()zfit-contentFTr�   zfit-content()N)rB  r	   r  r'   rt   r<  r   )rI   Útrack_breadthr=   r  Úinflexible_breadthr”   s         r+   Ú_track_sizerH  #  s  € å& uÑ-Ô-Ð-€}ð ØÐÝ˜‰Œ€HØ×$Ò$Ñ&Ô&€IØ„}˜Ò Ð Ýˆy‰>Œ>˜QÒÐÝ!4°Y¸q´\Ñ!BÔ!BÐÝ*¨9°Q¬<Ñ8Ô8ˆMØ!ð G mð GØ"Ð$6¸ÐFÐFð	 ÐðGð Gð Gð Gà	Œ˜-Ò	'Ð	'Ýˆy‰>Œ>˜QÒÐÝ# I¨a¤L¸5ÈTÐRÑRÔRÐRˆvð 1Ø'¨Ð0Ð0ð 
(Ð	'ØÐð1ð 1r-   c                 ó¤  — t          | dd¬¦  «        x}r|S t          | ¦  «        }|                     ¦   «         }|j        dk    r…t	          |¦  «        dk    rtt          |d         dd¬¦  «        x}rt          |d         ¦  «        }|rd||fS t          |d         ¦  «        }|d	v s|r't          |d         dd¬¦  «        }|rd|p||fS d
S d
S d
S d
S )zParse ``fixed-size``.FTr�   rD  r   r   r%   rE  )r:  r;  r�   N)r   r	   r  r'   rt   rB  r   )rI   r”   r=   r  rF  rJ   Úfixed_breadths          r+   Ú_fixed_sizerK  5  s  € å˜E¨E¸dÐCÑCÔCÐC€vð ØˆÝ˜‰Œ€HØ×$Ò$Ñ&Ô&€IØ„}˜Ò Ð ¥S¨¡^¤^°qÒ%8Ð%8Ý 	¨!¤°uÈÐNÑNÔNÐNˆ6ð 	;Ý*¨9°Q¬<Ñ8Ô8ˆMØð ;Ø" F¨MÐ:Ð:Ý˜i¨œlÑ+Ô+ˆØÐ<Ð<Ð<ÀÐ<Ý& y°¤|¸eÐPTÐUÑUÔUˆMØð FØ" FÐ$5¨g°}ÐEÐEð !Ð Ð%8Ð%8ðFð Fð =Ð<r-   c                 óº   — g }| j         dk    rM| j        D ]6} | j         dk    r|                     | j        ¦  «         Œ(| j         dk    r dS Œ7t	          |¦  «        S dS )zParse ``line-names``.z[] blockrß   Ú
whitespaceN)rÌ   r*  r“   rK   r†   )rI   Úreturn_line_namess     r+   Ú_line_namesrO  G  s|   € àÐØ„z�ZÒÐØ”]ð 	ð 	ˆEØŒz˜WÒ$Ð$Ø!×(Ò(¨¬Ñ5Ô5Ð5Ð5Ø”˜|Ò+Ð+Ø��ð ,åÐ&Ñ'Ô'Ð'ð  Ðr-   zgrid-auto-columnszgrid-auto-rowsc                 ó€   — g }| D ]+}t          |¦  «        x}r|                     |¦  «         Œ) dS t          |¦  «        S )zC``grid-auto-columns`` and ``grid-auto-rows`` properties validation.N)rH  r“   r†   )r)   Úreturn_tokensrI   Ú
track_sizes       r+   Ú	grid_autorS  S  sY   € ð €MØð ð ˆÝ$ UÑ+Ô+Ð+ˆ:ð 	Ø× Ò  Ñ,Ô,Ð,ØØˆˆÝ�ÑÔÐr-   c                 óø   — t          | ¦  «        dk    r(t          | d         ¦  «        }|dv r|fS |dk    r|dfS d	S t          | ¦  «        dk    r'd„ | D ¦   «         }d|v rd|v sd|v rt          |¦  «        S d	S d	S d	S )
z'``grid-auto-flow`` property validation.r%   r   )r5  r¿   Údenser5  r   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r2   ræ   r¡   s     r+   r¢   z"grid_auto_flow.<locals>.<listcomp>j  s    € Ð;Ð;Ð;¨5•K Ñ&Ô&Ð;Ð;Ð;r-   r¿   N©rt   r   r†   ©r)   rJ   rŠ   s      r+   Úgrid_auto_flowrY  `  s»   € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØÐ'Ð'Ð'Ø�:ÐØ˜ÒÐØ˜UÐ#Ð#ð  Ðå	ˆV‰Œ˜Ò	Ð	Ø;Ð;°FÐ;Ñ;Ô;ˆØ�hÐÐ E¨XÐ$5Ð$5¸ÀXÐ9MÐ9MÝ˜‘?”?Ð"ð 
Ð	àÐÐ9MÐ9Mr-   zgrid-template-columnszgrid-template-rowsc                 ó`	  — g }t          | ¦  «        dk    rt          | d         ¦  «        dk    rdS t          | d         ¦  «        dk    �rŸ|                     d¦  «         g }| dd…         D �]X}t          |¦  «        }|�|                     |¦  «         Œ*t	          |¦  «        }|                     d¬¦  «        }|�t          |¦  «        dk    r dS |\  }}t          |¦  «        dk    s|s dS |\  }|j        d	k    rÄt          |¦  «        dk    r±|j        d
k    r9t          |j	        ¦  «         
                    ¦   «         r|j	        dk    r|j        }	nt          |¦  «        dk    rd}	n dS g }
|D ](}t          |¦  «        }|�|
                     |¦  «         Œ)|                     d|	t          |
¦  «        f¦  «         �ŒW dS |                     t          |¦  «        ¦  «         �n·d}d}d}| D �]�}t          |¦  «        }|�|r dS d}|                     |¦  «         Œ1t          |¦  «        }|r/|s|                     d¦  «         d}|                     |¦  «         Œqt          |¦  «        }|r1|s|                     d¦  «         d}|                     |¦  «         d}Œ³t	          |¦  «        }|                     d¬¦  «        }|�t          |¦  «        dk    r dS |\  }}t          |¦  «        dk    s|s dS |\  }|j        d	k    �rrt          |¦  «        dk    �r^t          |dd¬¦  «        x}	r|	j	        dk    r|	j	        }	n#t          |¦  «        dv r|r dS |j	        }	d}n dS g }d}|D ]¶}t          |¦  «        }|�|r  dS |                     |¦  «         d}Œ1t          |¦  «        }|r/|s|                     d¦  «         d}|                     |¦  «         Œqt          |¦  «        }|r1d}|s|                     d¦  «         d}|                     |¦  «         Œ³  dS |s|                     d¦  «         d}|s|                     d¦  «         |                     d|	t          |¦  «        f¦  «         �Œ� dS |r|rdS |s|                     d¦  «         t          |¦  «        S )z@``grid-template-columns`` and ``grid-template-rows`` validation.r%   r   rg   ÚsubgridNF)Úsingle_tokensr   r~   rÙ   ú	auto-fillzrepeat()Tr2   rÕ   )r]  zauto-fit)rt   r   r“   rO  r	   r  r'   rÌ   rZ  rK   Ú
is_integerrÀ  r†   rK  rH  r   )r)   rQ  Úsubgrid_tokensrI   Ú
line_namesr=   r  r~   ÚtracksrÙ   Úline_names_listr  Úincludes_auto_repeatÚincludes_trackÚlast_is_line_nameÚ
fixed_sizerR  Únames_and_sizesÚrepeat_last_is_line_nameÚargs                       r+   Úgrid_templaterj  o  s¹  € ð €MÝ
ˆ6�{„{�aÒÐ�K¨¨q¬	Ñ2Ô2°fÒ<Ð<ØˆvÝ�6˜!”9ÑÔ Ò*Ñ*Ø×Ò˜YÑ'Ô'Ð'ØˆØ˜A˜B˜B”Zð 	ñ 	ˆEÝ$ UÑ+Ô+ˆJØÐ%Ø×%Ò% jÑ1Ô1Ð1ØÝ ‘”ˆHØ ×,Ò,¸5Ð,ÑAÔAˆIØÐ ¥C¨	¡N¤N°aÒ$7Ð$7Ø��Ø&‰NˆF�FÝ�6‰{Œ{˜aÒÐ vÐØ��Ø‰GˆFØŒ} Ò(Ð(­S°©^¬^¸qÒ-@Ð-@Ø”K 8Ò+Ð+µ°f´lÑ0CÔ0C×0NÒ0NÑ0PÔ0PÐ+Øœ¨Ò)Ð)Ø#Ô-�F�FÝ  Ñ(Ô(¨KÒ7Ð7Ø(�F�Fà�F�FØ"$�Ø &ð ;ð ;�HÝ!,¨XÑ!6Ô!6�JØ!Ð-Ø'×.Ò.¨zÑ:Ô:Ð:øØ×%Ò% z°6½5ÀÑ;QÔ;QÐ&RÑSÔSÐSÙØˆFˆFØ×Ò�U >Ñ2Ô2Ñ3Ô3Ð3Ñ3à$ÐØˆØ!ÐØð N	ñ N	ˆEÝ$ UÑ+Ô+ˆJØÐ%Ø$ð Ø�F�FØ$(Ð!Ø×$Ò$ ZÑ0Ô0Ð0ØÝ$ UÑ+Ô+ˆJØð Ø(ð -Ø!×(Ò(¨Ñ,Ô,Ð,Ø$)Ð!Ø×$Ò$ ZÑ0Ô0Ð0ØÝ$ UÑ+Ô+ˆJØð Ø(ð -Ø!×(Ò(¨Ñ,Ô,Ð,Ø$)Ð!Ø×$Ò$ ZÑ0Ô0Ð0Ø!%�ØÝ ‘”ˆHØ ×,Ò,¸5Ð,ÑAÔAˆIØÐ ¥C¨	¡N¤N°aÒ$7Ð$7Ø��Ø&‰NˆF�FÝ�6‰{Œ{˜aÒÐ vÐØ��Ø‰GˆFØŒ} Ò(Ñ(­S°©^¬^¸qÒ-@Ñ-@Ý'¨¸ÈÐMÑMÔMÐM�6ð 
Ø”| qÒ(Ð(Ø!'¤˜øÝ  Ñ(Ô(Ð,EÐEÐEà+ð Ø˜˜Ø#œ\�FØ+/Ð(Ð(à�F�FØ"$�Ø+0Ð(Ø!ð ð �CÝ!,¨SÑ!1Ô!1�JØ!Ð-Ø3ð #Ø"˜F˜F˜FØ'×.Ò.¨zÑ:Ô:Ð:Ø37Ð0Ø å!,¨SÑ!1Ô!1�JØ!ð !Ø7ð 7Ø+×2Ò2°2Ñ6Ô6Ð6Ø38Ð0Ø'×.Ò.¨zÑ:Ô:Ð:Ø å!,¨SÑ!1Ô!1�JØ!ð !Ø)-˜Ø7ð 7Ø+×2Ò2°2Ñ6Ô6Ð6Ø38Ð0Ø'×.Ò.¨zÑ:Ô:Ð:Ø Ø�F�F�FØ(ð -Ø!×(Ò(¨Ñ,Ô,Ð,Ø$)Ð!Ø/ð /Ø#×*Ò*¨2Ñ.Ô.Ð.Ø×$Ò$ j°&½%ÀÑ:PÔ:PÐ%QÑRÔRÐRÙØˆFˆFØð 	 Nð 	ØˆFØ ð 	%Ø× Ò  Ñ$Ô$Ð$Ý�ÑÔÐr-   c                 óÔ  — t          | ¦  «        dk    rt          | d         ¦  «        dk    rdS g }| D ]¾}|j        dk    r dS t          |j        ¦  «        }g }d}|D ]l}|j        dk    r|                     |j        ¦  «         d}Œ*|j        dk    r&|j        d	k    r|rŒC|                     d¦  «         d
}Œ[|j        dk    rd}Œi  dS |s dS |                     t          |¦  «        ¦  «         Œ¿t          t          d„ |D ¦   «         ¦  «        ¦  «        dk    �rKt          ¦   «         }t          ¦   «         }t          |¦  «        D �]\  }	}t          |¦  «        D ]ù\  }
}|
|	f|v s|€Œ||v r  dS | 	                    |¦  «         | 	                    |
|	f¦  «         |
}t          ||
dz   d…         |
dz   ¬¦  «        D ]$\  }}||k    r n| 	                    ||	f¦  «         Œ%|dz  }t          ||	dz   d…         |	dz   ¬¦  «        D ]L\  }}t          ||
|…         ¦  «        |hk    r+t          |
|¦  «        D ]}| 	                    ||f¦  «         ŒŒL Œú�Œt          |¦  «        S dS )z,``grid-template-areas`` property validation.r%   r   rg   rÊ   NFrß   r   ú.TrM  c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   )rt   )rƒ   r5  s     r+   r…   z&grid_template_areas.<locals>.<genexpr>  s(   è è € Ð.Ð.˜C�s�3‰xŒxÐ.Ð.Ð.Ð.Ð.Ð.r-   )r  )rt   r   rÌ   r   rK   r“   r†   r  rù   r;   rÔ  )r)   Ú
grid_areasrI   Úcomponent_valuesr5  Úlast_is_dotrK   ÚcoordinatesÚareasÚyÚxÚareaÚnxÚnareaÚnyÚnrowÚnnxs                    r+   Úgrid_template_areasr{  ñ  sõ  € õ ˆ6�{„{�aÒÐ�K¨¨q¬	Ñ2Ô2°fÒ<Ð<ØˆvØ€JØð &ð &ˆØŒ:˜Ò!Ð!ØˆFˆFÝ5°e´kÑBÔBÐØˆØˆØ%ð 	ð 	ˆEØŒz˜WÒ$Ð$Ø—
’
˜5œ;Ñ'Ô'Ð'Ø#��Ø”˜yÒ(Ð(¨U¬[¸CÒ-?Ð-?Øð ØØ—
’
˜4Ñ Ô Ð Ø"��Ø”˜|Ò+Ð+Ø#��à���Øð 	ØˆFˆFØ×Ò�% ™*œ*Ñ%Ô%Ð%Ð%å
�3Ð.Ð. :Ð.Ñ.Ô.Ñ.Ô.Ñ/Ô/°1Ò4Ñ4å‘e”eˆÝ‘”ˆÝ 
Ñ+Ô+ð 	ñ 	‰FˆAˆsÝ$ S™>œ>ð ð ‘��4Ø�q�6˜[Ð(Ð(¨D¨LØØ˜5�=�=Ø�F�F�FØ—	’	˜$‘”�Ø—’  A Ñ'Ô'Ð'Ø�Ý!*¨3¨q°©s¨t¨t¬9¸A¸a¹CÐ!@Ñ!@Ô!@ð ð ‘I�B˜Ø ’}�}Ø˜Ø—O’O R¨ GÑ,Ô,Ð,Ð,à˜!‘G�BÝ )¨*°Q°q±S°T°TÔ*:À!ÀAÁ#Ð FÑ FÔ Fð ð ‘H�B˜Ý˜4  " œ:‘”¨4¨&Ò0Ð0Ý#(¨¨B¡<¤<ð 7ð 7˜CØ'ŸOšO¨S°"¨IÑ6Ô6Ð6Ð6ð7ð øñ'õ( �ZÑ Ô Ð ð3 5Ð4r-   zgrid-row-startzgrid-row-endzgrid-column-startzgrid-column-endc                 ó  — t          | ¦  «        dk    r\| d         }t          |¦  «        x}r|dk    r|S |dk    r
dd|j        fS n(t          |d¬¦  «        x}r|j        dk    r
d|j        dfS dS dx}x}}| D ]_}t          |¦  «        x}r"|dk    r dS |dk    r|€d}Œ'n5|r
|€|j        }Œ4n(t          |d¬¦  «        x}r|j        dk    r
|€|j        }Œ] dS |r(t	          |t
          ¦  «        r|dk     rdS |s|r|||fS dS |r|||fS dS )u:   ``grid-[row|column]-[startâ€”end]`` properties validation.r%   r   r�   ÚspanNTr7  )rt   r   rK   r   Ú
isinstancerú   )r)   rI   rJ   rÙ   rß   r}  Úitems          r+   Ú	grid_liner€  *  s¾  € õ ˆ6�{„{�aÒÐØ�q”	ˆÝ! %Ñ(Ô(Ð(ˆ7ð 	2Ø˜&Ò Ð Ø�Ø˜FÒ"Ð"Ø˜d E¤KÐ0Ð0ð #å! %°Ð6Ñ6Ô6Ð6ˆVð 	2ØŒ|˜qÒ Ð Ø˜fœl¨DÐ1Ð1ØˆØ Ð €FÐ ˆU�TØð ð ˆÝ! %Ñ(Ô(Ð(ˆ7ð 	Ø˜&Ò Ð Ø��Ø˜&Ò Ð Ø�<Ø!�DØð  ð ð ˜U˜]Øœ�ØøÝ ¨tÐ4Ñ4Ô4Ð4ˆTð 	ØŒz˜QŠˆ 6 >Øœ�ØØˆˆØð %Ý�f�cÑ"Ô"ð 	) v°¢z zØˆFØð 	)�fð 	)Ø˜& %Ð(Ð(ð	)ð 	)à	ð %Ø�f˜eÐ$Ð$ð%ð %r-   c                 ó
   — | dv S )z"``flex-wrap`` property validation.)r)  Úwrapzwrap-reverser2   rP   s    r+   Ú	flex_wraprƒ  U  s   € ð Ð8Ð8Ð8r-   c                 óô   — t          | ¦  «        dk    rt          | d         ¦  «        }|dv r|fS dS t          | ¦  «        dk    r/t          d„ | D ¦   «         ¦  «        }|d         dv r|d         dv r|S dS dS dS )	z(``justify-content`` property validation.r%   r   )r  úspace-betweenúspace-aroundúspace-evenlyr  r&  ú
flex-startúflex-endr  r  rº   r»   r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   z"justify_content.<locals>.<genexpr>g  rç   r-   ©ÚsafeÚunsafe)r  r  r  rˆ  r‰  rº   r»   NrW  rX  s      r+   Újustify_contentrŽ  \  sÀ   € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØð 1ð 1ð 1ð �:Ðð	1ð 1õ
 
ˆV‰Œ˜Ò	Ð	ÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�AŒ;Ð,Ð,Ð,Ø˜Œ{ð ð ð ð  �ð 
Ð	à,Ð,ðð r-   c                 ó`  — t          | ¦  «        dk    r(t          | d         ¦  «        }|dv r|fS |dk    rd|fS dS t          | ¦  «        dk    r[t          d„ | D ¦   «         ¦  «        }|d         dv r|d         d	v r|S dS d|v rd|v sd
|v r|S dS d|v rt          |¦  «        h d£z  r|S dS dS dS )z&``justify-items`` property validation.r%   r   )r&  r  r  r  r  ú
self-startúself-endrˆ  r‰  rº   r»   Úlegacyr!  Úfirstr   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   z justify_items.<locals>.<genexpr>|  rç   r-   r‹  ©	r  r  r  r�  r‘  rˆ  r‰  rº   r»   Úlastr’  >   rº   r»   r  N)rt   r   r†   r  rX  s      r+   Újustify_itemsr—  o  s7  € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØð ð ð ð �:ÐØ˜
Ò"Ð"Ø˜WÐ%Ð%ð #Ð"å	ˆV‰Œ˜Ò	Ð	ÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�AŒ;Ð,Ð,Ð,Ø˜Œ{ð ?ð ?ð ?ð  �ð?ð ?ð ˜8Ð#Ð#Ø˜(Ð"Ð" f°Ð&8Ð&8Ø�ð '9Ð&8à˜Ð!Ð!Ý�8‰}Œ}Ð:Ð:Ð:Ñ:ð  Ø�ð 
Ð	ð "Ð!ð ð  r-   c                 ó(  — t          | ¦  «        dk    r(t          | d         ¦  «        }|dv r|fS |dk    rd|fS dS t          | ¦  «        dk    r?t          d„ | D ¦   «         ¦  «        }|d         dv r|d         d	v r|S dS d|v rd|v sd
|v r|S dS dS dS )z%``justify-self`` property validation.r%   r   )r�   r&  r  r  r  r  r�  r‘  rˆ  r‰  rº   r»   r!  r“  r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   zjustify_self.<locals>.<genexpr>—  rç   r-   r‹  r•  r–  NrW  rX  s      r+   Újustify_selfrš  Š  s  € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØð ð ð ð �:ÐØ˜
Ò"Ð"Ø˜WÐ%Ð%ð #Ð"å	ˆV‰Œ˜Ò	Ð	ÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�AŒ;Ð,Ð,Ð,Ø˜Œ{ð ?ð ?ð ?ð  �ð?ð ?ð ˜8Ð#Ð#Ø˜(Ð"Ð" f°Ð&8Ð&8Ø�ð 
Ð	ð $Ð#Ø&8Ð&8r-   c                 ó(  — t          | ¦  «        dk    r(t          | d         ¦  «        }|dv r|fS |dk    rd|fS dS t          | ¦  «        dk    r?t          d„ | D ¦   «         ¦  «        }|d         dv r|d         d	v r|S dS d|v rd|v sd
|v r|S dS dS dS )z$``align-items`` property validation.r%   r   )	r&  r  r  r  r  r�  r‘  rˆ  r‰  r!  r“  r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   zalign_items.<locals>.<genexpr>®  rç   r-   r‹  ©r  r  r  r�  r‘  rˆ  r‰  r–  NrW  rX  s      r+   Úalign_itemsrž  ¢  s  € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØð 6ð 6ð 6ð �:ÐØ˜
Ò"Ð"Ø˜WÐ%Ð%ð #Ð"å	ˆV‰Œ˜Ò	Ð	ÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�AŒ;Ð,Ð,Ð,Ø˜Œ{ð .ð .ð .ð  �ð.ð .ð ˜8Ð#Ð#Ø˜(Ð"Ð" f°Ð&8Ð&8Ø�ð 
Ð	ð $Ð#Ø&8Ð&8r-   c                 ó(  — t          | ¦  «        dk    r(t          | d         ¦  «        }|dv r|fS |dk    rd|fS dS t          | ¦  «        dk    r?t          d„ | D ¦   «         ¦  «        }|d         dv r|d         d	v r|S dS d|v rd|v sd
|v r|S dS dS dS )z#``align-self`` property validation.r%   r   )
r�   r&  r  r  r  r  r�  r‘  rˆ  r‰  r!  r“  r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   zalign_self.<locals>.<genexpr>Å  rç   r-   r‹  r�  r–  NrW  rX  s      r+   Ú
align_selfr¡  ¹  s  € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØð Dð Dð Dð �:ÐØ˜
Ò"Ð"Ø˜WÐ%Ð%ð #Ð"å	ˆV‰Œ˜Ò	Ð	ÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�AŒ;Ð,Ð,Ð,Ø˜Œ{ð .ð .ð .ð  �ð.ð .ð ˜8Ð#Ð#Ø˜(Ð"Ð" f°Ð&8Ð&8Ø�ð 
Ð	ð $Ð#Ø&8Ð&8r-   c                 ó(  — t          | ¦  «        dk    r(t          | d         ¦  «        }|dv r|fS |dk    rd|fS dS t          | ¦  «        dk    r?t          d„ | D ¦   «         ¦  «        }|d         dv r|d         d	v r|S dS d|v rd|v sd
|v r|S dS dS dS )z&``align-content`` property validation.r%   r   )
r  r…  r†  r‡  r  r&  rˆ  r‰  r  r  r!  r“  r   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   ræ   r¡   s     r+   r…   z align_content.<locals>.<genexpr>Ý  rç   r-   r‹  )r  r  r  rˆ  r‰  r–  NrW  rX  s      r+   Úalign_contentr¤  Ð  s  € õ ˆ6�{„{�aÒÐÝ˜f QœiÑ(Ô(ˆØð  ð  ð  ð �:ÐØ˜
Ò"Ð"Ø˜WÐ%Ð%ð #Ð"å	ˆV‰Œ˜Ò	Ð	ÝÐ@Ð@¸Ð@Ñ@Ô@Ñ@Ô@ˆØ�AŒ;Ð,Ð,Ð,Ø˜Œ{ð Hð Hð Hà�ðHð Hð ˜8Ð#Ð#Ø˜(Ð"Ð" f°Ð&8Ð&8Ø�ð 
Ð	ð $Ð#Ø&8Ð&8r-   c                 ó:   — t          | d¬¦  «        x}r|j        S d S )NTr7  ré  rØ   s     r+   Úorderr¦  ç  s0   € õ ˜E¨4Ð0Ñ0Ô0Ð0€vð ØŒ|Ððð r-   c                 ó
   — | dv S )z#Validation for ``image-rendering``.)r�   zcrisp-edgesÚ	pixelatedr2   rP   s    r+   Úimage_renderingr©  î  r.  r-   c                 óÆ   — t          | ¦  «        }|dv r|S d\  }}| D ]5}t          |¦  «        }|dk    r|� dS d}Œ|€t          |¦  «        }|�Œ3 dS |€dn|}|€dn|}||fS )z%Validation for ``image-orientation``.)rg   z
from-imagerŒ  ÚflipNTr   F)r   r   r   )r)   rJ   Úangler«  rI   s        r+   Úimage_orientationr­  õ  s­   € õ ! Ñ(Ô(€GØÐ(Ð(Ð(ØˆØ�K€Eˆ4Øð ð ˆÝ˜eÑ$Ô$ˆØ�fÒÐØÐØ��ØˆDØØˆ=Ý˜eÑ$Ô$ˆEØÐ ØØˆˆØ�ˆAˆA E€EØ�Lˆ5ˆ5 d€DØ�4ˆ=Ðr-   c                 óz  — d„ | D ¦   «         }t          |¦  «        rEt          |¦  «        dk    r|d         |d         fS t          |¦  «        dk    rt          |¦  «        S d„ | D ¦   «         }t          |¦  «        dk    rS|d         }|t          j        v rt          j        |         S |dv rt          j        S |dk    rt          j        ddd	…         S t          |¦  «        dk    rS|d         d
v r|\  }}n|d         d
v r|\  }}nd}|t          j        v r%t          j        |         }|dk    r|S |\  }}||fS dS dS )z]``size`` property validation.

    See https://www.w3.org/TR/css-page-3/#page-size-prop

    c                 ó0   — g | ]}t          |d ¬¦  «        ‘ŒS rž   r    r¡   s     r+   r¢   zsize.<locals>.<listcomp>  r£   r-   r%   r   r   c                 ó,   — g | ]}t          |¦  «        ‘ŒS r2   ræ   r¡   s     r+   r¢   zsize.<locals>.<listcomp>  s    € Ð7Ð7Ð7 u•˜EÑ"Ô"Ð7Ð7Ð7r-   )r�   ÚportraitÚ	landscapeNr"  )r±  r²  r±  )rˆ   rt   r†   r   Ú
PAGE_SIZESÚINITIAL_PAGE_SIZE)	r)   r¦   rŠ   rJ   ÚorientationÚ	page_sizerC  r@  rA  s	            r+   Úsizer·    s�  € ð FÐE¸fÐEÑEÔE€GÝ
ˆ7�|„|ð "Ýˆw‰<Œ<˜1ÒÐØ˜A”J ¨¤
Ð+Ð+Ý�‰\Œ\˜QÒÐÝ˜‘>”>Ð!à7Ð7°Ð7Ñ7Ô7€HÝ
ˆ8�}„}˜ÒÐØ˜1”+ˆØ•oÔ0Ð0Ð0Ý"Ô-¨gÔ6Ð6ØÐ,Ð,Ð,Ý"Ô4Ð4Ø˜Ò#Ð#Ý"Ô4°T°T°r°TÔ:Ð:å
ˆ8�}„}˜ÒÐØ�AŒ;Ð3Ð3Ð3Ø%-Ñ"ˆK˜˜Ø�aŒ[Ð5Ð5Ð5Ø%-Ñ"ˆI�{�{àˆIØ�Ô2Ð2Ð2Ý*Ô5°iÔ@ˆLØ˜jÒ(Ð(Ø#Ð#à ,‘�˜Ø˜f�}Ð$ð Ðð 3Ð2r-   )r?   c                 óÔ   — t          | ¦  «        dk    rdS t          | ¦  «        }|                     ¦   «         x}r+|j        d„ |D ¦   «         f}|ddgfk    rd|d         j        fS dS dS )zValidation for ``anchor``.rg   c                 ó   — g | ]	}|j         ‘Œ
S r2   r`  ©rƒ   r  s     r+   r¢   zanchor.<locals>.<listcomp>=  ó   € Ð$MÐ$MÐ$M°x X¤]Ð$MÐ$MÐ$Mr-   Úattrrß   úattr()r   N)r   r	   Úsplit_spacer'   rK   ©rI   r=   r  Ú	prototypes       r+   ÚanchorrÁ  5  s�   € õ �5ÑÔ˜VÒ#Ð#ØˆvÝ˜‰Œ€HØ×(Ò(Ñ*Ô*Ð*€yð 2Ø”]Ð$MÐ$MÀ9Ð$MÑ$MÔ$MÐNˆ	Ø˜ ' Ð+Ò+Ð+Ø˜i¨œlÔ0Ð1Ð1ð2ð 2à+Ð+r-   )r?   r9   c                 óü   — t          | ¦  «        dk    rdS t          | |¦  «        }|r|S t          | ¦  «        }|                     ¦   «         x}r+|j        d„ |D ¦   «         f}|ddgfk    rd|d         j        fS dS dS )zValidation for ``link``.rg   c                 ó   — g | ]	}|j         ‘Œ
S r2   r`  rº  s     r+   r¢   zlink.<locals>.<listcomp>M  r»  r-   r¼  rß   r½  r   N)r   r   r	   r¾  r'   rK   )rI   rG   rp   r=   r  rÀ  s         r+   ÚlinkrÄ  B  s¬   € õ �5ÑÔ˜VÒ#Ð#ØˆvÝ˜ Ñ)Ô)€JØð ØÐÝ˜‰Œ€HØ×(Ò(Ñ*Ô*Ð*€yð 2Ø”]Ð$MÐ$MÀ9Ð$MÑ$MÔ$MÐNˆ	Ø˜ ' Ð+Ò+Ð+Ø˜i¨œlÔ0Ð1Ð1ð2ð 2à+Ð+r-   c                 ó^   — | j         dk    r| j        �| j        x}r|S t          | d¬¦  «        S )zVValidation for ``tab-size``.

    See https://www.w3.org/TR/css-text-3/#tab-size

    rÙ   NFrŸ   )rÌ   rÀ  r   )rI   rK   s     r+   Útab_sizerÆ  R  s?   € ð „z�XÒÐ %¤/Ð"=Ø”OÐ#ˆ5ð 	ØˆLÝ�e eÐ,Ñ,Ô,Ð,r-   c                 ó0   — t          | ¦  «        x}dv r|S dS )zValidation for ``hyphens``.)rg   Úmanualr�   Nræ   rÍ   s     r+   ÚhyphensrÉ  `  s+   € õ ˜uÑ%Ô%Ð%ˆÐ*DÐDÐDØˆð EÐDr-   c                 óT   — t          | ¦  «        dk    rdS | j        dk    r| j        S dS )z'Validation for ``hyphenate-character``.r�   u   â€�rÊ   Nrk  rT   s    r+   Úhyphenate_characterrË  h  s9   € õ �5ÑÔ˜VÒ#Ð#ØˆuØ	Œ�xÒ	Ð	ØŒ{Ðð 
 Ð	r-   c                 ó&   — t          | dd¬¦  «        S )z(Validation for ``hyphenate-limit-zone``.FTr�   r    rT   s    r+   Úhyphenate_limit_zonerÍ  r  s   € õ �e e¸Ð=Ñ=Ô=Ð=r-   c                 ó.  — t          | ¦  «        dk    r:| \  }t          |¦  «        }|dk    rdS t          |d¬¦  «        x}r
|j        ddfS d	S t          | ¦  «        dk    r£| \  }}t          |¦  «        }t          |¦  «        }t          |d¬¦  «        x}r9t          |d¬¦  «        x}	r|j        |	j        |	j        fS |dk    r
|j        ddfS d	S |dk    r*t          |d¬¦  «        x}	rd|	j        |	j        fS |dk    rdS d	S d	S t          | ¦  «        dk    r~| \  }}}
g }|||
fD ]a}t          |¦  «        dk    r|                     ||u rdnd¦  «         Œ1t          |d¬¦  «        x}r|                     |j        ¦  «         Œ_ d	S t          |¦  «        S d	S )
z)Validation for ``hyphenate-limit-chars``.r%   r�   )é   r   r   Tr7  r   rÏ  rs   N)rt   r   r   rK   r“   r†   )r)   rI   rJ   rÙ   Útotalrº   Útotal_keywordÚleft_keywordÚtotal_numberÚleft_numberr»   rd   s               r+   Úhyphenate_limit_charsrÕ  y  s  € õ ˆ6�{„{�aÒÐØ‰ˆÝ˜eÑ$Ô$ˆØ�fÒÐØ�9Ý! %°Ð6Ñ6Ô6Ð6ˆVð 	(Ø”L ! QÐ'Ð'ð	(ð 	(å	ˆV‰Œ˜Ò	Ð	Ø‰ˆˆtÝ# EÑ*Ô*ˆÝ" 4Ñ(Ô(ˆÝ% e°TÐ:Ñ:Ô:Ð:ˆ<ð 		!Ý(¨°tÐ<Ñ<Ô<Ð<ˆ{ð 2Ø$Ô*¨KÔ,=¸{Ô?PÐQÐQØ Ò'Ð'Ø$Ô*¨A¨qÐ1Ð1ð (Ð'à˜fÒ$Ð$Ý(¨°tÐ<Ñ<Ô<Ð<ˆ{ð !Ø˜;Ô,¨kÔ.?Ð@Ð@Ø Ò'Ð'Ø �yð	 %Ð$ð (Ð'å	ˆV‰Œ˜Ò	Ð	Ø#Ñˆˆt�UØˆØ˜D %Ð'ð 	ð 	ˆEÝ˜5Ñ!Ô! VÒ+Ð+Ø—’ 5¨E > >˜a˜a°qÑ9Ô9Ð9Ð9Ý% e°TÐ:Ñ:Ô:Ð:�ð Ø—’˜fœlÑ+Ô+Ð+Ð+à��Ý�V‰}Œ}Ðð 
Ð	r-   c                 óü   — t          | ¦  «        dk    rdS t          | ¦  «        }|                     ¦   «         x}r-|j        d„ |D ¦   «         f}|ddgfk    rd|d         j        fS dS | j        dk    r	d| j        fS dS )	zValidation for ``lang``.rg   c                 ó   — g | ]	}|j         ‘Œ
S r2   r`  rº  s     r+   r¢   zlang.<locals>.<listcomp>¦  r»  r-   r¼  rß   r½  r   rÊ   N)r   r	   r¾  r'   rK   rÌ   r¿  s       r+   ÚlangrØ  ž  s©   € õ �5ÑÔ˜VÒ#Ð#ØˆvÝ˜‰Œ€HØ×(Ò(Ñ*Ô*Ð*€yð 'Ø”]Ð$MÐ$MÀ9Ð$MÑ$MÔ$MÐNˆ	Ø˜ ' Ð+Ò+Ð+Ø˜i¨œlÔ0Ð1Ð1ð ,Ð+à	Œ�xÒ	Ð	Ø˜%œ+Ð&Ð&ð 
 Ð	r-   )r@   r9   c                 óJ   ‡— t          ˆfd„| D ¦   «         ¦  «        }d|vr|S dS )z"Validation for ``bookmark-label``.c              3   ó8   •K  — | ]}t          |‰¦  «        V — Œd S rS   ©r   ©rƒ   rI   rG   s     €r+   r…   z!bookmark_label.<locals>.<genexpr>°  s.   øè è € ÐVÐVÀeÕ0°¸ÑAÔAÐVÐVÐVÐVÐVÐVr-   N)r†   )r)   rG   r(  s    ` r+   Úbookmark_labelrÝ  ­  s@   ø€ õ ÐVÐVÐVÐVÈvÐVÑVÔVÑVÔV€MØ�=Ð Ð ØÐð !Ð r-   c                 ó€   — t          | dd¬¦  «        x}r|j        dk    r|j        S dS t          | ¦  «        dk    rdS dS )z"Validation for ``bookmark-level``.FTrÕ   r%   rg   Nr×   rØ   s     r+   Úbookmark_levelrß  µ  rí  r-   c                 ó
   — | dv S )z"Validation for ``bookmark-state``.)ÚopenÚclosedr2   rP   s    r+   Úbookmark_staterã  À  rÈ   r-   c                 ó
   — | dv S )z$Validation for ``footnote-display``.)rP  rN  Úcompactr2   rP   s    r+   Úfootnote_displayræ  Ç  s   € ð Ð4Ð4Ð4r-   c                 ó
   — | dv S )z#Validation for ``footnote-policy``.)r�   ÚlinerP  r2   rP   s    r+   Úfootnote_policyré  Î  s   € ð Ð/Ð/Ð/r-   c                 óø   ‡— t          | ¦  «        dk    rFt          | d         ¦  «        }|€dS t          ˆfd„| dd…         D ¦   «         ¦  «        }d|vr||fS dS | rt          | d         ¦  «        dk    rdS dS dS )zValidation for ``string-set``.r   r   Nc              3   ó8   •K  — | ]}t          |‰¦  «        V — Œd S rS   rÛ  rÜ  s     €r+   r…   zstring_set.<locals>.<genexpr>Þ  sG   øè è € ð Mð MØ8=Õ" 5¨(Ñ3Ô3ðMð Mð Mð Mð Mð Mr-   r%   rg   )rg   r2   )rt   r   r†   r   )r)   rG   Úvar_namer(  s    `  r+   Ú
string_setrí  Õ  sÉ   ø€ õ
 ˆ6�{„{�aÒÐÝ# F¨1¤IÑ.Ô.ˆØÐØˆFÝð Mð Mð Mð MØAGÈÈÈÄðMñ Mô Mñ Mô Mˆà�}Ð$Ð$Ø˜mÐ,Ð,ð %Ð$à	ð •K  q¤	Ñ*Ô*¨fÒ4Ð4Øˆzðð Ð4Ð4r-   c                 óê  — t          | ¦  «        dk    rdS g }| D �]J}t          |¦  «        }|                     ¦   «         }|€ dS d„ |D ¦   «         dhk    }t          |¦  «        dk    �r˜t	          |d         ¦  «        }t          |d         d¬	¦  «        }|j        d
k    r|�|                     |j        |f¦  «         Œ¦|j        dv r|�|                     d|dff¦  «         ŒË|j        dk    r|�|                     dd|ff¦  «         Œò|j        dv r"|r |                     d|t          ff¦  «         �Œ|j        dk    r"|r |                     dt          |ff¦  «         �ŒJ|j        dk    r(|r&|                     d|d         j	        dff¦  «         �Œ}|j        dk    r(|r&|                     dd|d         j	        ff¦  «         �Œ°|j        dk    r*|r(|                     d|d         j	        fdz  f¦  «         �Œå dS t          |¦  «        dk    rù|j        dk    r9|r7t          d„ |D ¦   «         ¦  «        }|                     |j        |f¦  «         �Œ?|j        dk    rIt          d„ |D ¦   «         ¦  «        }	t          |	¦  «        r|                     |j        |	f¦  «         �Œ� dS |j        dk    rSt          d„ |D ¦   «         ¦  «        }
t          d„ |
D ¦   «         ¦  «        r|                     |j        |
f¦  «         �Œî dS  dS t          |¦  «        dk    rB|j        dk    r7|r5|                     |j        t          d„ |D ¦   «         ¦  «        f¦  «         �ŒI dS t          |¦  «        S )zValidation for ``transform``.rg   r2   Nc                 ó   — h | ]	}|j         ’Œ
S r2   r`  rº  s     r+   r  ztransform.<locals>.<setcomp>ó  s   € ÐCÐCÐC¨X˜8œ=ÐCÐCÐCr-   rÙ   r%   r   Tr=  Úrotate)ÚskewxÚskewrò  Úskewy)Ú
translatexÚ	translaterõ  Ú
translateyÚscalexÚscaleÚscaleyr   c              3   ó$   K  — | ]}|j         V — Œd S rS   rc  rº  s     r+   r…   ztransform.<locals>.<genexpr>  s$   è è € Ð"LÐ"L°h 8¤>Ð"LÐ"LÐ"LÐ"LÐ"LÐ"Lr-   c              3   ó8   K  — | ]}t          |d ¬¦  «        V — ŒdS )Tr=  Nr    r¡   s     r+   r…   ztransform.<locals>.<genexpr>  sH   è è € ð $Sð $SØ?D�
 5°TÐ:Ñ:Ô:ð$Sð $Sð $Sð $Sð $Sð $Sr-   c              3   ó4   K  — | ]}t          |¦  «        V — Œd S rS   )r   r¡   s     r+   r…   ztransform.<locals>.<genexpr>  s*   è è € Ð"KÐ"K¸¥9¨UÑ#3Ô#3Ð"KÐ"KÐ"KÐ"KÐ"KÐ"Kr-   c              3   ó   K  — | ]}|d uV — Œ	d S rS   r2   )rƒ   r¬  s     r+   r…   ztransform.<locals>.<genexpr>  s'   è è € ÐAÐA°˜5¨Ð,ÐAÐAÐAÐAÐAÐAr-   é   Úmatrixc              3   ó$   K  — | ]}|j         V — Œd S rS   rc  rº  s     r+   r…   ztransform.<locals>.<genexpr>  s$   è è € Ð)SÐ)S¸X¨(¬.Ð)SÐ)SÐ)SÐ)SÐ)SÐ)Sr-   )r   r	   r  rt   r   r   r'   r“   r   rK   r†   rˆ   )r)   Ú
transformsrI   r=   r  Úall_numbersr¬  r”   r•   r¦   Úangless              r+   Ú	transformr  æ  s  € õ ˜&Ñ!Ô! VÒ+Ð+Øˆràˆ
Øð 3	ñ 3	ˆEÝ ‘”ˆHØ ×,Ò,Ñ.Ô.ˆIØÐ Ø��àCÐC¸ÐCÑCÔCÈÀzÒQˆKÝ�9‰~Œ~ Ò"Ñ"Ý! )¨A¤,Ñ/Ô/�Ý# I¨a¤L¸TÐBÑBÔB�Ø”= HÒ,Ð,°Ð1BØ×%Ò% x¤}°eÐ&<Ñ=Ô=Ð=Ð=Ø”]Ð&7Ð7Ð7¸EÐ<MØ×%Ò% v°°q¨zÐ&:Ñ;Ô;Ð;Ð;Ø”] gÒ-Ð-°%Ð2CØ×%Ò% v°°5¨zÐ&:Ñ;Ô;Ð;Ð;Ø”]Ð&AÐAÐAÀfÐAØ×%Ò% {°V½[Ð4IÐ&JÑKÔKÐKÑKØ”] lÒ2Ð2°vÐ2Ø×%Ò% {µ[À&Ð4IÐ&JÑKÔKÐKÑKØ”] hÒ.Ð.°;Ð.Ø×%Ò% w°¸1´Ô1CÀQÐ0GÐ&HÑIÔIÐIÑIØ”] hÒ.Ð.°;Ð.Ø×%Ò% w°°I¸a´LÔ4FÐ0GÐ&HÑIÔIÐIÑIØ”] gÒ-Ð-°+Ð-Ø×%Ò% w°¸1´Ô1CÐ0EÈÑ0IÐ&JÑKÔKÐKÑKà�F�FÝ�Y‘” 1Ò$Ð$Ø”= GÒ+Ð+°Ð+Ý"Ð"LÐ"LÀ)Ð"LÑ"LÔ"LÑLÔL�FØ×%Ò% x¤}°fÐ&=Ñ>Ô>Ð>Ñ>Ø”] kÒ1Ð1Ý#ð $Sð $SØHQð$Sñ $Sô $Sñ Sô S�Gå˜7‘|”|ð Ø"×)Ò)¨8¬=¸'Ð*BÑCÔCÐCÑCà˜˜Ø”] fÒ,Ð,Ý"Ð"KÐ"KÀÐ"KÑ"KÔ"KÑKÔK�FÝÐAÐA¸&ÐAÑAÔAÑAÔAð Ø"×)Ò)¨8¬=¸&Ð*AÑBÔBÐBÑBà˜˜à�F�FÝ�Y‘” 1Ò$Ð$¨¬¸(Ò)BÐ)BÀ{Ð)BØ×!Ò!Ø”]¥EÐ)SÐ)SÈÐ)SÑ)SÔ)SÑ$SÔ$SÐTñVô Vð Vñ Vð ��Ý�ZÑ Ô Ð r-   c                 ó0   — t          | ¦  «        x}dv r|S dS )z#``appearance`` property validation.rË   Nræ   rÍ   s     r+   Ú
appearancer  $  s*   € õ ˜uÑ%Ô%Ð%ˆÐ*:Ð:Ð:Øˆð ;Ð:r-   c                 ó–  — t          | ¦  «        dk    r"t          | ¦  «        }|dk    r|S |dk    r|fS dS g }d}t          | ¦  «        D ][\  }}t          |¦  «        }|dk    r|s|dt          | ¦  «        dz
  fvr dS d}Œ8|dk    r dS |r|                     |¦  «         ŒY dS |r|                     d¦  «         t          |¦  «        S )z%``color-scheme`` property validation.r%   r&  ÚonlyNFr   T)rt   r   rù   r   r“   r†   )r)   rJ   rŠ   r  rû   rI   s         r+   Úcolor_schemer	  ,  s  € õ ˆ6�{„{�aÒÐÝ$ VÑ,Ô,ˆØ�hÒÐØˆNØ˜ÒÐØ�:ÐàˆFàˆØˆÝ! &Ñ)Ô)ð 	ð 	‰HˆAˆuÝ! %Ñ(Ô(ˆGØ˜&Ò Ð Øð  ˜1 Q­¨F©¬°a©Ð$8Ð8Ð8Ø�F�Fà�D�DØ˜HÒ$Ð$Ø��Øð Ø—’ Ñ(Ô(Ð(Ð(à��Øð 	$Ø�OŠO˜FÑ#Ô#Ð#Ý�X‰ŒÐr-   )NFFF)NF)¹r1   Úmathr   Útinycss2r   Útinycss2.color5r   Ú r   Ú	functionsr	   r
   Ú
propertiesr   r   r   r)   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   ÚPREFIXr  r:   r<   r8   r#   rB   r&   rQ   rU   rY   r]   ra   rb   rk   rq   rv   ry   r|   r‹   r–   r›   r§   rª   rµ   rÁ   rÃ   rÇ   rÎ   rÒ   rÚ   rÝ   r¹   rã   rê   rì   ró   rõ   rü   rÿ   r  r  r
  r  r  r  r  r  r  r*  r0  r3  r5  r/  r?  rC  rE  rH  rL  rY  r]  rf  rh  rl  r}  r�  r„  r‰  r˜  rš  r¦  r«  r±  rµ  r¹  rÁ  rÃ  rÅ  rÇ  rÉ  rË  rÍ  rØ  rÛ  rÚ  rß  rã  rå  rê  rì  rð  ró  rù  rþ  r   r  r  r  r  r  r  r  r#  r&  r*  r-  r0  r3  r6  r8  r<  rB  rH  rK  rO  rS  rY  rj  r{  r€  rƒ  rŽ  r—  rš  rž  r¡  r¤  r¦  r©  r­  r·  rÁ  rÄ  rÆ  rÉ  rË  rÍ  rÕ  rØ  rÝ  rß  rã  ræ  ré  rí  r  r  r	  r2   r-   r+   ú<module>r     sò  ððð ð Ð Ð Ð Ð Ð à /Ð /Ð /Ð /Ð /Ð /Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'à Ð Ð Ð Ð Ð Ø +Ð +Ð +Ð +Ð +Ð +Ð +Ð +Ø AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AÐ AðXð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð Xð 
€Øˆc‰eŒe€Øˆ3‰5Œ5€ð €
ð?ð ?ð ?ð ?ð ?�gñ ?ô ?ð ?ð >CØ!ð&ð &ð &ð &ðRð ð ð ð> 
€�„ØØð3ð 3ñ „ñ Ôñ „ð3ð
 
€Ð
ÑÔØ	€Ð
ÑÔØ	€Ð
ÑÔØ	€Ð
Ñ Ô Ø	€Ð
ÑÔØ	€Ð
¨Ð-Ñ-Ô-Ø	€Ð
!Ñ"Ô"Øðð ñ „ñ #Ô"ñ .Ô-ñ Ôñ !Ô ñ  Ôñ Ôñ Ôðð
 
€�„Øðð ñ „ñ „ðð 
€�„Øð/ð /ñ „ñ „ð/ð 
€�„Øð'ð 'ñ „ñ „ð'ð
 
€ˆ'ÑÔØðð ñ „ñ Ôðð 
€Ð
¨TÐ2Ñ2Ô2ØØð&ð &ñ „ñ Ôñ 3Ô2ð&ð 
€Ð
¨TÐ2Ñ2Ô2Øð+ð +ñ „ñ 3Ô2ð+ð 
€�„ð%ð %ñ „ð%ð 
€�„Øð"ð "ñ Ôñ „ð"ð
 
€�„Øð"ð "ñ Ôñ „ð"ð
 
€�„Øðð ñ Ôñ „ðð 
€�„Øð!ð !ñ Ôñ „ð!ð0 
€Ð
ÑÔØ	€Ð
ÑÔØØðCð Cñ „ñ Ôñ Ôñ ÔðCð 
€�„ð"ð "ñ „ð"ð 
€Ð
#Ñ$Ô$Ø	€Ð
&Ñ'Ô'Ø	€Ð
%Ñ&Ô&Ø	€Ð
"Ñ#Ô#ð"ð "ñ $Ô#ñ 'Ô&ñ (Ô'ñ %Ô$ð"ð 
€Ð
ÑÔØ	€Ð
ÑÔØ	€Ð
ÑÔØ	€Ð
Ñ Ô Ø	€Ð
¨Ð-Ñ-Ô-ØðFð Fñ „ñ .Ô-ñ !Ô ñ Ôñ  Ôñ ÔðFð 
€ˆ.ÑÔØ	€ˆ-ÑÔØðMð Mñ „ñ Ôñ ÔðMð 
€�„ØðFð Fñ „ñ „ðFð
 
€�„Øð)ð )ñ „ñ „ð)ð
 
€�„Øðð ñ „ñ „ðð 
€ˆ*˜tÐ$Ñ$Ô$Øð*ð *ñ „ñ %Ô$ð*ð
 
€�4ÐÑÔØðð ñ „ñ Ôðð 
€�4ÐÑÔØð2ð 2ñ „ñ Ôð2ð
 
€�4ÐÑÔØðFð Fñ „ñ ÔðFð 
€ˆ, Ð&Ñ&Ô&Ø	€ˆ- $Ð'Ñ'Ô'Ø	€ˆ+ Ð%Ñ%Ô%Ø	€ˆ. 4Ð(Ñ(Ô(Øð!ð !ñ „ñ )Ô(ñ &Ô%ñ (Ô'ñ 'Ô&ð
!ð 
€�4ÐÑÔð
ð 
ñ Ôð
ð 
€ˆ/ÑÔØð=ð =ñ „ñ Ôð=ð 
€Ð
ÑÔØ	€Ð
ÑÔØ	€Ð
ÑÔØ	€Ð
Ñ Ô Ø	€Ð
¨Ð-Ñ-Ô-Ø	€ˆ/ÑÔØðð ñ „ñ Ôñ .Ô-ñ !Ô ñ Ôñ  Ôñ Ôðð 
€Ð
°Ð5Ñ5Ô5Ø	€Ð
¨tÐ4Ñ4Ô4Øð&ð &ñ „ñ 5Ô4ñ 6Ô5ð&ð 
€Ð
ÑÔØ	€Ð
ÑÔðð ñ Ôñ  Ôðð& 
€Ð
ÑÔØ	€Ð
ÑÔðð ñ Ôñ  Ôðð  
€Ð
Ñ Ô Ø	€Ð
ÑÔðð ñ  Ôñ !Ô ðð 
€Ð
Ñ Ô Ø	€Ð
ÑÔðð ñ  Ôñ !Ô ðð 
€�„Øð-ð -ñ „ñ „ð-ð 
€�4ÐÑÔØðð ñ „ñ Ôðð 
€�4ÐÑÔØð&ð &ñ „ñ Ôð&ð
 
€�„ØðCð Cñ „ñ „ðCð
 
€�„Øð(ð (ñ „ñ „ð(ð
 
€�„Øð8ð 8ñ „ñ „ð8ð
 
€�„Øðð ñ „ñ „ðð$ 
€˜ÐÑÔð.ð .ñ Ôð.ð4 
€�„ð.ð .ñ „ð.ð
 
€�„ð.ð .ñ „ð.ð
 
€�„ð.ð .ñ „ð.ð
ð ð ð6 
€ˆ%�„Ø	€ˆ'ÑÔØ	€ˆ&ÑÔØ	€ˆ(ÑÔØ	€ˆ,ÑÔØ	€ˆ.ÑÔØ	€ˆ/ÑÔØ	€ˆ-ÑÔØ	€Ð
!Ñ"Ô"Øðð ñ „ñ #Ô"ñ Ôñ Ôñ Ôñ Ôñ Ôñ Ôñ Ôñ „ðð 
€ˆ(ÑÔØ	€ˆ'ÑÔØðð ñ „ñ Ôñ Ôðð 
€ˆ, Ð&Ñ&Ô&Ø	€ˆ)˜dÐ#Ñ#Ô#Øðð ñ „ñ $Ô#ñ 'Ô&ðð 
€�4ÐÑÔØð*ð *ñ „ñ Ôð*ð
 
€�„Øð%ð %ñ „ñ „ð%ð
 
€�„ð*!ð *!ñ „ð*!ðZ 
€ˆ'ÑÔØð<ð <ñ „ñ Ôð<ð
 
€�„Øð9ð 9ñ Ôñ „ð9ð 
€�„Øð1ð 1ñ „ñ „ð1ð 
€�„Øðð ñ „ñ „ðð 
€�„ðð ñ „ðð< 
€�„Øð1ð 1ñ „ñ „ð1ð 
€�„Øð6ð 6ñ „ñ „ð6ð 
€�„ðð ñ „ðð< 
€�„ð.ð .ñ „ð.ð< 
€�„Øð5ð 5ñ „ñ „ð5ð 
€�„ðð ñ „ðð: 
€�„ð0ð 0ñ „ð0ð 
€�„Øð!ð !ñ „ñ „ð!ð 
€�„Øð6ð 6ñ „ñ „ð6ð
 
€�„ØðIð Iñ „ñ „ðIð 
€�„Øð#ð #ñ „ñ „ð#ð 
€�„ØðIð Iñ „ñ „ðIð 
€�4ÐÑÔØð!ð !ñ „ñ Ôð!ð
 
€Ð
ÑÔØ	€ˆ.ÑÔØðð ñ „ñ Ôñ Ôðð 
€�„Øðð ñ „ñ „ðð 
€�„Øðð ñ „ñ „ðð 
€�„Øð,ð ,ñ „ñ „ð,ð
 
€�„Øð/ð /ñ „ñ „ð/ð@ 
€ˆ+ÑÔØ	€ˆ,ÑÔØð-ð -ñ „ñ Ôñ Ôð-ð 
€ˆ-ÑÔØ	€ˆ/ÑÔØ	€Ð
ÑÔØ	€ˆ.ÑÔØðð ñ „ñ Ôñ Ôñ Ôñ Ôð
ð 
€ˆ+ÑÔØ	€ˆ,ÑÔØð$ð $ñ „ñ Ôñ Ôð$ð 
€�„Øð6ð 6ñ „ñ „ð6ð 
€�„Øðð ñ „ñ „ðð 
€ˆ)ÑÔØ	€ˆ(ÑÔØð ð  ñ „ñ Ôñ Ôð ð 
€�4ÐÑÔØðð ñ „ñ Ôðð 
€�„Øð>ð >ñ „ñ „ð>ð
 
€�„Øð+ð +ñ „ñ „ð+ð
 
€�„Øðð ñ „ñ „ðð 
€�„ð
+ð 
+ñ „ð
+ð 
€�„Øðð ñ „ñ „ðð 
€�„ØðMð Mñ „ñ „ðMð
 
€�„ØðUð Uñ „ñ „ðUð
 
€�„ðð ñ „ðð 
€�„Øðð ñ „ñ „ðð 
€�„Øðð ñ „ñ „ðð 
€�„Øðð ñ „ñ „ðð 
€�„ØðUð Uñ „ñ „ðUð
 
€�„Øðð ñ „ñ „ðð 
€�„Øð8ð 8ñ „ñ „ð8ð
 
€�„ØðJð Jñ „ñ „ðJð
 
€�„Øð;ð ;ñ „ñ „ð;ð
 
€�„Øð.ð .ñ „ñ „ð.ð
 
€�„Øðð ñ „ñ „ðð 
€�„ØðIð Iñ „ñ „ðIð
 
€ˆ+ÑÔØ	€ˆ-ÑÔØðð ñ „ñ Ôñ Ôðð
ð ð ð&ð &ð &ð1ð 1ð 1ð$Fð Fð Fð$	(ð 	(ð 	(ð 
€Ð
ÑÔØ	€Ð
ÑÔð ð  ñ Ôñ Ôð ð 
€�„ð#ð #ñ „ð#ð 
€Ð
!Ñ"Ô"Ø	€Ð
ÑÔð} ð } ñ  Ôñ #Ô"ð} ð@ 
€�„ð5!ð 5!ñ „ð5!ðp 
€Ð
ÑÔØ	€ˆ.ÑÔØ	€Ð
ÑÔØ	€Ð
ÑÔð$%ð $%ñ Ôñ Ôñ Ôñ Ôð$%ðN 
€�„Øð9ð 9ñ „ñ „ð9ð
 
€�„ð ð  ñ „ð ð$ 
€�„ð ð  ñ „ð ð4 
€�„ð ð  ñ „ð ð. 
€�„ð ð  ñ „ð ð, 
€�„ð ð  ñ „ð ð, 
€�„ð ð  ñ „ð ð, 
€�„Øðð ñ „ñ „ðð
 
€�4ÐÑÔØð;ð ;ñ „ñ Ôð;ð
 
€�4ÐÑÔðð ñ Ôðð. 
€�4ÐÑÔð$%ð $%ñ Ôð$%ðN 
€�dÐÑÔØð2ð 2ñ „ñ Ôð2ð 
€�d¨4Ð0Ñ0Ô0Øð2ð 2ñ „ñ 1Ô0ð2ð 
€�„Øð	-ð 	-ñ „ñ „ð	-ð 
€�4ÐÑÔØðð ñ „ñ Ôðð 
€�4ÐÑÔØðð ñ „ñ Ôðð 
€�4ÐÑÔØð>ð >ñ „ñ Ôð>ð
 
€�4ÐÑÔð!ð !ñ Ôð!ðH 
€�dÐÑÔØð
'ð 
'ñ „ñ Ôð
'ð 
€�4¨Ð-Ñ-Ô-ðð ñ .Ô-ðð 
€�4ÐÑÔØðð ñ „ñ Ôðð 
€�4ÐÑÔØð)ð )ñ „ñ Ôð)ð
 
€�4ÐÑÔØð5ð 5ñ „ñ Ôð5ð
 
€�4ÐÑÔØð0ð 0ñ „ñ Ôð0ð
 
€�4¨Ð-Ñ-Ô-Øðð ñ Ôñ .Ô-ðð 
€�„ð:!ð :!ñ „ð:!ðz 
€�„Øðð ñ „ñ „ðð 
€�„ðð ñ „ðð ð r-   