o
    f~#gx                    @  s   d dl mZ d dlZd dlZd dlZd dlZd dlZd dlmZ d dl	m
Z
 d dlZd dlZd dlmZ d dlmZ d dlmZmZmZmZmZ d dlmZ G d	d
 d
ZeddddddG dd deZdS )    )annotationsN)Iterable)Path)document)CommitOperationAdd)colorsfontsget_matching_versionget_theme_assetssizes)README_CONTENTc                   @  s   e Zd Zdd Zdd Zd,d-d	d
Zdd Zed.ddZed/ddZ	d0ddZ
ed1d2ddZed3dd Zed4d#d$Z						%d5d6d*d+ZdS )7
ThemeClassc                 C  s   g | _ d | _g | _d S N)_stylesheetsname	_font_css)self r   w/var/www/static.ux5.de/https/Moving-Object-Detection-with-OpenCV/env/lib/python3.10/site-packages/gradio/themes/base.py__init__   s   
zThemeClass.__init__c                   s:  i }i }| j  D ]R\  drq	d u r- dr%d | d d < q	td  dtd} fdd}t|| dd	  d
rW d d  | < q	| < q	| D ]\  |vrl| < q`dd	dd | D  d }dd	dd | D  d }d	| j
}| d| d| S )N__darkzCannot set 'z1' to None - only dark mode variables can be None.(\*)([\w_]+)(\b)c                   s   |  d}|dr|drtd  d d dr;|dr; d d |dd  kr;td  d d	|  d
}|dd}d| dS )Nr   *r   zCannot refer 'z' to 'zz' - dark variable references are automatically used for dark mode attributes, so do not use the _dark suffix in the value.r      zN' - if dark and light mode values are the same, set dark mode version to None.   r   -zvar(--))group
startswithendswith
ValueErrorreplace)match
full_matchwordattrvalr   r   	repl_func2   s    

z,ThemeClass._get_theme_css.<locals>.repl_funcr   z-darkz:root {

c                 S  "   g | ]\}}d | d| dqS z  --z: ;r   .0r(   r)   r   r   r   
<listcomp>U      " z-ThemeClass._get_theme_css.<locals>.<listcomp>z
}z
:root .dark {
c                 S  r,   r-   r   r/   r   r   r   r1   Z   r2   )__dict__itemsr    r!   r"   strresubr#   joinr   )r   cssdark_csspatternr*   css_codedark_css_codefont_cssr   r'   r   _get_theme_css    sN   





zThemeClass._get_theme_cssr   propertyr5   returnc                   s   d} |krt d d dS d}|r'ttd d d}ntd}d}fdd	t| fd
d|}|S )Nd   zCannot resolve 'z ' - circular reference detected. r   r   r   c                   s0   |  d} drdnd}|| |d S )Nr   r   rC   r   )r   r!   _get_computed_value)r$   depthr&   dark_suffix)r@   r   r   r   r*   p   s   
z1ThemeClass._get_computed_value.<locals>.repl_funcc                   s
   |  S r   r   )r$   )rE   r*   r   r   <lambda>v   s   
 z0ThemeClass._get_computed_value.<locals>.<lambda>)warningswarnr!   getattrr6   r7   )r   r@   rE   	max_depthis_dark	set_valuer;   computed_valuer   )rE   r@   r*   r   r   rD   b   s    
zThemeClass._get_computed_valuec                 C  sd   di i}t | D ]'}|dr|ds|dks|dkr/tt| |ttfr/t| ||d |< q|S )z+Convert the theme into a python dictionary.themer   _fontr   r   )dirr    
isinstancerJ   listr5   )r   schemapropr   r   r   to_dictz   s   zThemeClass.to_dictpathc                 C  sF   t |dd}| tj|tjdW  d   S 1 sw   Y  dS )zdLoad a theme from a json file.

        Parameters:
            path: The filepath to read.
        zutf-8)encoding)object_hookN)open	from_dictjsonloadr   as_font)clsrW   fpr   r   r   r]      s   $zThemeClass.loadrO   dict[str, dict[str, str]]c                 C  sd   |  }|d   D ]
\}}t||| q	t }|jD ]}|ds/t||s/t||t|| q|S )zCreate a theme instance from a dictionary representation.

        Parameters:
            theme: The dictionary representation of the theme.
        rO   r   )r4   setattrBaser3   r    hasattrrJ   )r_   rO   	new_themerU   valuebaser(   r   r   r   r[      s   
zThemeClass.from_dictfilenamec                 C  s"   t |tj|  tjd dS )zsWrite the theme to a json file.

        Parameters:
            filename: The path to write the theme too
        r_   N)r   
write_textr\   dumpsrV   r   FontEncoder)r   rh   r   r   r   dump   s   "zThemeClass.dumpN	repo_namehf_token
str | Nonec              
   C  s   d|vr
|d}}n| d\}}tj|d}z||}W n tjjy5 } z	td| d|d}~ww t|}t||}	|	sPtd| ddd	 |D  tj	|d
d|	j
 dd}
| |
}||_|S )a  Load a theme from the hub.

        This DOES NOT require a HuggingFace account for downloading publicly available themes.

        Parameters:
            repo_name: string of the form <author>/<theme-name>@<semantic-version-expression>.  If a semantic version expression is omitted, the latest version will be fetched.
            hf_token: HuggingFace Token. Only needed to download private themes.
        @Ntoken
The space z does not existz.Cannot find a matching version for expression z from files c                 S  s   g | ]}|j qS r   )rh   )r0   fr   r   r   r1      s    z'ThemeClass.from_hub.<locals>.<listcomp>spacethemes/theme_schema@.json)repo_id	repo_typerh   )splithuggingface_hubHfApi
space_infoutilsRepositoryNotFoundErrorr"   r
   r	   hf_hub_downloadversionr]   r   )r_   rn   ro   r   r   apir~   eassetsmatching_version
theme_filerO   r   r   r   from_hub   s4   


zThemeClass.from_hubr~    huggingface_hub.hf_api.SpaceInfoc                 C  s&   t | }t|dd dj}t| S )Nc                 S  s   | j S r   r   )assetr   r   r   rG      s    z.ThemeClass._get_next_version.<locals>.<lambda>)key)r
   maxr   r5   
next_patch)r~   r   latest_versionr   r   r   _get_next_version   s   zThemeClass._get_next_versionr   boolc                   s   t | }t fdd|D S )Nc                 3  s     | ]}|j t kV  qd S r   )r   semverVersion)r0   ar   r   r   	<genexpr>   s    z3ThemeClass._theme_version_exists.<locals>.<genexpr>)r
   any)r~   r   r   r   r   r   _theme_version_exists   s   z ThemeClass._theme_version_existsForg_name
theme_namedescriptionprivatec              
   C  s  ddl m} t }	|s&zt d }
W n ty% } ztd|d}~ww tj|dd }
|p1|
 d| }z|	|}W n tyI   d}Y nw |du}|sZ|rW| 	|nd}nt
|}|ru| ||rutd	| d
| d| d|px|}tjdddd}|  }d|i|d< tj||tjd W d   n1 sw   Y  tjddd}tj||pd|
|d}|t| W d   n1 sw   Y  tjddd:}ttjd  }tdd| d|}td|p||}td|p|
|}td||}|| W d   n	1 sw   Y  td| d|j dtd|j dtd|j dg}tj!|d d!|d"|d# |	j"|d$d ||d% d&| }t#d'|  |S )(u  Upload a theme to the HuggingFace hub.

        This requires a HuggingFace account.

        Parameters:
            repo_name: The name of the repository to store the theme assets, e.g. 'my_theme' or 'sunset'.
            org_name: The name of the org to save the space in. If None (the default), the username corresponding to the logged in user, or hƒ_token is used.
            version: A semantic version tag for theme. Bumping the version tag lets you publish updates to a theme without changing the look of applications that already loaded your theme.
            hf_token: API token for your HuggingFace account
            theme_name: Name for the name. If None, defaults to repo_name
            description: A long form description to your theme.
        r   )__version__r   zIn order to push to hub, log in via `huggingface-cli login` or provide a theme_token to push_to_hub. For more information see https://huggingface.co/docs/huggingface_hub/quick-start#loginNrr   /z0.0.1rt   z" already has a theme with version z. See: themes/theme_schema@zE.json. To manually override this version, use the HuggingFace hub UI.wFrx   )modedeletesuffixr   ri   )r   r   z%Add a description of this theme here!)r   r   authorgradio_versionzapp.pyztheme=gr.themes.Default\(\)ztheme=''z{THEME}z{AUTHOR}z{SPACE_NAME}rw   )path_in_repopath_or_fileobjz	README.mdrv   gradioT)rz   	space_sdkrs   exist_okr   zUpdating theme)ry   commit_messagerz   
operationsrs   zhttps://huggingface.co/spaces/zSee your theme here! )$r   r   r|   r}   whoamiOSErrorr"   r~   	Exceptionr   r   r   r   tempfileNamedTemporaryFilerV   r\   rm   r   rl   r   formatwritetextwrapdedentr   __file__parent	read_textr6   r7   r   r   create_repocreate_commitprint)r   rn   r   r   ro   r   r   r   r   r   r   r   space_idr~   space_existsr   css_filecontentsreadme_filereadme_contentapp_filer   urlr   r   r   push_to_hub   s   


	
zThemeClass.push_to_hub)r   )r@   r5   rA   r5   )rW   r5   rA   r   )rO   ra   rA   r   )rh   r5   r   )rn   r5   ro   rp   )r~   r   rA   r5   )r~   r   r   r5   rA   r   )NNNNNF)rn   r5   r   rp   r   rp   ro   rp   r   rp   r   rp   r   r   )__name__
__module____qualname__r   r?   rD   rV   classmethodr]   r[   rm   r   staticmethodr   r   r   r   r   r   r   r      s.    B	
'	r   r   r   r]   rm   r[   rV   c                   @  sX  e Zd Zejejejejejej	e
ddddfe
ddddfd	dddZddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddZdS )rc   zIBM Plex Sanszui-sans-serifz	system-uiz
sans-serifzIBM Plex Monozui-monospaceConsolas	monospace)primary_huesecondary_hueneutral_hue	text_sizespacing_sizeradius_sizefont	font_monor   colors.Color | strr   r   r   sizes.Size | strr   r   r   -fonts.Font | str | Iterable[fonts.Font | str]r   c                C  s(  d| _ g | _ddd}	|	|dd}|	|dd}|	|dd}|	|ddd	}|	|dd
d	}|	|ddd	}|j| _|j| _|j| _|j| _	|j
| _|j| _|j| _|j| _|j| _|j| _|j| _|j| _|j| _|j| _|j| _|j
| _|j| _|j| _|j| _|j| _ |j| _!|j| _"|j| _#|j| _$|j| _%|j| _&|j
| _'|j| _(|j| _)|j| _*|j| _+|j| _,|j| _-|j.| _/|j0| _1|j2| _3|j4| _5|j6| _7|j8| _9|j:| _;|j.| _<|j0| _=|j2| _>|j4| _?|j6| _@|j8| _A|j:| _B|j.| _C|j0| _D|j2| _E|j4| _F|j6| _G|j8| _H|j:| _ItJ|tKjLtMfr|g}dd |D | _NtJ|tKjLtMfr*|g}dd |D | _OdPdd | jND | _QdPdd | jOD | _Rg | _Sg | _| jN| jO D ]7}|T }
tJ|
tMrj| jSU|
 qVtJ|
tVr|
d r| jSU|
d  qV|
d r| jU|
d  qV| W  dS )a
  
        Parameters:
            primary_hue: The primary hue of the theme. Load a preset, like gradio.themes.colors.green (or just the string "green"), or pass your own gradio.themes.utils.Color object.
            secondary_hue: The secondary hue of the theme. Load a preset, like gradio.themes.colors.green (or just the string "green"), or pass your own gradio.themes.utils.Color object.
            neutral_hue: The neutral hue of the theme, used . Load a preset, like gradio.themes.colors.green (or just the string "green"), or pass your own gradio.themes.utils.Color object.
            text_size: The size of the text. Load a preset, like gradio.themes.sizes.text_sm (or just the string "sm"), or pass your own gradio.themes.utils.Size object.
            spacing_size: The size of the spacing. Load a preset, like gradio.themes.sizes.spacing_sm (or just the string "sm"), or pass your own gradio.themes.utils.Size object.
            radius_size: The radius size of corners. Load a preset, like gradio.themes.sizes.radius_sm (or just the string "sm"), or pass your own gradio.themes.utils.Size object.
            font: The primary font to use for the theme. Pass a string for a system font, or a gradio.themes.font.GoogleFont object to load a font from Google Fonts. Pass a list of fonts for fallbacks.
            font_mono: The monospace font to use for the theme, applies to code. Pass a string for a system font, or a gradio.themes.font.GoogleFont object to load a font from Google Fonts. Pass a list of fonts for fallbacks.
        rg   colorNc                 S  s   t | ts| S |dkr#tjjD ]}|j| kr|  S qtd|  d|dkrDtjjD ]}|j| d|  kr;|  S q+td|  dd S )Nr   zColor shortcut z not found.sizer   zSize shortcut )	rR   r5   r   Colorallr   r"   r   Size)shortcutr   prefixr   r   r   r   r   expand_shortcut  s   

z&Base.__init__.<locals>.expand_shortcut)r   r   text)r   r   spacingradiusc                 S  &   g | ]}t |tjr|nt|qS r   rR   r   Font	LocalFontr0   fontfamr   r   r   r1         z!Base.__init__.<locals>.<listcomp>c                 S  r   r   r   r   r   r   r   r1     r   z, c                 s      | ]}t |V  qd S r   r5   r0   r   r   r   r   r         z Base.__init__.<locals>.<genexpr>c                 s  r   r   r   r   r   r   r   r     r   r   r9   )r   N)Xr   r   c50
primary_50c100primary_100c200primary_200c300primary_300c400primary_400c500primary_500c600primary_600c700primary_700c800primary_800c900primary_900c950primary_950secondary_50secondary_100secondary_200secondary_300secondary_400secondary_500secondary_600secondary_700secondary_800secondary_900secondary_950
neutral_50neutral_100neutral_200neutral_300neutral_400neutral_500neutral_600neutral_700neutral_800neutral_900neutral_950xxsspacing_xxsxs
spacing_xssm
spacing_smmd
spacing_mdlg
spacing_lgxl
spacing_xlxxlspacing_xxl
radius_xxs	radius_xs	radius_sm	radius_md	radius_lg	radius_xl
radius_xxltext_xxstext_xstext_smtext_mdtext_lgtext_xltext_xxlrR   r   r   r5   rP   
_font_monor8   r   r   r   
stylesheetappenddictset)r   r   r   r   r   r   r   r   r   r   font_stylesheetr   r   r   r   \  s   "


zBase.__init__N)body_background_fillbody_background_fill_darkbody_text_colorbody_text_color_darkbody_text_sizebody_text_color_subduedbody_text_color_subdued_darkbody_text_weightembed_radiusbackground_fill_primarybackground_fill_primary_darkbackground_fill_secondarybackground_fill_secondary_darkborder_color_accentborder_color_accent_darkborder_color_accent_subdued border_color_accent_subdued_darkborder_color_primaryborder_color_primary_darkcolor_accentcolor_accent_softcolor_accent_soft_darklink_text_colorlink_text_color_darklink_text_color_activelink_text_color_active_darklink_text_color_hoverlink_text_color_hover_darklink_text_color_visitedlink_text_color_visited_darkprose_text_sizeprose_text_weightprose_header_text_weightcode_background_fillcode_background_fill_darkshadow_dropshadow_drop_lgshadow_insetshadow_spreadshadow_spread_darkblock_background_fillblock_background_fill_darkblock_border_colorblock_border_color_darkblock_border_widthblock_border_width_darkblock_info_text_colorblock_info_text_color_darkblock_info_text_sizeblock_info_text_weightblock_label_background_fill block_label_background_fill_darkblock_label_border_colorblock_label_border_color_darkblock_label_border_widthblock_label_border_width_darkblock_label_shadowblock_label_text_colorblock_label_text_color_darkblock_label_marginblock_label_paddingblock_label_radiusblock_label_right_radiusblock_label_text_sizeblock_label_text_weightblock_paddingblock_radiusblock_shadowblock_shadow_darkblock_title_background_fill block_title_background_fill_darkblock_title_border_colorblock_title_border_color_darkblock_title_border_widthblock_title_border_width_darkblock_title_text_colorblock_title_text_color_darkblock_title_paddingblock_title_radiusblock_title_text_sizeblock_title_text_weightcontainer_radiusform_gap_width
layout_gappanel_background_fillpanel_background_fill_darkpanel_border_colorpanel_border_color_darkpanel_border_widthpanel_border_width_darksection_header_text_sizesection_header_text_weightaccordion_text_coloraccordion_text_color_darktable_text_colortable_text_color_darkcheckbox_background_colorchatbot_text_sizecheckbox_background_color_darkcheckbox_background_color_focus$checkbox_background_color_focus_darkcheckbox_background_color_hover$checkbox_background_color_hover_dark"checkbox_background_color_selected'checkbox_background_color_selected_darkcheckbox_border_colorcheckbox_border_color_darkcheckbox_border_color_focus checkbox_border_color_focus_darkcheckbox_border_color_hover checkbox_border_color_hover_darkcheckbox_border_color_selected#checkbox_border_color_selected_darkcheckbox_border_radiuscheckbox_border_widthcheckbox_border_width_darkcheckbox_checkradio_circlecheckbox_shadowcheckbox_label_background_fill#checkbox_label_background_fill_dark$checkbox_label_background_fill_hover)checkbox_label_background_fill_hover_dark'checkbox_label_background_fill_selected,checkbox_label_background_fill_selected_darkcheckbox_label_border_color checkbox_label_border_color_dark!checkbox_label_border_color_hover&checkbox_label_border_color_hover_dark$checkbox_label_border_color_selected)checkbox_label_border_color_selected_darkcheckbox_label_border_width checkbox_label_border_width_darkcheckbox_label_gapcheckbox_label_paddingcheckbox_label_shadowcheckbox_label_text_sizecheckbox_label_text_weightcheckbox_label_text_colorcheckbox_label_text_color_dark"checkbox_label_text_color_selected'checkbox_label_text_color_selected_darkerror_background_fillerror_background_fill_darkerror_border_colorerror_border_color_darkerror_border_widtherror_border_width_darkerror_text_colorerror_text_color_darkerror_icon_colorerror_icon_color_darkinput_background_fillinput_background_fill_darkinput_background_fill_focus input_background_fill_focus_darkinput_background_fill_hover input_background_fill_hover_darkinput_border_colorinput_border_color_darkinput_border_color_focusinput_border_color_focus_darkinput_border_color_hoverinput_border_color_hover_darkinput_border_widthinput_border_width_darkinput_paddinginput_placeholder_colorinput_placeholder_color_darkinput_radiusinput_shadowinput_shadow_darkinput_shadow_focusinput_shadow_focus_darkinput_text_sizeinput_text_weightloader_colorloader_color_darkslider_colorslider_color_darkstat_background_fillstat_background_fill_darktable_border_colortable_border_color_darktable_even_background_filltable_even_background_fill_darktable_odd_background_filltable_odd_background_fill_darktable_radiustable_row_focustable_row_focus_darkbutton_border_widthbutton_border_width_darkbutton_transform_hoverbutton_transform_activebutton_transitionbutton_large_paddingbutton_large_radiusbutton_large_text_sizebutton_large_text_weightbutton_small_paddingbutton_small_radiusbutton_small_text_sizebutton_small_text_weightbutton_primary_background_fill#button_primary_background_fill_dark$button_primary_background_fill_hover)button_primary_background_fill_hover_darkbutton_primary_border_color button_primary_border_color_dark!button_primary_border_color_hover&button_primary_border_color_hover_darkbutton_primary_text_colorbutton_primary_text_color_darkbutton_primary_text_color_hover$button_primary_text_color_hover_darkbutton_primary_shadowbutton_primary_shadow_hoverbutton_primary_shadow_activebutton_primary_shadow_dark button_primary_shadow_hover_dark!button_primary_shadow_active_dark button_secondary_background_fill%button_secondary_background_fill_dark&button_secondary_background_fill_hover+button_secondary_background_fill_hover_darkbutton_secondary_border_color"button_secondary_border_color_dark#button_secondary_border_color_hover(button_secondary_border_color_hover_darkbutton_secondary_text_color button_secondary_text_color_dark!button_secondary_text_color_hover&button_secondary_text_color_hover_darkbutton_secondary_shadowbutton_secondary_shadow_hoverbutton_secondary_shadow_activebutton_secondary_shadow_dark"button_secondary_shadow_hover_dark#button_secondary_shadow_active_darkbutton_cancel_background_fill"button_cancel_background_fill_dark#button_cancel_background_fill_hover(button_cancel_background_fill_hover_darkbutton_cancel_border_colorbutton_cancel_border_color_dark button_cancel_border_color_hover%button_cancel_border_color_hover_darkbutton_cancel_text_colorbutton_cancel_text_color_darkbutton_cancel_text_color_hover#button_cancel_text_color_hover_darkrA   c                C  sR  |pt | dd| _|pt | dd| _|pt | dd| _|p"t | dd| _|p+t | dd	| _|p4t | d
d| _|	p=t | dd| _|pFt | dd| _|pOt | dd| _	|pXt | dd| _
|
pat | dd| _|pjt | dd| _|pst | dd| _|p|t | dd| _|pt | dd| _|pt | dd| _|pt | d d!| _|pt | d"d| _|pt | d#d$| _|pt | d%d$| _|pt | d&d'| _|pt | d(d'| _|pt | d)d*| _|pt | d+d,| _|pt | d-d'| _|pt | d.d$| _|pt | d/d0| _|pt | d1d0| _|]pt | d2d3| _|^pt | d4d3| _|_pt | d5d3| _|`p"t | d6d3| _ |$p,t | d7d8| _!|%p6t | d9d:| _"|&p@t | d;d<| _#|'pJt | d=d>| _$|(pTt | d?d@| _%|)p^t | dAd| _&|*pht | dBd| _'|+prt | dCdD| _(|,p|t | dEdD| _)|-pt | dFd@| _*|.pt | dGdH| _+|/pt | dIdJ| _,|0pt | dKdJ| _-|1pt | dLdM| _.|2pt | dNd| _/|3pt | dOd| _0|4pt | dPdQ| _1|5pt | dRdD| _2|6pt | dSdD| _3|7pt | dTd@| _4|8pt | dUdH| _5|9pt | dVdW| _6|:pt | dXdY| _7|;pt | dZd!| _8|<pt | d[d\| _9|=p&t | d]d^| _:|>p0t | d_d`| _;|?p:t | dadb| _<|@pDt | dcdM| _=|ApNt | ddd| _>|BpXt | dedf| _?|Cpbt | dgd| _@|Dplt | dhdi| _A|Epvt | djdH| _B|Fpt | dkdi| _C|Gpt | dldH| _D|Hpt | dmdi| _E|Ipt | dndH| _F|Jpt | dodp| _G|Kpt | dqdH| _H|Lpt | drdY| _I|Mpt | dsd!| _J|Npt | dtd\| _K|Opt | dudi| _L|Ppt | dvd	| _M|Qpt | dwd| _N|Rpt | dxd| _O|Spt | dydp| _P|Tpt | dzd{| _Q|Upt | d|dQ| _R|Vp t | d}dQ| _S|Wp*t | d~dD| _T|Xp4t | ddD| _U|Yp>t | dd\| _V|ZpHt | ddH| _W|[pRt | dd	| _X|\p\t | dd| _Y|pft | dd| _Z|ppt | dd| _[|"pzt | dd| _\|#pt | dd| _]|bpt | dd| _^|apt | dd| __|cpt | dd| _`|dpt | dd| _a|ept | dd| _b|fpt | dd| _c|gpt | dd| _d|hpt | dd| _e|ipt | dd| _f|jpt | dd| _g|kpt | dd| _h|lpt | dd| _i|mpt | dd| _j|npt | dd| _k|opt | dd| _l|pp$t | dd| _m|qp.t | dd| _n|rp8t | dd| _o|spBt | dd| _p|tpLt | dd| _q|xpVt | dd| _r|yp`t | dd| _s|zpjt | dd| _t|{ptt | dd| _u||p~t | dd| _v|}pt | dd| _w|~pt | ddD| _x|pt | ddD| _y|pt | dd| _z|pt | dd| _{|pt | dd| _||pt | dd| _}|pt | dd| _~|pt | dd| _|pt | dd| _|pt | dd| _|pt | ddi| _|p t | dd	| _|p
t | dd| _|upt | dd| _|vpt | dd| _|wp(t | dd| _|p2t | dd3| _|p<t | dd3| _|pFt | ddă| _|pPt | ddă| _|p\t | dtjj| _|pft | dd| _|prt | dtjj| _|p~t | dtjj| _|pt | dd@| _|pt | ddH| _|pt | dtjj| _|pt | dtjj| _|pt | dtjj| _|pt | dtjj| _|pt | dd| _|pt | dd| _|pt | ddӃ| _|pt | ddH| _|pt | ddӃ| _|pt | ddӃ| _|pt | ddD| _|pt | ddD| _|pt | ddڃ| _|p&t | dd| _|p0t | dd݃| _|p:t | dd݃| _|pDt | ddp| _|pNt | ddH| _|pXt | dd| _|pbt | dd0| _|plt | ddY| _|pvt | dd| _|pt | ddi| _|pt | ddH| _|pt | dd| _|pt | ddH| _|pt | dd	| _|pt | dd| _|pt | dd| _|pt | ddH| _|pt | dd	| _| pt | dd| _|!pt | dd| _|pt | dd| _|pt | ddH| _|pt | dd| _|pt | dd| _|pt | dd| _|p t | dd| _|p*t | dd| _|p4t | dd| _|p>t | dd| _|pHt | dd| _|pRt | dd| _|p\t | dd| _|pft | dd| _|pqt | d d| _|p|t | ddH| _|pt | dd| _|pt | dd| _|pt | dd| _|pt | dd| _|pt | dd| _|pt | dd| _|pt | d	d
| _|pt | dd
| _|pt | dd| _|pt | dd| _|pt | dd| _|pt | dd| _|pt | ddi| _|Ðpt | ddi| _|Đp)t | dd| _|Őp5t | dd| _|ƐpAt | dd| _|ǐpLt | dd| _|ȐpWt | dd| _|͐pbt | dd| _|ΐpnt | dd| _|ϐpzt | dd| _|Аpt | d d!| _|ѐpt | d"d| _|Ґpt | d#d| _|Ӑpt | d$d| _|Ԑpt | d%d| _|Րpt | d&d| _|֐pt | d'd| _|אpt | d(d)| _|ؐpt | d*d)| _|ِpt | d+di| _|ڐpt | d,d-| _|ې	pt | d.d-| _|ܐ	pt | d/dH| _|ݐ	pt | d0d-| _|ސ	p't | d1d-| _|ߐ	p2t | d2d!| _|	p=t | d3d| _|	pHt | d4d| _|	pSt | d5d| _|	p^t | d6d!| _|	pit | d7d| _|	ptt | d8d!| _|	pt | d9dY| _|	pt | d:d;| _|	pt | d<d| _|	pt | d=d| _|	pt | d>d| _|	pt | d?d-| _|	pt | d@dA| _|	pt | dBdA| _|	pt | dCdH| _|	pt | dDdA| _|	pt | dEdA| _|ɐ
pt | dFdG| _|ʐ
pt | dHd| _|ː
pt | dIdM| _ |̐
p$t | dJd| _| S (K  a^  
        Parameters:
            body_background_fill: The background of the entire app.
            body_background_fill_dark: The background of the entire app in dark mode.
            body_text_color: The default text color.
            body_text_color_dark: The default text color in dark mode.
            body_text_size: The default text size.
            body_text_color_subdued: The text color used for softer, less important text.
            body_text_color_subdued_dark: The text color used for softer, less important text in dark mode.
            body_text_weight: The default text weight.
            embed_radius: The corner radius used for embedding when the app is embedded within a page.
            background_fill_primary: The background primarily used for items placed directly on the page.
            background_fill_primary_dark: The background primarily used for items placed directly on the page in dark mode.
            background_fill_secondary: The background primarily used for items placed on top of another item.
            background_fill_secondary_dark: The background primarily used for items placed on top of another item in dark mode.
            border_color_accent: The border color used for accented items.
            border_color_accent_dark: The border color used for accented items in dark mode.
            border_color_accent_subdued: The subdued border color for accented items.
            border_color_accent_subdued_dark: The subdued border color for accented items in dark mode.
            border_color_primary: The border color primarily used for items placed directly on the page.
            border_color_primary_dark: The border color primarily used for items placed directly on the page in dark mode.
            color_accent: The color used for accented items.
            color_accent_soft: The softer color used for accented items.
            color_accent_soft_dark: The softer color used for accented items in dark mode.
            link_text_color: The text color used for links.
            link_text_color_dark: The text color used for links in dark mode.
            link_text_color_active: The text color used for links when they are active.
            link_text_color_active_dark: The text color used for links when they are active in dark mode.
            link_text_color_hover: The text color used for links when they are hovered over.
            link_text_color_hover_dark: The text color used for links when they are hovered over in dark mode.
            link_text_color_visited: The text color used for links when they have been visited.
            link_text_color_visited_dark: The text color used for links when they have been visited in dark mode.
            prose_text_size: The text size used for markdown and other prose.
            prose_text_weight: The text weight used for markdown and other prose.
            prose_header_text_weight: The text weight of a header used for markdown and other prose.
            code_background_fill: The background color of code blocks.
            code_background_fill_dark: The background color of code blocks in dark mode.
            shadow_drop: Drop shadow used by other shadowed items.
            shadow_drop_lg: Larger drop shadow used by other shadowed items.
            shadow_inset: Inset shadow used by other shadowed items.
            shadow_spread: Size of shadow spread used by shadowed items.
            shadow_spread_dark: Size of shadow spread used by shadowed items in dark mode.
            block_background_fill: The background around an item.
            block_background_fill_dark: The background around an item in dark mode.
            block_border_color: The border color around an item.
            block_border_color_dark: The border color around an item in dark mode.
            block_border_width: The border width around an item.
            block_border_width_dark: The border width around an item in dark mode.
            block_info_text_color: The color of the info text.
            block_info_text_color_dark: The color of the info text in dark mode.
            block_info_text_size: The size of the info text.
            block_info_text_weight: The weight of the info text.
            block_label_background_fill: The background of the title label of a media element (e.g. image).
            block_label_background_fill_dark: The background of the title label of a media element (e.g. image) in dark mode.
            block_label_border_color: The border color of the title label of a media element (e.g. image).
            block_label_border_color_dark: The border color of the title label of a media element (e.g. image) in dark mode.
            block_label_border_width: The border width of the title label of a media element (e.g. image).
            block_label_border_width_dark: The border width of the title label of a media element (e.g. image) in dark mode.
            block_label_shadow: The shadow of the title label of a media element (e.g. image).
            block_label_text_color: The text color of the title label of a media element (e.g. image).
            block_label_text_color_dark: The text color of the title label of a media element (e.g. image) in dark mode.
            block_label_margin: The margin of the title label of a media element (e.g. image) from its surrounding container.
            block_label_padding: The padding of the title label of a media element (e.g. image).
            block_label_radius: The corner radius of the title label of a media element (e.g. image).
            block_label_right_radius: The corner radius of a right-aligned helper label.
            block_label_text_size: The text size of the title label of a media element (e.g. image).
            block_label_text_weight: The text weight of the title label of a media element (e.g. image).
            block_padding: The padding around an item.
            block_radius: The corner radius around an item.
            block_shadow: The shadow under an item.
            block_shadow_dark: The shadow under an item in dark mode.
            block_title_background_fill: The background of the title of a form element (e.g. textbox).
            block_title_background_fill_dark: The background of the title of a form element (e.g. textbox) in dark mode.
            block_title_border_color: The border color of the title of a form element (e.g. textbox).
            block_title_border_color_dark: The border color of the title of a form element (e.g. textbox) in dark mode.
            block_title_border_width: The border width of the title of a form element (e.g. textbox).
            block_title_border_width_dark: The border width of the title of a form element (e.g. textbox) in dark mode.
            block_title_text_color: The text color of the title of a form element (e.g. textbox).
            block_title_text_color_dark: The text color of the title of a form element (e.g. textbox) in dark mode.
            block_title_padding: The padding of the title of a form element (e.g. textbox).
            block_title_radius: The corner radius of the title of a form element (e.g. textbox).
            block_title_text_size: The text size of the title of a form element (e.g. textbox).
            block_title_text_weight: The text weight of the title of a form element (e.g. textbox).
            container_radius: The corner radius of a layout component that holds other content.
            form_gap_width: The border gap between form elements, (e.g. consecutive textboxes).
            layout_gap: The gap between items within a row or column.
            panel_background_fill: The background of a panel.
            panel_background_fill_dark: The background of a panel in dark mode.
            panel_border_color: The border color of a panel.
            panel_border_color_dark: The border color of a panel in dark mode.
            panel_border_width: The border width of a panel.
            panel_border_width_dark: The border width of a panel in dark mode.
            accordion_text_color: The body text color in the accordion.
            accordion_text_color_dark: The body text color in the accordion in dark mode.
            table_text_color: The body text color in the table.
            table_text_color_dark: The body text color in the table in dark mode.
            section_header_text_size: The text size of a section header (e.g. tab name).
            section_header_text_weight: The text weight of a section header (e.g. tab name).
            chatbot_text_size: The text size of the chatbot text.
            checkbox_background_color: The background of a checkbox square or radio circle.
            checkbox_background_color_dark: The background of a checkbox square or radio circle in dark mode.
            checkbox_background_color_focus: The background of a checkbox square or radio circle when focused.
            checkbox_background_color_focus_dark: The background of a checkbox square or radio circle when focused in dark mode.
            checkbox_background_color_hover: The background of a checkbox square or radio circle when hovered over.
            checkbox_background_color_hover_dark: The background of a checkbox square or radio circle when hovered over in dark mode.
            checkbox_background_color_selected: The background of a checkbox square or radio circle when selected.
            checkbox_background_color_selected_dark: The background of a checkbox square or radio circle when selected in dark mode.
            checkbox_border_color: The border color of a checkbox square or radio circle.
            checkbox_border_color_dark: The border color of a checkbox square or radio circle in dark mode.
            checkbox_border_color_focus: The border color of a checkbox square or radio circle when focused.
            checkbox_border_color_focus_dark: The border color of a checkbox square or radio circle when focused in dark mode.
            checkbox_border_color_hover: The border color of a checkbox square or radio circle when hovered over.
            checkbox_border_color_hover_dark: The border color of a checkbox square or radio circle when hovered over in dark mode.
            checkbox_border_color_selected: The border color of a checkbox square or radio circle when selected.
            checkbox_border_color_selected_dark: The border color of a checkbox square or radio circle when selected in dark mode.
            checkbox_border_radius: The corner radius of a checkbox square.
            checkbox_border_width: The border width of a checkbox square or radio circle.
            checkbox_border_width_dark: The border width of a checkbox square or radio circle in dark mode.
            checkbox_check: The checkmark visual of a checkbox square.
            radio_circle: The circle visual of a radio circle.
            checkbox_shadow: The shadow of a checkbox square or radio circle.
            checkbox_label_background_fill: The background of the surrounding button of a checkbox or radio element.
            checkbox_label_background_fill_dark: The background of the surrounding button of a checkbox or radio element in dark mode.
            checkbox_label_background_fill_hover: The background of the surrounding button of a checkbox or radio element when hovered over.
            checkbox_label_background_fill_hover_dark: The background of the surrounding button of a checkbox or radio element when hovered over in dark mode.
            checkbox_label_background_fill_selected: The background of the surrounding button of a checkbox or radio element when selected.
            checkbox_label_background_fill_selected_dark: The background of the surrounding button of a checkbox or radio element when selected in dark mode.
            checkbox_label_border_color: The border color of the surrounding button of a checkbox or radio element.
            checkbox_label_border_color_dark: The border color of the surrounding button of a checkbox or radio element in dark mode.
            checkbox_label_border_color_hover: The border color of the surrounding button of a checkbox or radio element when hovered over.
            checkbox_label_border_color_hover_dark: The border color of the surrounding button of a checkbox or radio element when hovered over in dark mode.
            checkbox_label_border_color_selected: The border color of the surrounding button of a checkbox or radio element when selected.
            checkbox_label_border_color_selected_dark: The border color of the surrounding button of a checkbox or radio element when selected in dark mode.
            checkbox_label_border_width: The border width of the surrounding button of a checkbox or radio element.
            checkbox_label_border_width_dark: The border width of the surrounding button of a checkbox or radio element in dark mode.
            checkbox_label_gap: The gap consecutive checkbox or radio elements.
            checkbox_label_padding: The padding of the surrounding button of a checkbox or radio element.
            checkbox_label_shadow: The shadow of the surrounding button of a checkbox or radio element.
            checkbox_label_text_size: The text size of the label accompanying a checkbox or radio element.
            checkbox_label_text_weight: The text weight of the label accompanying a checkbox or radio element.
            checkbox_label_text_color: The text color of the label accompanying a checkbox or radio element.
            checkbox_label_text_color_dark: The text color of the label accompanying a checkbox or radio element in dark mode.
            checkbox_label_text_color_selected: The text color of the label accompanying a checkbox or radio element when selected.
            checkbox_label_text_color_selected_dark: The text color of the label accompanying a checkbox or radio element when selected in dark mode.
            error_background_fill: The background of an error message.
            error_background_fill_dark: The background of an error message in dark mode.
            error_border_color: The border color of an error message.
            error_border_color_dark: The border color of an error message in dark mode.
            error_border_width: The border width of an error message.
            error_border_width_dark: The border width of an error message in dark mode.
            error_text_color: The text color of an error message.
            error_text_color_dark: The text color of an error message in dark mode.
            input_background_fill: The background of an input field.
            input_background_fill_dark: The background of an input field in dark mode.
            input_background_fill_focus: The background of an input field when focused.
            input_background_fill_focus_dark: The background of an input field when focused in dark mode.
            input_background_fill_hover: The background of an input field when hovered over.
            input_background_fill_hover_dark: The background of an input field when hovered over in dark mode.
            input_border_color: The border color of an input field.
            input_border_color_dark: The border color of an input field in dark mode.
            input_border_color_focus: The border color of an input field when focused.
            input_border_color_focus_dark: The border color of an input field when focused in dark mode.
            input_border_color_hover: The border color of an input field when hovered over.
            input_border_color_hover_dark: The border color of an input field when hovered over in dark mode.
            input_border_width: The border width of an input field.
            input_border_width_dark: The border width of an input field in dark mode.
            input_padding: The padding of an input field.
            input_placeholder_color: The placeholder text color of an input field.
            input_placeholder_color_dark: The placeholder text color of an input field in dark mode.
            input_radius: The corner radius of an input field.
            input_shadow: The shadow of an input field.
            input_shadow_dark: The shadow of an input field in dark mode.
            input_shadow_focus: The shadow of an input field when focused.
            input_shadow_focus_dark: The shadow of an input field when focused in dark mode.
            input_text_size: The text size of an input field.
            input_text_weight: The text weight of an input field.
            loader_color: The color of the loading animation while a request is pending.
            loader_color_dark: The color of the loading animation while a request is pending in dark mode.
            slider_color: The color of the slider in a range element.
            slider_color_dark: The color of the slider in a range element in dark mode.
            stat_background_fill: The background used for stats visuals (e.g. confidence bars in label).
            stat_background_fill_dark: The background used for stats visuals (e.g. confidence bars in label) in dark mode.
            table_border_color: The border color of a table.
            table_border_color_dark: The border color of a table in dark mode.
            table_even_background_fill: The background of even rows in a table.
            table_even_background_fill_dark: The background of even rows in a table in dark mode.
            table_odd_background_fill: The background of odd rows in a table.
            table_odd_background_fill_dark: The background of odd rows in a table in dark mode.
            table_radius: The corner radius of a table.
            table_row_focus: The background of a focused row in a table.
            table_row_focus_dark: The background of a focused row in a table in dark mode.
            button_border_width: The border width of a button.
            button_border_width_dark: The border width of a button in dark mode.
            button_cancel_background_fill: The background of a button of "cancel" variant.
            button_cancel_background_fill_dark: The background of a button of "cancel" variant in dark mode.
            button_cancel_background_fill_hover: The background of a button of "cancel" variant when hovered over.
            button_cancel_background_fill_hover_dark: The background of a button of "cancel" variant when hovered over in dark mode.
            button_cancel_border_color: The border color of a button of "cancel" variant.
            button_cancel_border_color_dark: The border color of a button of "cancel" variant in dark mode.
            button_cancel_border_color_hover: The border color of a button of "cancel" variant when hovered over.
            button_cancel_border_color_hover_dark: The border color of a button of "cancel" variant when hovered over in dark mode.
            button_cancel_text_color: The text color of a button of "cancel" variant.
            button_cancel_text_color_dark: The text color of a button of "cancel" variant in dark mode.
            button_cancel_text_color_hover: The text color of a button of "cancel" variant when hovered over.
            button_cancel_text_color_hover_dark: The text color of a button of "cancel" variant when hovered over in dark mode.
            button_large_padding: The padding of a button with the default "large" size.
            button_large_radius: The corner radius of a button with the default "large" size.
            button_large_text_size: The text size of a button with the default "large" size.
            button_large_text_weight: The text weight of a button with the default "large" size.
            button_primary_background_fill: The background of a button of "primary" variant.
            button_primary_background_fill_dark: The background of a button of "primary" variant in dark mode.
            button_primary_background_fill_hover: The background of a button of "primary" variant when hovered over.
            button_primary_background_fill_hover_dark: The background of a button of "primary" variant when hovered over in dark mode.
            button_primary_border_color: The border color of a button of "primary" variant.
            button_primary_border_color_dark: The border color of a button of "primary" variant in dark mode.
            button_primary_border_color_hover: The border color of a button of "primary" variant when hovered over.
            button_primary_border_color_hover_dark: The border color of a button of "primary" variant when hovered over in dark mode.
            button_primary_text_color: The text color of a button of "primary" variant.
            button_primary_text_color_dark: The text color of a button of "primary" variant in dark mode.
            button_primary_text_color_hover: The text color of a button of "primary" variant when hovered over.
            button_primary_text_color_hover_dark: The text color of a button of "primary" variant when hovered over in dark mode.
            button_primary_shadow: The shadow under a primary button.
            button_primary_shadow_active: The shadow under a primary button when pressed.
            button_primary_shadow_hover: The shadow under a primary button when hovered over.
            button_primary_shadow_dark: The shadow under a primary button in dark mode.
            button_primary_shadow_active_dark: The shadow under a primary button when pressed in dark mode.
            button_primary_shadow_hover_dark: The shadow under a primary button when hovered over in dark mode.
            button_secondary_background_fill: The background of a button of default "secondary" variant.
            button_secondary_background_fill_dark: The background of a button of default "secondary" variant in dark mode.
            button_secondary_background_fill_hover: The background of a button of default "secondary" variant when hovered over.
            button_secondary_background_fill_hover_dark: The background of a button of default "secondary" variant when hovered over in dark mode.
            button_secondary_border_color: The border color of a button of default "secondary" variant.
            button_secondary_border_color_dark: The border color of a button of default "secondary" variant in dark mode.
            button_secondary_border_color_hover: The border color of a button of default "secondary" variant when hovered over.
            button_secondary_border_color_hover_dark: The border color of a button of default "secondary" variant when hovered over in dark mode.
            button_secondary_text_color: The text color of a button of default "secondary" variant.
            button_secondary_text_color_dark: The text color of a button of default "secondary" variant in dark mode.
            button_secondary_text_color_hover: The text color of a button of default "secondary" variant when hovered over.
            button_secondary_text_color_hover_dark: The text color of a button of default "secondary" variant when hovered over in dark mode.
            button_secondary_shadow: The shadow under a secondary button.
            button_secondary_shadow_active: The shadow under a secondary button when pressed.
            button_secondary_shadow_hover: The shadow under a secondary button when hovered over.
            button_secondary_shadow_dark: The shadow under a secondary button in dark mode.
            button_secondary_shadow_active_dark: The shadow under a secondary button when pressed in dark mode.
            button_secondary_shadow_hover_dark: The shadow under a secondary button when hovered over in dark mode.
            button_small_padding: The padding of a button set to "small" size.
            button_small_radius: The corner radius of a button set to "small" size.
            button_small_text_size: The text size of a button set to "small" size.
            button_small_text_weight: The text weight of a button set to "small" size.
            button_transition: The transition animation duration of a button between regular, hover, and focused states.
            button_transform_hover: The transform animation of a button on hover.
            button_transform_active: The transform animation of a button when pressed.
        r:  z*background_fill_primaryr;  r<  z*neutral_800r=  z*neutral_100r>  z*text_mdrA  400rB  z
*radius_smrM  z*primary_500rN  z*primary_50rO  z*neutral_700background_primarywhitebackground_primary_darkz*neutral_950background_secondaryz*neutral_50background_secondary_darkz*neutral_900rG  z*primary_300rH  z*neutral_600rK  z*neutral_200rL  rP  z*secondary_600rR  rS  z*secondary_500rQ  rT  z*secondary_700rU  z*secondary_400rV  rW  r?  z*neutral_400r@  r  z*body_text_colorr  r  r  r]  z rgba(0,0,0,0.05) 0px 1px 2px 0pxr^  z=0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)r_  z&rgba(0,0,0,0.05) 0px 2px 4px 0px insetr`  3pxra  1pxrb  rc  rd  z*border_color_primaryre  rf  rg  Nrh  z*body_text_color_subduedri  rj  z*text_smrk  rl  rm  z*background_fill_secondaryrn  ro  rp  rq  rr  z*block_shadowrs  z*neutral_500rt  ru  0rv  z*spacing_sm *spacing_lgrw  z1calc(*radius_sm - 1px) 0 calc(*radius_sm - 1px) 0rx  z10 calc(*radius_sm - 1px) 0 calc(*radius_sm - 1px)ry  rz  r{  z#*spacing_xl calc(*spacing_xl + 2px)r|  r}  noner~  r  r  r  r  r  0pxr  r  r  r  r  r  r  r  r  r  z*spacing_xxlr  r  r  r  r  r  r  r  rI  z*border_color_accentrJ  r[  r\  r  z*text_lgr  r  r  z*checkbox_background_colorr  r  r  r  z*color_accentr  r  z*neutral_300r  r  r  r  r  r  r  r  r  z*input_border_widthr  r  z!*button_secondary_background_fillr  r  z'*button_secondary_background_fill_hoverr  r  z*checkbox_label_background_fillr  r  r  r  z*checkbox_label_border_colorr  r  r  r  r  r  z*spacing_lgr  z!*spacing_md calc(2 * *spacing_md)r  r  r  r  zurl("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")r  zurl("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")r  z*input_shadowr  r  r  z*checkbox_label_text_colorr  r  r  r  r  r  r  r  r  r  r  r  r  r  z*input_background_fillr  r  r  r  r  r  z*secondary_300r  r  z*input_border_colorr  r  r  r  z*spacing_xlr  r  r  r  r  r  r  r  r  r  r  rX  rY  rZ  600r  r  r  r  r  r  r  r  r  r  r  r  z*color_accent_softr  r  r  r*  r+  r,  r-  r.  z*button_secondary_border_colorr/  r0  z$*button_secondary_border_color_hoverr1  r2  z*button_secondary_text_colorr3  r4  z"*button_secondary_text_color_hoverr5  r  r  r  zall 0.2s easer  z!*spacing_lg calc(2 * *spacing_lg)r  z
*radius_mdr   r  r  r  z*primary_600r  r	  z*primary_700r
  r  r  r  r  r  r  z*button_primary_text_colorr  r  r  z*button_primary_shadowr  r  r  r  r  r  r  r  r  r  r  r  r   blackr!  r"  r#  r$  r%  z*button_secondary_shadowr&  r'  r(  r)  r  z#*spacing_sm calc(1.5 * *spacing_sm)r  r  r  (  rJ   r:  r;  r<  r=  r>  rA  rB  rM  rN  rO  rC  rD  rE  rF  rG  rH  rK  rL  rP  rR  rS  rQ  rT  rU  rV  rW  r?  r@  r  r  r  r  r]  r^  r_  r`  ra  rb  rc  rd  re  rf  rg  rh  ri  rj  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rw  rx  ry  rz  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  rI  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  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   redr   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  rX  rY  rZ  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r4  r5  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(  r)  r  r  r  r  )r   r:  r;  r<  r=  r>  r?  r@  rA  rB  rC  rD  rE  rF  rG  rH  rI  rJ  rK  rL  rM  rN  rO  rP  rQ  rR  rS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  rc  rd  re  rf  rg  rh  ri  rj  rk  rl  rm  rn  ro  rp  rq  rr  rs  rt  ru  rv  rw  rx  ry  rz  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  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  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  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"  r#  r$  r%  r&  r'  r(  r)  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r4  r5  r   r   r   r8    s      


		




							









		

		





	




	
	






zBase.set)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )rA   rc   )r   r   r   r   bluezincr   r0  r  r)  r   r   r   r8  r   r   r   r   rc   Z  s$      rc   )
__future__r   r\   r6   r   r   rH   collections.abcr   pathlibr   r|   semantic_versionr   gradio_client.documentationr   r   gradio.themes.utilsr   r   r	   r
   r   "gradio.themes.utils.readme_contentr   r   rc   r   r   r   r   <module>   s&      B